Merged PR 1286: hooks fixes and ordering of events
hooks fixes and ordering of events Related work items: #12688
This commit is contained in:
+16
-20
@@ -961,7 +961,7 @@ export const getRepsFromBlob = (containerName) => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
export const getRepsFromBlobProxy = (containerName) => {
|
export const getRepsFromBlobProxy = async (containerName) => {
|
||||||
//console.log(
|
//console.log(
|
||||||
// "///////////////////////getRepsFromBlobProxy: " + containerName,
|
// "///////////////////////getRepsFromBlobProxy: " + containerName,
|
||||||
// "/api/file/getawaitingsubmissionfromblobproxy?container=" +
|
// "/api/file/getawaitingsubmissionfromblobproxy?container=" +
|
||||||
@@ -969,8 +969,8 @@ export const getRepsFromBlobProxy = (containerName) => {
|
|||||||
// "\n///////////////////////\n"
|
// "\n///////////////////////\n"
|
||||||
// );
|
// );
|
||||||
|
|
||||||
return axios
|
try {
|
||||||
.get(
|
const res = await axios.get(
|
||||||
// BASE_URL +
|
// BASE_URL +
|
||||||
"/api/file/getrepsblobproxy?container=" + containerName
|
"/api/file/getrepsblobproxy?container=" + containerName
|
||||||
// +
|
// +
|
||||||
@@ -978,16 +978,14 @@ export const getRepsFromBlobProxy = (containerName) => {
|
|||||||
// "/api/file/getawaitingsubmissionfromblob?container=" +
|
// "/api/file/getawaitingsubmissionfromblob?container=" +
|
||||||
// containerName
|
// containerName
|
||||||
// )
|
// )
|
||||||
)
|
);
|
||||||
.then((res) => {
|
return res.data;
|
||||||
return res.data;
|
} catch (error) {
|
||||||
})
|
consoleLogger(error);
|
||||||
.catch((error) => {
|
}
|
||||||
consoleLogger(error);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export const getAwaitingSubmissionFromBlobProxy = (containerName) => {
|
export const getAwaitingSubmissionFromBlobProxy = async (containerName) => {
|
||||||
console.log(
|
console.log(
|
||||||
"///////////////////////getAwaitingSubmissionFromBlobProxy: " +
|
"///////////////////////getAwaitingSubmissionFromBlobProxy: " +
|
||||||
containerName,
|
containerName,
|
||||||
@@ -996,8 +994,8 @@ export const getAwaitingSubmissionFromBlobProxy = (containerName) => {
|
|||||||
"\n///////////////////////\n"
|
"\n///////////////////////\n"
|
||||||
);
|
);
|
||||||
|
|
||||||
return axios
|
try {
|
||||||
.get(
|
const res = await axios.get(
|
||||||
// BASE_URL +
|
// BASE_URL +
|
||||||
"/api/file/getawaitingsubmissionfromblobproxy?container=" +
|
"/api/file/getawaitingsubmissionfromblobproxy?container=" +
|
||||||
containerName
|
containerName
|
||||||
@@ -1006,13 +1004,11 @@ export const getAwaitingSubmissionFromBlobProxy = (containerName) => {
|
|||||||
// "/api/file/getawaitingsubmissionfromblob?container=" +
|
// "/api/file/getawaitingsubmissionfromblob?container=" +
|
||||||
// containerName
|
// containerName
|
||||||
// )
|
// )
|
||||||
)
|
);
|
||||||
.then((res) => {
|
return res.data;
|
||||||
return res.data;
|
} catch (error) {
|
||||||
})
|
consoleLogger(error);
|
||||||
.catch((error) => {
|
}
|
||||||
consoleLogger(error);
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export const getPortalModuleDetails = async (appealType, caseReference) => {
|
export const getPortalModuleDetails = async (appealType, caseReference) => {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { JSONPath as jsonpath } from "jsonpath-plus";
|
|||||||
import _ from "lodash";
|
import _ from "lodash";
|
||||||
import useTranslation from "next-translate/useTranslation";
|
import useTranslation from "next-translate/useTranslation";
|
||||||
import { useRouter } from "next/router";
|
import { useRouter } from "next/router";
|
||||||
import { useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import { useDropzone } from "react-dropzone";
|
import { useDropzone } from "react-dropzone";
|
||||||
import { connect } from "react-redux";
|
import { connect } from "react-redux";
|
||||||
import { formValueSelector, reduxForm } from "redux-form";
|
import { formValueSelector, reduxForm } from "redux-form";
|
||||||
@@ -34,6 +34,9 @@ let MakeRepresentation = (props) => {
|
|||||||
|
|
||||||
const [clearRepForm, setClearRepForm] = useState(false);
|
const [clearRepForm, setClearRepForm] = useState(false);
|
||||||
const [savingStatus, setSavingStatus] = useState(false);
|
const [savingStatus, setSavingStatus] = useState(false);
|
||||||
|
const [showQuestionnaireSection, setShowQuestionnaireSection] = useState(1);
|
||||||
|
//const [questionnaireCount, setQuestionnaireCount] = useState(0);
|
||||||
|
|
||||||
const { data: session } = useSession();
|
const { data: session } = useSession();
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
@@ -60,9 +63,33 @@ let MakeRepresentation = (props) => {
|
|||||||
let setCaseQueryObj = props[currentType] || {};
|
let setCaseQueryObj = props[currentType] || {};
|
||||||
var casesObj = {};
|
var casesObj = {};
|
||||||
|
|
||||||
const [showQuestionnaireSection, setShowQuestionnaireSection] = useState(1);
|
const updateQuestionnaireCount = () => {
|
||||||
const [questionnaireCount, setQuestionnaireCount] = useState(0);
|
{
|
||||||
|
switch (currentView.caseReference.appealType) {
|
||||||
|
case 846040000:
|
||||||
|
case 846040001:
|
||||||
|
case 846040006:
|
||||||
|
case 846040025:
|
||||||
|
case 846040004:
|
||||||
|
case 846040018:
|
||||||
|
case 846040003:
|
||||||
|
case 846040009:
|
||||||
|
case 846040008:
|
||||||
|
return 7;
|
||||||
|
break;
|
||||||
|
case 846040005:
|
||||||
|
case 846040006:
|
||||||
|
case 846040007:
|
||||||
|
return 9;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return 7;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
let questionnaireCount = updateQuestionnaireCount();
|
||||||
const setRepFileName = (values) => {
|
const setRepFileName = (values) => {
|
||||||
//console.log("---------------\n", values);
|
//console.log("---------------\n", values);
|
||||||
if (
|
if (
|
||||||
@@ -347,12 +374,13 @@ let MakeRepresentation = (props) => {
|
|||||||
const whichControl = () => {
|
const whichControl = () => {
|
||||||
if (isLPA && _.isEmpty(currentView.representationCapacity)) {
|
if (isLPA && _.isEmpty(currentView.representationCapacity)) {
|
||||||
return (
|
return (
|
||||||
|
//setRepresentationCapacity("lpa"),
|
||||||
<RepLPACapacitySelection
|
<RepLPACapacitySelection
|
||||||
formObj={formObj}
|
formObj={formObj}
|
||||||
capacityOptionsArr={capacityOptionsArr}
|
capacityOptionsArr={capacityOptionsArr}
|
||||||
currentType={currentType}
|
currentType={currentType}
|
||||||
casesObj={casesObj}
|
casesObj={casesObj}
|
||||||
setRepresentationCapacity={"LPA"}
|
setRepresentationCapacity={setRepresentationCapacity}
|
||||||
setRepresentationSubmit={setRepresentationSubmit}
|
setRepresentationSubmit={setRepresentationSubmit}
|
||||||
onHandleSubmit={onHandleSubmit}
|
onHandleSubmit={onHandleSubmit}
|
||||||
currentView={currentView}
|
currentView={currentView}
|
||||||
@@ -408,6 +436,12 @@ let MakeRepresentation = (props) => {
|
|||||||
break;
|
break;
|
||||||
case "lpa":
|
case "lpa":
|
||||||
//setRepresentationCapacity("appellant");
|
//setRepresentationCapacity("appellant");
|
||||||
|
//setRepresentationCapacity("lpa");
|
||||||
|
// useEffect(() => {
|
||||||
|
// setRepresentationCapacity("lpa");
|
||||||
|
// }, []);
|
||||||
|
|
||||||
|
// console.log(currentView.caseReference.appealType);
|
||||||
return (
|
return (
|
||||||
<RepLPA
|
<RepLPA
|
||||||
formObj={formObj}
|
formObj={formObj}
|
||||||
@@ -426,7 +460,7 @@ let MakeRepresentation = (props) => {
|
|||||||
setShowQuestionnaireSection
|
setShowQuestionnaireSection
|
||||||
}
|
}
|
||||||
showQuestionnaireSection={showQuestionnaireSection}
|
showQuestionnaireSection={showQuestionnaireSection}
|
||||||
setQuestionnaireCount={setQuestionnaireCount}
|
//setQuestionnaireCount={setQuestionnaireCount}
|
||||||
questionnaireCount={questionnaireCount}
|
questionnaireCount={questionnaireCount}
|
||||||
setRepFileName={setRepFileName}
|
setRepFileName={setRepFileName}
|
||||||
updateRepresentation={updateRepresentation}
|
updateRepresentation={updateRepresentation}
|
||||||
@@ -548,7 +582,7 @@ let MakeRepresentation = (props) => {
|
|||||||
setShowQuestionnaireSection={
|
setShowQuestionnaireSection={
|
||||||
setShowQuestionnaireSection
|
setShowQuestionnaireSection
|
||||||
}
|
}
|
||||||
setQuestionnaireCount={setQuestionnaireCount}
|
// setQuestionnaireCount={setQuestionnaireCount}
|
||||||
questionnaireCount={questionnaireCount}
|
questionnaireCount={questionnaireCount}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
@@ -566,7 +600,7 @@ let MakeRepresentation = (props) => {
|
|||||||
setShowQuestionnaireSection={
|
setShowQuestionnaireSection={
|
||||||
setShowQuestionnaireSection
|
setShowQuestionnaireSection
|
||||||
}
|
}
|
||||||
setQuestionnaireCount={setQuestionnaireCount}
|
//setQuestionnaireCount={setQuestionnaireCount}
|
||||||
questionnaireCount={questionnaireCount}
|
questionnaireCount={questionnaireCount}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
@@ -578,6 +612,53 @@ let MakeRepresentation = (props) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const sortFileObj = (filelistObj) => {
|
||||||
|
let blobList = filelistObj;
|
||||||
|
|
||||||
|
function removeObjectsWithUndefinedKey(arr, key) {
|
||||||
|
return arr.filter((obj) => obj[key] !== undefined);
|
||||||
|
}
|
||||||
|
|
||||||
|
function removeEmptyObjects(arr) {
|
||||||
|
return arr.filter((obj) => Object.keys(obj).length > 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
blobList = removeEmptyObjects(blobList);
|
||||||
|
blobList = removeObjectsWithUndefinedKey(blobList, "name");
|
||||||
|
|
||||||
|
let buildAppealFilesArray = [];
|
||||||
|
|
||||||
|
let filesUploadObj = field.input.value;
|
||||||
|
|
||||||
|
for (let key in filesUploadObj) {
|
||||||
|
typeof filesUploadObj[key].name != "undefined" &&
|
||||||
|
buildAppealFilesArray.push({
|
||||||
|
"name": filesUploadObj[key].name,
|
||||||
|
"size": filesUploadObj[key].size,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
buildAppealFilesArray = buildAppealFilesArray.concat(blobList);
|
||||||
|
|
||||||
|
function removeDuplicates(arr) {
|
||||||
|
const seen = new Set();
|
||||||
|
return arr.filter((obj) => {
|
||||||
|
const serializedObj = JSON.stringify(obj);
|
||||||
|
if (seen.has(serializedObj)) {
|
||||||
|
return false; // Skip this object (duplicate)
|
||||||
|
}
|
||||||
|
seen.add(serializedObj); // Add the serialized object to the "seen" set
|
||||||
|
return true; // Keep this object
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
buildAppealFilesArray = removeDuplicates(buildAppealFilesArray);
|
||||||
|
|
||||||
|
blobList = buildAppealFilesArray;
|
||||||
|
|
||||||
|
return blobList;
|
||||||
|
};
|
||||||
|
|
||||||
const updateRepresentation = async (
|
const updateRepresentation = async (
|
||||||
values,
|
values,
|
||||||
sendSavedEmail,
|
sendSavedEmail,
|
||||||
@@ -727,17 +808,18 @@ let MakeRepresentation = (props) => {
|
|||||||
? router.locale + "/myportal"
|
? router.locale + "/myportal"
|
||||||
: "/myportal"
|
: "/myportal"
|
||||||
))
|
))
|
||||||
: values.hasOwnProperty("representationDocuments") &&
|
: //values.hasOwnProperty("representationDocuments") &&
|
||||||
(values.representationDocuments.map((Blob) =>
|
// sortFileObj()
|
||||||
buildFileArray.push({
|
// (values.representationDocuments.map((Blob) =>
|
||||||
"name": Blob.name,
|
// buildFileArray.push({
|
||||||
"size": Blob.size,
|
// "name": Blob.name,
|
||||||
})
|
// "size": Blob.size,
|
||||||
),
|
// })
|
||||||
Object.assign(values, {
|
// ),
|
||||||
"filesList": buildFileArray,
|
// Object.assign(values, {
|
||||||
})),
|
// "filesList": buildFileArray,
|
||||||
uploadRepresentationFiles(values),
|
// })),
|
||||||
|
uploadRepresentationFiles(values),
|
||||||
generateRepPDF(
|
generateRepPDF(
|
||||||
values,
|
values,
|
||||||
props.props.accountDetails.containerID,
|
props.props.accountDetails.containerID,
|
||||||
@@ -929,18 +1011,19 @@ let MakeRepresentation = (props) => {
|
|||||||
|
|
||||||
const repForm = props.props.form;
|
const repForm = props.props.form;
|
||||||
|
|
||||||
try {
|
// try {
|
||||||
let value = props.initialValues;
|
// let value = props.initialValues;
|
||||||
setRepresentationCapacity(
|
// setRepresentationCapacity(
|
||||||
props.initialValues.representationCapacity.toLowerCase()
|
// props.initialValues.representationCapacity.toLowerCase()
|
||||||
);
|
// );
|
||||||
//setRepresentationSubmit(false);
|
// //setRepresentationSubmit(false);
|
||||||
} catch {
|
// } catch {
|
||||||
console.log("not has props");
|
// console.log("not has props");
|
||||||
}
|
// }
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
|
<div>hello {currentView.representationSubmit ? "yep" : "no"}</div>
|
||||||
<form onSubmit={handleSubmit(onHandleSubmit)}>
|
<form onSubmit={handleSubmit(onHandleSubmit)}>
|
||||||
{currentView.representationSubmit == true ? (
|
{currentView.representationSubmit == true ? (
|
||||||
<RepCompleteSubmit
|
<RepCompleteSubmit
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import { bytesToSize, getThumbnailIconByExtension } from "../../utils";
|
|||||||
|
|
||||||
const RepCompleteSubmit = (props) => {
|
const RepCompleteSubmit = (props) => {
|
||||||
let { t } = useTranslation();
|
let { t } = useTranslation();
|
||||||
|
const [confirmSections, setConfirmSections] = useState(false);
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { locale } = router;
|
const { locale } = router;
|
||||||
@@ -33,8 +34,6 @@ const RepCompleteSubmit = (props) => {
|
|||||||
</li>
|
</li>
|
||||||
));
|
));
|
||||||
|
|
||||||
const [confirmSections, setConfirmSections] = useState(false);
|
|
||||||
|
|
||||||
const repFormData = formObj.representationForm.values;
|
const repFormData = formObj.representationForm.values;
|
||||||
|
|
||||||
//const repDate = new Date();
|
//const repDate = new Date();
|
||||||
@@ -133,29 +132,27 @@ const RepCompleteSubmit = (props) => {
|
|||||||
|
|
||||||
let buildAppealFilesArray = [];
|
let buildAppealFilesArray = [];
|
||||||
|
|
||||||
let filesUploadObj =
|
// let filesUploadObj =
|
||||||
formObj.representationForm.values.representationDocuments;
|
// formObj.representationForm.values.representationDocuments;
|
||||||
|
|
||||||
for (let key in filesUploadObj) {
|
// for (let key in filesUploadObj) {
|
||||||
typeof filesUploadObj[key].name != "undefined" &&
|
// typeof filesUploadObj[key].name != "undefined" &&
|
||||||
buildAppealFilesArray.push({
|
// buildAppealFilesArray.push({
|
||||||
"name": filesUploadObj[key].name,
|
// "name": filesUploadObj[key].name,
|
||||||
"size": filesUploadObj[key].size,
|
// "size": filesUploadObj[key].size,
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
|
||||||
console.log(
|
// console.log(
|
||||||
buildAppealFilesArray,
|
// buildAppealFilesArray,
|
||||||
formObj.representationForm.values.filesList
|
// formObj.representationForm.values.filesList
|
||||||
);
|
// );
|
||||||
|
|
||||||
buildAppealFilesArray = formObj.representationForm.values.hasOwnProperty(
|
buildAppealFilesArray = formObj.representationForm.values.hasOwnProperty(
|
||||||
"filesList"
|
"filesList"
|
||||||
)
|
)
|
||||||
? buildAppealFilesArray.concat(
|
? formObj.representationForm.values.filesList
|
||||||
formObj.representationForm.values.filesList
|
: [];
|
||||||
)
|
|
||||||
: buildAppealFilesArray;
|
|
||||||
|
|
||||||
console.log(buildAppealFilesArray);
|
console.log(buildAppealFilesArray);
|
||||||
|
|
||||||
@@ -163,19 +160,19 @@ const RepCompleteSubmit = (props) => {
|
|||||||
// ...new Map(buildAppealFilesArray.map((v) => [v.name, v])).values(),
|
// ...new Map(buildAppealFilesArray.map((v) => [v.name, v])).values(),
|
||||||
// ];
|
// ];
|
||||||
|
|
||||||
buildAppealFilesArray = buildAppealFilesArray.filter(function (el) {
|
// buildAppealFilesArray = buildAppealFilesArray.filter(function (el) {
|
||||||
return el != null;
|
// return el != null;
|
||||||
});
|
// });
|
||||||
|
|
||||||
const arrUniq = buildAppealFilesArray.filter(
|
// const arrUniq = buildAppealFilesArray.filter(
|
||||||
(obj1, i, arr) => arr.findIndex((obj2) => obj2.name === obj1.name) === i
|
// (obj1, i, arr) => arr.findIndex((obj2) => obj2.name === obj1.name) === i
|
||||||
);
|
// );
|
||||||
|
|
||||||
console.log(arrUniq);
|
// console.log(arrUniq);
|
||||||
|
|
||||||
Object.assign(formObj.representationForm.values, {
|
// Object.assign(formObj.representationForm.values, {
|
||||||
"filesList": arrUniq,
|
// "filesList": arrUniq,
|
||||||
});
|
// });
|
||||||
|
|
||||||
let filterFiles = [];
|
let filterFiles = [];
|
||||||
return (
|
return (
|
||||||
@@ -357,37 +354,36 @@ const RepCompleteSubmit = (props) => {
|
|||||||
</dt>
|
</dt>
|
||||||
|
|
||||||
<dd className="govuk-summary-list__value">
|
<dd className="govuk-summary-list__value">
|
||||||
{formObj.representationForm.values
|
{buildAppealFilesArray.length > 0
|
||||||
.filesList.length > 0
|
? buildAppealFilesArray.map(
|
||||||
? ((filterFiles =
|
(blob, i) => (
|
||||||
formObj.representationForm.values.filesList.filter(
|
<div
|
||||||
function (el) {
|
key={
|
||||||
return el != null;
|
blob.name +
|
||||||
}
|
"_" +
|
||||||
)),
|
i
|
||||||
filterFiles.map((blob, i) => (
|
}
|
||||||
<div
|
className="govuk-!-margin-bottom-5 fileThumb "
|
||||||
key={blob.name + "_" + i}
|
>
|
||||||
className="govuk-!-margin-bottom-5 fileThumb "
|
<img
|
||||||
>
|
src={getThumbnailIconByExtension(
|
||||||
<img
|
blob.name
|
||||||
src={getThumbnailIconByExtension(
|
)}
|
||||||
blob.name
|
alt={blob.name}
|
||||||
)}
|
width="50"
|
||||||
alt={blob.name}
|
/>
|
||||||
width="50"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<span className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5">
|
<span className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5">
|
||||||
{blob.name} (
|
{blob.name} (
|
||||||
{bytesToSize(
|
{bytesToSize(
|
||||||
blob.size
|
blob.size
|
||||||
)}
|
)}
|
||||||
)
|
)
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)))
|
)
|
||||||
: ""}{" "}
|
)
|
||||||
|
: ""}
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dd className="govuk-summary-list__actions">
|
<dd className="govuk-summary-list__actions">
|
||||||
|
|||||||
@@ -966,21 +966,46 @@ export const RenderFileUpload = (field) => {
|
|||||||
|
|
||||||
let blobList = filelistObj;
|
let blobList = filelistObj;
|
||||||
|
|
||||||
// let buildAppealFilesArray = [];
|
function removeObjectsWithUndefinedKey(arr, key) {
|
||||||
|
return arr.filter((obj) => obj[key] !== undefined);
|
||||||
|
}
|
||||||
|
|
||||||
// let filesUploadObj = field.input.value;
|
function removeEmptyObjects(arr) {
|
||||||
|
return arr.filter((obj) => Object.keys(obj).length > 0);
|
||||||
|
}
|
||||||
|
|
||||||
// for (let key in filesUploadObj) {
|
blobList = removeEmptyObjects(blobList);
|
||||||
// typeof filesUploadObj[key].name != "undefined" &&
|
blobList = removeObjectsWithUndefinedKey(blobList, "name");
|
||||||
// buildAppealFilesArray.push({
|
|
||||||
// "name": filesUploadObj[key].name,
|
|
||||||
// "size": filesUploadObj[key].size,
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
|
|
||||||
// buildAppealFilesArray = buildAppealFilesArray.concat(blobList);
|
let buildAppealFilesArray = [];
|
||||||
|
|
||||||
// blobList = buildAppealFilesArray;
|
let filesUploadObj = field.input.value;
|
||||||
|
|
||||||
|
for (let key in filesUploadObj) {
|
||||||
|
typeof filesUploadObj[key].name != "undefined" &&
|
||||||
|
buildAppealFilesArray.push({
|
||||||
|
"name": filesUploadObj[key].name,
|
||||||
|
"size": filesUploadObj[key].size,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
buildAppealFilesArray = buildAppealFilesArray.concat(blobList);
|
||||||
|
|
||||||
|
function removeDuplicates(arr) {
|
||||||
|
const seen = new Set();
|
||||||
|
return arr.filter((obj) => {
|
||||||
|
const serializedObj = JSON.stringify(obj);
|
||||||
|
if (seen.has(serializedObj)) {
|
||||||
|
return false; // Skip this object (duplicate)
|
||||||
|
}
|
||||||
|
seen.add(serializedObj); // Add the serialized object to the "seen" set
|
||||||
|
return true; // Keep this object
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
buildAppealFilesArray = removeDuplicates(buildAppealFilesArray);
|
||||||
|
|
||||||
|
blobList = buildAppealFilesArray;
|
||||||
|
|
||||||
const deleteThisBlob = async (
|
const deleteThisBlob = async (
|
||||||
containerName,
|
containerName,
|
||||||
@@ -1054,7 +1079,7 @@ export const RenderFileUpload = (field) => {
|
|||||||
{field.meta.touched && field.meta.error && (
|
{field.meta.touched && field.meta.error && (
|
||||||
<span className="error">{field.meta.error}</span>
|
<span className="error">{field.meta.error}</span>
|
||||||
)}
|
)}
|
||||||
{files && Array.isArray(files) && (
|
{blobList && Array.isArray(files) && (
|
||||||
<ul>
|
<ul>
|
||||||
{files.map(
|
{files.map(
|
||||||
(file, i) =>
|
(file, i) =>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { useRouter } from "next/router";
|
|||||||
import { useDropzone } from "react-dropzone";
|
import { useDropzone } from "react-dropzone";
|
||||||
import { connect } from "react-redux";
|
import { connect } from "react-redux";
|
||||||
import { Field, change, formValueSelector, reduxForm } from "redux-form";
|
import { Field, change, formValueSelector, reduxForm } from "redux-form";
|
||||||
import { useState } from "react";
|
import { useState, useEffect } from "react";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
FileUploadField,
|
FileUploadField,
|
||||||
@@ -41,7 +41,6 @@ let RepLPA = (props) => {
|
|||||||
} = props;
|
} = props;
|
||||||
const { acceptedFiles, getRootProps, getInputProps } = useDropzone();
|
const { acceptedFiles, getRootProps, getInputProps } = useDropzone();
|
||||||
const [savingStatus, setSavingStatus] = useState(false);
|
const [savingStatus, setSavingStatus] = useState(false);
|
||||||
|
|
||||||
const files = acceptedFiles.map((file) => (
|
const files = acceptedFiles.map((file) => (
|
||||||
<li key={file.path}>
|
<li key={file.path}>
|
||||||
{file.path} - {file.size} bytes
|
{file.path} - {file.size} bytes
|
||||||
@@ -49,34 +48,6 @@ let RepLPA = (props) => {
|
|||||||
));
|
));
|
||||||
const required = (value) => (value ? undefined : "Required");
|
const required = (value) => (value ? undefined : "Required");
|
||||||
|
|
||||||
const updateQuestionnaireCount = () => {
|
|
||||||
{
|
|
||||||
switch (currentView.caseReference.appealType) {
|
|
||||||
case 846040000:
|
|
||||||
case 846040001:
|
|
||||||
case 846040006:
|
|
||||||
case 846040025:
|
|
||||||
case 846040004:
|
|
||||||
case 846040018:
|
|
||||||
case 846040003:
|
|
||||||
case 846040009:
|
|
||||||
case 846040008:
|
|
||||||
setQuestionnaireCount(7);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 846040005:
|
|
||||||
case 846040006:
|
|
||||||
case 846040007:
|
|
||||||
setQuestionnaireCount(9);
|
|
||||||
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
setQuestionnaireCount(7);
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
const whichQuestionnaire = () => {
|
const whichQuestionnaire = () => {
|
||||||
{
|
{
|
||||||
switch (currentView.caseReference.appealType) {
|
switch (currentView.caseReference.appealType) {
|
||||||
@@ -90,7 +61,6 @@ let RepLPA = (props) => {
|
|||||||
case 846040009:
|
case 846040009:
|
||||||
case 846040008:
|
case 846040008:
|
||||||
case 846040017:
|
case 846040017:
|
||||||
updateQuestionnaireCount();
|
|
||||||
return (
|
return (
|
||||||
<S78_Questionnaire
|
<S78_Questionnaire
|
||||||
props={props}
|
props={props}
|
||||||
@@ -110,7 +80,6 @@ let RepLPA = (props) => {
|
|||||||
case 846040005:
|
case 846040005:
|
||||||
case 846040006:
|
case 846040006:
|
||||||
case 846040007:
|
case 846040007:
|
||||||
updateQuestionnaireCount();
|
|
||||||
return (
|
return (
|
||||||
<Enforcement_Questionnaire
|
<Enforcement_Questionnaire
|
||||||
props={props}
|
props={props}
|
||||||
@@ -218,7 +187,8 @@ let RepLPA = (props) => {
|
|||||||
);
|
);
|
||||||
resultsObj = resultsObj[0];
|
resultsObj = resultsObj[0];
|
||||||
|
|
||||||
props.formObj["representationForm"].hasOwnProperty("values") &&
|
props.formObj.hasOwnProperty("representationForm") &&
|
||||||
|
props.formObj["representationForm"].hasOwnProperty("values") &&
|
||||||
props.formObj["representationForm"].values.hasOwnProperty(
|
props.formObj["representationForm"].values.hasOwnProperty(
|
||||||
"representationCapacity"
|
"representationCapacity"
|
||||||
) &&
|
) &&
|
||||||
@@ -409,7 +379,6 @@ let RepLPA = (props) => {
|
|||||||
Back
|
Back
|
||||||
</a>
|
</a>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{savingStatus ? (
|
{savingStatus ? (
|
||||||
<span className=" progress-save-active">
|
<span className=" progress-save-active">
|
||||||
{router.locale == "cy"
|
{router.locale == "cy"
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ import {
|
|||||||
import {
|
import {
|
||||||
setCurrentReference,
|
setCurrentReference,
|
||||||
setCurrentView,
|
setCurrentView,
|
||||||
|
setRepresentationCapacity,
|
||||||
} from "../../store/currentView/action";
|
} from "../../store/currentView/action";
|
||||||
import {
|
import {
|
||||||
setMyRepresentations,
|
setMyRepresentations,
|
||||||
@@ -45,6 +46,7 @@ const TopThree = (props) => {
|
|||||||
setAwaitingSubmissionDetails,
|
setAwaitingSubmissionDetails,
|
||||||
setMyRepresentations,
|
setMyRepresentations,
|
||||||
setMyRepresentationsDetails,
|
setMyRepresentationsDetails,
|
||||||
|
setRepresentationCapacity,
|
||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
@@ -107,6 +109,13 @@ const TopThree = (props) => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const isLPA =
|
||||||
|
props.accountDetails.accountDetails[
|
||||||
|
"pinswg_typeofinvolvement@OData.Community.Display.V1.FormattedValue"
|
||||||
|
] == "LPA"
|
||||||
|
? true
|
||||||
|
: false;
|
||||||
|
|
||||||
const deleteRepItem = (containerID, caseID, repfile) => {
|
const deleteRepItem = (containerID, caseID, repfile) => {
|
||||||
let cookies = parseCookies();
|
let cookies = parseCookies();
|
||||||
//console.log("sssss", containerID, caseID, repfile);
|
//console.log("sssss", containerID, caseID, repfile);
|
||||||
@@ -205,6 +214,7 @@ const TopThree = (props) => {
|
|||||||
showTopThreeArr[key].appealType,
|
showTopThreeArr[key].appealType,
|
||||||
"repDetails": showTopThreeArr[key],
|
"repDetails": showTopThreeArr[key],
|
||||||
});
|
});
|
||||||
|
isLPA && setRepresentationCapacity("lpa");
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{showTopThreeArr[key].pinswg_name}
|
{showTopThreeArr[key].pinswg_name}
|
||||||
@@ -343,6 +353,9 @@ const mapDispatchToProps = (dispatch) => {
|
|||||||
setMyRepresentationsDetails: (myRepresentationsDetails) => {
|
setMyRepresentationsDetails: (myRepresentationsDetails) => {
|
||||||
dispatch(setMyRepresentationsDetails(myRepresentationsDetails));
|
dispatch(setMyRepresentationsDetails(myRepresentationsDetails));
|
||||||
},
|
},
|
||||||
|
setRepresentationCapacity: (representationCapacity) => {
|
||||||
|
dispatch(setRepresentationCapacity(representationCapacity));
|
||||||
|
},
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user