Merged PR 2240: refactor(newappeal): simplify nested prop boundaries (Slice 7)
refactor(newappeal): simplify nested prop boundaries (Slice 7) Related work items: #22588
This commit is contained in:
@@ -27,6 +27,9 @@ import {
|
||||
|
||||
let BuildCheckRow = (props) => {
|
||||
let { t } = useTranslation();
|
||||
const legacyProps = props.props;
|
||||
const legacyFormState = legacyProps.form;
|
||||
const legacyFormData = legacyProps.formData;
|
||||
|
||||
const router = useRouter();
|
||||
const { locale } = router;
|
||||
@@ -140,7 +143,7 @@ let BuildCheckRow = (props) => {
|
||||
// ) {
|
||||
const fieldTypeValue = fieldtype[0].value;
|
||||
const fieldValue =
|
||||
props.props.form["appealForm"].values[
|
||||
legacyFormState["appealForm"].values[
|
||||
datafieldname[0].value
|
||||
];
|
||||
|
||||
@@ -190,7 +193,8 @@ let BuildCheckRow = (props) => {
|
||||
{getDocumentTypeFromFilename(
|
||||
blob.name
|
||||
) ===
|
||||
documentTypeCode[0].value && (
|
||||
documentTypeCode[0]
|
||||
.value && (
|
||||
<div
|
||||
style={{
|
||||
display: "flex",
|
||||
@@ -230,44 +234,42 @@ let BuildCheckRow = (props) => {
|
||||
);
|
||||
|
||||
const renderTenantValue = () =>
|
||||
typeof fieldValue != "undefined" && fieldValue != null ? (
|
||||
fieldValue.map((tenant, index) => {
|
||||
console.log(
|
||||
typeof tenant.pinswg_owners_firstname
|
||||
);
|
||||
return typeof tenant.pinswg_owners_firstname !=
|
||||
"undefined" ||
|
||||
typeof tenant.pinswg_agriculturaltenantname_firstname !=
|
||||
"undefined" ? (
|
||||
<div
|
||||
key={index}
|
||||
style={{
|
||||
display: "flex"
|
||||
}}
|
||||
>
|
||||
<div className="govuk-!-width-one-half">
|
||||
{tenant?.pinswg_agriculturaltenantname_firstname &&
|
||||
tenant.pinswg_agriculturaltenantname_firstname +
|
||||
" " +
|
||||
tenant.pinswg_agriculturaltenantname_lastname}
|
||||
typeof fieldValue != "undefined" && fieldValue != null
|
||||
? fieldValue.map((tenant, index) => {
|
||||
console.log(
|
||||
typeof tenant.pinswg_owners_firstname
|
||||
);
|
||||
return typeof tenant.pinswg_owners_firstname !=
|
||||
"undefined" ||
|
||||
typeof tenant.pinswg_agriculturaltenantname_firstname !=
|
||||
"undefined" ? (
|
||||
<div
|
||||
key={index}
|
||||
style={{
|
||||
display: "flex"
|
||||
}}
|
||||
>
|
||||
<div className="govuk-!-width-one-half">
|
||||
{tenant?.pinswg_agriculturaltenantname_firstname &&
|
||||
tenant.pinswg_agriculturaltenantname_firstname +
|
||||
" " +
|
||||
tenant.pinswg_agriculturaltenantname_lastname}
|
||||
|
||||
{tenant?.pinswg_owners_firstname &&
|
||||
tenant.pinswg_owners_firstname +
|
||||
" " +
|
||||
tenant.pinswg_owners_lastname}
|
||||
</div>
|
||||
<div className="govuk-!-width-one-half">
|
||||
Served:{" "}
|
||||
{formatDate(tenant.dateserved)}
|
||||
</div>
|
||||
</div>
|
||||
) : (
|
||||
""
|
||||
);
|
||||
})
|
||||
) : (
|
||||
"N/A"
|
||||
);
|
||||
{tenant?.pinswg_owners_firstname &&
|
||||
tenant.pinswg_owners_firstname +
|
||||
" " +
|
||||
tenant.pinswg_owners_lastname}
|
||||
</div>
|
||||
<div className="govuk-!-width-one-half">
|
||||
Served:{" "}
|
||||
{formatDate(tenant.dateserved)}
|
||||
</div>
|
||||
</div>
|
||||
) : (
|
||||
""
|
||||
);
|
||||
})
|
||||
: "N/A";
|
||||
|
||||
const formatterMap = {
|
||||
"{E0DECE4B-6666-4a8f-A065-082708572369}": () => (
|
||||
@@ -281,13 +283,13 @@ let BuildCheckRow = (props) => {
|
||||
formatDate(fieldValue),
|
||||
"{3EF39988-22BB-4f0b-BBBE-64B5A3748AEE}": () =>
|
||||
getPickListLabel(
|
||||
props.props.formData.pickListData,
|
||||
legacyFormData.pickListData,
|
||||
datafieldname[0].value,
|
||||
fieldValue
|
||||
),
|
||||
"{07FAC785-CD58-4f9f-ABB3-4B7DDC6ED5ED}": () =>
|
||||
getRadioLabel(
|
||||
props.props.formData.pickListData,
|
||||
legacyFormData.pickListData,
|
||||
datafieldname[0].value,
|
||||
fieldValue
|
||||
),
|
||||
@@ -297,8 +299,8 @@ let BuildCheckRow = (props) => {
|
||||
? "Nac ydw"
|
||||
: "No"
|
||||
: router.locale == "cy"
|
||||
? "Oes"
|
||||
: "Yes",
|
||||
? "Oes"
|
||||
: "Yes",
|
||||
"{16D63FD6-119B-4353-BDCA-18358721C3FE}":
|
||||
renderFileUploadValue,
|
||||
"{0273EDBD-AC1D-40d3-9FB2-095C621B552D}":
|
||||
|
||||
@@ -55,6 +55,11 @@ let BuildCheckSection = (props) => {
|
||||
docsOffline
|
||||
} = props;
|
||||
|
||||
const legacyProps = props.props;
|
||||
const legacyAppealType = legacyProps.appealType;
|
||||
const legacyFormState = legacyProps.form;
|
||||
const legacyAccountDetails = legacyProps.accountDetails;
|
||||
|
||||
const parser = new DOMParser();
|
||||
var doc = parser.parseFromString(props.formXML, "text/xml");
|
||||
var titles = xpath.select(
|
||||
@@ -89,7 +94,7 @@ let BuildCheckSection = (props) => {
|
||||
|
||||
let buildAppealFilesArray = [];
|
||||
//console.log("attached docs: - ", buildAppealFilesArray);
|
||||
buildAppealFilesArray = props.props.appealType.fileList?.value[0] || [];
|
||||
buildAppealFilesArray = legacyAppealType.fileList?.value[0] || [];
|
||||
//let filesUploadObj = buildAppealFilesArray;
|
||||
// let filesUploadObj = props.appealType.fileList.hasOwnProperty("value")
|
||||
// ? props.appealType.fileList.value[0]
|
||||
@@ -113,13 +118,13 @@ let BuildCheckSection = (props) => {
|
||||
"name"
|
||||
);
|
||||
|
||||
let pdfObj = props.props.form.appealForm.values;
|
||||
let pdfObj = legacyFormState.appealForm.values;
|
||||
|
||||
pdfObj = updateLinks(pdfObj);
|
||||
|
||||
Object.assign(pdfObj, {
|
||||
"filesList": buildAppealFilesArray,
|
||||
"containerID": props.props.accountDetails.containerID,
|
||||
"containerID": legacyAccountDetails.containerID,
|
||||
"casefolderID": props.appealType.caseReference.ticketnumber
|
||||
});
|
||||
|
||||
@@ -162,7 +167,7 @@ let BuildCheckSection = (props) => {
|
||||
? (setFinaliseAppealProcess(true),
|
||||
await generateAppealPDFEffect(
|
||||
pdfObj,
|
||||
props.props.accountDetails.containerID,
|
||||
legacyAccountDetails.containerID,
|
||||
props.appealType.caseReference.ticketnumber,
|
||||
router.query.appealtypes,
|
||||
pdfObj.filesList
|
||||
@@ -171,9 +176,9 @@ let BuildCheckSection = (props) => {
|
||||
.then((data) => {
|
||||
console.log("have generated pdf:", data);
|
||||
sendCaseCompleteMessageEffect(
|
||||
props.props.accountDetails.containerID,
|
||||
legacyAccountDetails.containerID,
|
||||
props.appealType.caseReference.ticketnumber,
|
||||
props.props.accountDetails.accountDetails
|
||||
legacyAccountDetails.accountDetails
|
||||
.pinswg_typeofinvolvement
|
||||
);
|
||||
})
|
||||
@@ -202,8 +207,8 @@ let BuildCheckSection = (props) => {
|
||||
|
||||
const containerID =
|
||||
props.accountDetails?.containerID ||
|
||||
props.props?.accountDetails?.containerID ||
|
||||
props.props?.props?.accountDetails?.containerID;
|
||||
legacyProps?.accountDetails?.containerID ||
|
||||
legacyProps?.props?.accountDetails?.containerID;
|
||||
const caseRef =
|
||||
props?.currentView?.caseReference?.ticketnumber ||
|
||||
props?.appealType?.caseReference?.ticketnumber;
|
||||
|
||||
@@ -209,7 +209,7 @@ export default function BuildField(props) {
|
||||
uploadCount={uploadCount}
|
||||
setFileCount={setFileCount}
|
||||
setUploadCount={setUploadCount}
|
||||
props={props?.props?.props?.props}
|
||||
props={pageProps}
|
||||
/>
|
||||
</div>
|
||||
),
|
||||
|
||||
@@ -23,6 +23,8 @@ import {
|
||||
|
||||
export default function BuildRow(props) {
|
||||
let { t } = useTranslation();
|
||||
const legacyProps = props.props;
|
||||
const legacyPageProps = legacyProps.props;
|
||||
|
||||
const router = useRouter();
|
||||
const { locale } = router;
|
||||
@@ -128,7 +130,7 @@ export default function BuildRow(props) {
|
||||
key={key}
|
||||
props={props}
|
||||
picklistData={
|
||||
props.props.props.formData.pickListData
|
||||
legacyPageProps.formData.pickListData
|
||||
}
|
||||
mandatoryFieldsData={mandatoryFieldsData}
|
||||
documentTypeCode={documentTypeCode}
|
||||
@@ -158,7 +160,7 @@ export default function BuildRow(props) {
|
||||
key={key}
|
||||
props={props}
|
||||
picklistData={
|
||||
props.props.props.formData.pickListData
|
||||
legacyPageProps.formData.pickListData
|
||||
}
|
||||
mandatoryFieldsData={mandatoryFieldsData}
|
||||
hint={hint}
|
||||
@@ -168,13 +170,13 @@ export default function BuildRow(props) {
|
||||
maxFieldLength={maxFieldLength}
|
||||
dateStart={dateStart}
|
||||
dateEnd={dateEnd}
|
||||
setDocumentsList={props.props.setDocumentsList}
|
||||
setDocumentsList={legacyProps.setDocumentsList}
|
||||
documentList={
|
||||
props.props.appealType.documentList
|
||||
legacyProps.appealType.documentList
|
||||
}
|
||||
documentTypeCode={documentTypeCode}
|
||||
setFilesForAppeal={
|
||||
props.props.setFilesForAppeal
|
||||
legacyProps.setFilesForAppeal
|
||||
}
|
||||
maxSubField={maxSubField}
|
||||
setFileCount={setFileCount}
|
||||
|
||||
@@ -72,6 +72,12 @@ let BuildSection = (props) => {
|
||||
mandatoryFieldsData
|
||||
} = props;
|
||||
|
||||
const legacyProps = props.props;
|
||||
const legacyAccountDetails = legacyProps.accountDetails;
|
||||
const legacyFormState = legacyProps.form;
|
||||
const legacyAppealType = legacyProps.appealType;
|
||||
const legacyUrl = legacyProps.url;
|
||||
|
||||
const documentListObj = props.appealType.documentList;
|
||||
const currentSection = props.appealType.currentSection;
|
||||
|
||||
@@ -130,8 +136,8 @@ let BuildSection = (props) => {
|
||||
await uploadAppealFilesEffect(
|
||||
dataObj,
|
||||
fileListObj,
|
||||
props.props.accountDetails.containerID,
|
||||
props.props.appealType.caseReference.ticketnumber
|
||||
legacyAccountDetails.containerID,
|
||||
legacyAppealType.caseReference.ticketnumber
|
||||
).then((data) => {
|
||||
//console.log("$1", data);
|
||||
setCompletedUploadFiles(true);
|
||||
@@ -223,7 +229,7 @@ let BuildSection = (props) => {
|
||||
Object.assign(updateBody, {
|
||||
"pinswg_appealcasetype": props.appealType.appealTypeID,
|
||||
"pinswg_Appellant@odata.bind":
|
||||
"/contacts(" + props.props.accountDetails.loggedinUserId + ")",
|
||||
"/contacts(" + legacyAccountDetails.loggedinUserId + ")",
|
||||
"pinswg_name": props.appealType.caseReference.ticketnumber,
|
||||
[updateBindAppealTypeToIncident + "@odata.bind"]:
|
||||
"/incidents(" + incidentId + ")"
|
||||
@@ -241,12 +247,12 @@ let BuildSection = (props) => {
|
||||
const reference = "PEDW-PARTIAL";
|
||||
const templateId = "021b0a7b-df00-41f1-b94e-c269bee98c75";
|
||||
const templateIdCY = "f3c4a56b-bfb8-4d39-97dd-888df3062b0a";
|
||||
const emailAddress = props.props.accountDetails.loggedinUserEmail;
|
||||
const emailAddress = legacyAccountDetails.loggedinUserEmail;
|
||||
const personalisation = {
|
||||
"caseReference": props.appealType.caseReference.ticketnumber,
|
||||
"emailAddress": props.props.accountDetails.loggedinUserEmail,
|
||||
"emailAddress": legacyAccountDetails.loggedinUserEmail,
|
||||
"returnLink":
|
||||
props.props.url +
|
||||
legacyUrl +
|
||||
(router.locale != "en" ? "/cy/fymhorth/" : "/myportal/") +
|
||||
appTypeCollection.UrlName +
|
||||
"?lpa=" +
|
||||
@@ -354,7 +360,7 @@ let BuildSection = (props) => {
|
||||
const [hasErrors, setHasErrors] = useState("");
|
||||
|
||||
const getErrors = () => {
|
||||
let errorsobj = props.props.form["appealForm"];
|
||||
let errorsobj = legacyFormState["appealForm"];
|
||||
//setHasErrors(errorsobj.hasOwnProperty("syncErrors"));
|
||||
window.scrollTo(0, 0);
|
||||
};
|
||||
@@ -385,7 +391,7 @@ let BuildSection = (props) => {
|
||||
};
|
||||
|
||||
const hasUploadFiles = () => {
|
||||
const formArr = props.props.form["appealForm"].values;
|
||||
const formArr = legacyFormState["appealForm"].values;
|
||||
const prefix = "pinswg_fileUpload";
|
||||
const hasFiles = Object.keys(formArr).some((key) =>
|
||||
key.startsWith(prefix)
|
||||
@@ -431,11 +437,10 @@ let BuildSection = (props) => {
|
||||
onClick={() => {
|
||||
getErrors();
|
||||
let valuesObj = _.has(
|
||||
props.props.form[props.form],
|
||||
legacyFormState[props.form],
|
||||
"values"
|
||||
)
|
||||
? props.props.form[props.form]
|
||||
.values
|
||||
? legacyFormState[props.form].values
|
||||
: {};
|
||||
|
||||
//console.log("valuesobj:", valuesObj);
|
||||
@@ -470,7 +475,7 @@ let BuildSection = (props) => {
|
||||
className="govuk-button progress-save "
|
||||
onClick={() => {
|
||||
let valuesObj =
|
||||
props.props.form[props.form]
|
||||
legacyFormState[props.form]
|
||||
.values || {};
|
||||
|
||||
// console.log(
|
||||
@@ -532,7 +537,7 @@ let BuildSection = (props) => {
|
||||
className="govuk-button progress-save "
|
||||
onClick={() => {
|
||||
let valuesObj =
|
||||
props.props.form[props.form]
|
||||
legacyFormState[props.form]
|
||||
.values || {};
|
||||
|
||||
// console.log(
|
||||
|
||||
@@ -10,9 +10,13 @@ import { setCurrentSection } from "../../store/appealType/action";
|
||||
import { getFormCollectionByID } from "../utils";
|
||||
|
||||
let CompleteAppeal = (props) => {
|
||||
const legacyProps = props.props;
|
||||
const legacyFormState = legacyProps.form;
|
||||
const legacyAccountDetails = legacyProps.accountDetails;
|
||||
|
||||
useEffect(() => {
|
||||
let incidentId = props.appealType.caseReference.incidentid;
|
||||
let updateBody = props.props.form.appealForm.values;
|
||||
let updateBody = legacyFormState.appealForm.values;
|
||||
|
||||
let appTypeCollection = getFormCollectionByID(
|
||||
props.appealType.appealTypeID
|
||||
@@ -24,7 +28,7 @@ let CompleteAppeal = (props) => {
|
||||
|
||||
Object.assign(updateBody, {
|
||||
"pinswg_Appellant@odata.bind":
|
||||
"/contacts(" + props.props.accountDetails.loggedinUserId + ")",
|
||||
"/contacts(" + legacyAccountDetails.loggedinUserId + ")",
|
||||
"pinswg_LocalPlanningAuthority@odata.bind":
|
||||
"/accounts(" + props.appealType.appealLPA + ")",
|
||||
"pinswg_name": props.appealType.caseReference.ticketnumber,
|
||||
@@ -44,10 +48,10 @@ let CompleteAppeal = (props) => {
|
||||
: "618e0463-b092-4733-a024-bf8a3bbde808";
|
||||
|
||||
const reference = "PEDW-COMPLETE" + isWelsh && "-CY";
|
||||
const emailAddress = props.props.accountDetails.loggedinUserEmail;
|
||||
const emailAddress = legacyAccountDetails.loggedinUserEmail;
|
||||
const personalisation = {
|
||||
"caseReference": props.appealType.caseReference.ticketnumber,
|
||||
"emailAddress": props.props.accountDetails.loggedinUserEmail,
|
||||
"emailAddress": legacyAccountDetails.loggedinUserEmail,
|
||||
"linkExpiry": 10 * 60
|
||||
};
|
||||
sendCompletionEmailEffect(
|
||||
@@ -68,12 +72,12 @@ let CompleteAppeal = (props) => {
|
||||
window.scrollTo({ top: 0, behavior: "smooth" });
|
||||
}, [
|
||||
props.appealType.caseReference,
|
||||
props.props.form.appealForm.values,
|
||||
legacyFormState.appealForm.values,
|
||||
props.appealType.appealLPA,
|
||||
props.props.accountDetails.loggedinUserId,
|
||||
legacyAccountDetails.loggedinUserId,
|
||||
props.appealType.appealTypeID,
|
||||
props.props.accountDetails.loggedinUserEmail,
|
||||
props.props.accountDetails.containerID
|
||||
legacyAccountDetails.loggedinUserEmail,
|
||||
legacyAccountDetails.containerID
|
||||
]);
|
||||
|
||||
let { t } = useTranslation();
|
||||
|
||||
@@ -4,7 +4,7 @@ Base branch for this tracker: `refactor`
|
||||
|
||||
## Status
|
||||
|
||||
Current slice: Slice 7 — Props Boundary Cleanup
|
||||
Current slice: Slice 8 — Start Flow Cleanup (CreateCase / AboutYou)
|
||||
Status: READY TO START
|
||||
|
||||
---
|
||||
@@ -68,7 +68,7 @@ Status: COMPLETE
|
||||
|
||||
### Slice 7 — Props Boundary Cleanup
|
||||
|
||||
Status: NOT STARTED
|
||||
Status: COMPLETE
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user