Merged PR 1088: added in date raised on myportal cards

added in date raised on myportal cards

Related work items: #10487
This commit is contained in:
Robert Bond
2024-02-28 13:01:17 +00:00
7 changed files with 267 additions and 182 deletions
+34 -19
View File
@@ -1595,7 +1595,17 @@ const RenderFileUpload = (field) => {
return (
<>
<Dropzone
accept="application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,image/tiff,image/jpeg,application/zip"
key={field.input.name + "_key"}
accept={{
"application/pdf": [".pdf"],
"application/msword": [".doc"],
"application/vnd.openxmlformats-officedocument.wordprocessingml.document":
[".docx"],
"image/tiff": [".tif", ".tiff"],
"image/jpeg": [".jpg", ".jpeg"],
"application/zip": [".zip"],
"image/png": [".png"],
}}
onDrop={(filesToUpload, e) => {
const renamedAcceptedFiles = filesToUpload.map(
(file) =>
@@ -1645,22 +1655,27 @@ const RenderFileUpload = (field) => {
)}
{files && Array.isArray(files) && (
<ul>
{files.map((file, i) => (
<div
key={file.name}
className="govuk-!-margin-bottom-5 fileThumb"
>
<img
src={getThumbnailIcon(file, file.type)}
alt={file.name}
width="50"
/>
<span className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5">
{/* {file.name.slice(file.name.indexOf("_") + 1)} ( */}{" "}
{file.name}( ({bytesToSize(file.size)})
</span>
</div>
))}
{files.map(
(file, i) =>
typeof file.name != "undefined" && (
<div
key={file.name}
className="govuk-!-margin-bottom-5 fileThumb"
>
{" "}
{}
<img
src={getThumbnailIcon(file, file.type)}
alt={file.name}
width="50"
/>
<span className="govuk-body govuk-!-font-size-14 govuk-!-padding-left-5">
{/* {file.name.slice(file.name.indexOf("_") + 1)} ( */}{" "}
{file.name}( ({bytesToSize(file.size)})
</span>
</div>
)
)}
</ul>
)}
{blobList.map((blob, i) => (
@@ -1668,7 +1683,7 @@ const RenderFileUpload = (field) => {
key={blob.name + "_" + i}
className="govuk-!-margin-bottom-5 fileThumb govuk-!-margin-top-5"
>
<div className="">
<div key={"deleteLnk" + i} className="">
<span
className="govuk-summary-list__actionLink watched_link govuk-!-margin-right-5 govuk-!-text-align-left"
onClick={() => {
@@ -1692,7 +1707,7 @@ const RenderFileUpload = (field) => {
/>
<Link
key={i}
key={"lnk" + i}
scroll={false}
href={
"/api/file/downloadblob?container=" +
+13 -14
View File
@@ -122,20 +122,19 @@ const MyPortal = (props) => {
}
/>
)} */}
{isLPA
? ""
: props.awaitingSubmission
.awaitingSubmissionFromBlob[
"@odata.count"
] > 0 && (
<AwaitingSubmissionFromBlob
containerID={props.containerID}
awaitingSubmissionFromBlob={
props.awaitingSubmission
.awaitingSubmissionFromBlob
}
/>
)}
{!isLPA &&
props.awaitingSubmission
.awaitingSubmissionFromBlob[
"@odata.count"
] > 0 && (
<AwaitingSubmissionFromBlob
containerID={props.containerID}
awaitingSubmissionFromBlob={
props.awaitingSubmission
.awaitingSubmissionFromBlob
}
/>
)}
{props.myCases.myCases["@odata.count"] > 0 && (
<MyCases
myCases={props.myCases}
+194 -145
View File
@@ -24,10 +24,26 @@ const AwaitingSubmissionFromBlob = (props) => {
const { locale } = router;
const { setCurrentView } = props;
let topthreeRow = [];
let topthreeRowArr = [];
let showTopThreeArr = props.awaitingSubmissionFromBlob.value;
let showTopThreeArrDets = props.awaitingSubmissionFromBlob.case;
Object.keys(showTopThreeArrDets).map((key, index) => {
let createdDate = showTopThreeArrDets[key].createdon;
showTopThreeArr[key].createdDate = createdDate;
});
showTopThreeArr.sort(function compare(a, b) {
var dateA = new Date(a.createdDate);
var dateB = new Date(b.createdDate);
return dateB - dateA;
});
const raisedDate = (datePart) => {
var dateObj = new Date(datePart);
return dateObj.toLocaleString();
};
const deleteCaseItem = (containerID, caseID) => {
let cookies = parseCookies();
console.log("sssss", containerID, caseID);
@@ -52,170 +68,203 @@ const AwaitingSubmissionFromBlob = (props) => {
showTopThreeArr[key].pinswg_appealcasetype
).UrlName;
topthreeRow.push(
<div className="cardModuleItem" key={index}>
<div className="cardModuleDetails">
<div className="cardModuleReference">
<b>{t("myportal:case-reference")}:</b>
topthreeRowArr.push(
<>
<div className="cardModuleItem" key={index}>
<div className="cardModuleDetails">
<div className="cardModuleReference">
<b>{t("myportal:temp-reference")}:</b>
<Link
href={
(router.locale == "cy"
? "/fymhorth"
: "/myportal") +
"/" +
urlname +
"?lpa=" +
showTopThreeArr[key][
"_pinswg_associatedlpa_value"
] +
"&apt=" +
showTopThreeArr[key].pinswg_appealcasetype +
"&casereference=" +
showTopThreeArr[key].pinswg_name +
"&inid=" +
showTopThreeArr[key].incidentid
}
className="govuk-link--no-underline"
data-id={index}
onClick={() => {
props.setCurrentReference({
"currentReference":
showTopThreeArr[key].ticketnumber,
<Link
key={"link" + index}
href={
(router.locale == "cy"
? "/fymhorth"
: "/myportal") +
"/" +
urlname +
"?lpa=" +
showTopThreeArr[key][
"_pinswg_associatedlpa_value"
] +
"&apt=" +
showTopThreeArr[key].pinswg_appealcasetype +
"&casereference=" +
showTopThreeArr[key].pinswg_name +
"&inid=" +
showTopThreeArr[key].incidentid
}
className="govuk-link--no-underline"
data-id={index}
onClick={() => {
props.setCurrentReference({
"currentReference":
showTopThreeArr[key].ticketnumber,
"currentType": "awaitingSubmission",
"currentType": "awaitingSubmission",
"incidentid":
showTopThreeArr[key].incidentid,
"incidentid":
showTopThreeArr[key].incidentid,
"appealType":
showTopThreeArr[key]
.pinswg_appealcasetype,
});
}}
>
{showTopThreeArr[index].pinswg_name}
</Link>
</div>
<div>
<b>LPA reference:</b>{" "}
{showTopThreeArr[key].pinswg_lpaapplicationreference}
</div>
<div>
<b>{t("myportal:appeal-type-label")}:</b>{" "}
{
getFormCollectionByID(
showTopThreeArr[key].pinswg_appealcasetype
).value
}
</div>
<div className="carModuleAddress">
<b>{t("myportal:case-address")}:</b>{" "}
{_.isEmpty(showTopThreeArr)
? t("myportal:case-address-not-entered")
: _.isEmpty(showTopThreeArr[index])
? t("myportal:case-address-not-entered")
: _.isEmpty(showTopThreeArr[index])
? t("myportal:case-address-not-entered")
: _.isEmpty(
showTopThreeArr[index].pinswg_siteaddressline1
)
? t("myportal:case-address-not-entered")
: showTopThreeArr[index].pinswg_siteaddressline1 +
(!_.isEmpty(
showTopThreeArr[index].pinswg_siteaddressline2
)
? ", " +
showTopThreeArr[index]
.pinswg_siteaddressline2
: "") +
(!_.isEmpty(
showTopThreeArr[index].pinswg_siteaddresstown
)
? ", " +
showTopThreeArr[index]
.pinswg_siteaddresstown
: "")}
</div>
{showTopThreeArrDets[key].pinswg_appellantagent != null && (
"appealType":
showTopThreeArr[key]
.pinswg_appealcasetype,
});
}}
>
{showTopThreeArr[index].pinswg_name}
</Link>
</div>
<div>
{showTopThreeArrDets[key].pinswg_appellantagent !=
846040000 && (
<b>{t("myportal:raised-by-label")}: </b>
)}
{showTopThreeArrDets[key].pinswg_appellantagent !=
846040000 &&
(showTopThreeArrDets[key]
.pinswg_agentcompanyname != null &&
showTopThreeArrDets[key]
.pinswg_agentcompanyname + ", ") +
showTopThreeArrDets[key]
.pinswg_agentfirstname +
<b>LPA reference:</b>{" "}
{
showTopThreeArr[key]
.pinswg_lpaapplicationreference
}
</div>
<div>
<b>{t("myportal:appeal-type-label")}:</b>{" "}
{
getFormCollectionByID(
showTopThreeArr[key].pinswg_appealcasetype
).value
}
</div>
<div className="carModuleAddress">
<b>{t("myportal:case-address")}:</b>{" "}
{_.isEmpty(showTopThreeArr)
? t("myportal:case-address-not-entered")
: _.isEmpty(showTopThreeArr[index])
? t("myportal:case-address-not-entered")
: _.isEmpty(showTopThreeArr[index])
? t("myportal:case-address-not-entered")
: _.isEmpty(
showTopThreeArr[index]
.pinswg_siteaddressline1
)
? t("myportal:case-address-not-entered")
: showTopThreeArr[index]
.pinswg_siteaddressline1 +
(!_.isEmpty(
showTopThreeArr[index]
.pinswg_siteaddressline2
)
? ", " +
showTopThreeArr[index]
.pinswg_siteaddressline2
: "") +
(!_.isEmpty(
showTopThreeArr[index]
.pinswg_siteaddresstown
)
? ", " +
showTopThreeArr[index]
.pinswg_siteaddresstown
: "")}
</div>
{showTopThreeArrDets[key].pinswg_appellantagent !=
null && (
<div>
{showTopThreeArrDets[key]
.pinswg_appellantagent != 846040000 && (
<b>{t("myportal:raised-by-label")}: </b>
)}
{showTopThreeArrDets[key]
.pinswg_appellantagent != 846040000 &&
(showTopThreeArrDets[key]
.pinswg_agentcompanyname != null &&
showTopThreeArrDets[key]
.pinswg_agentcompanyname + ", ") +
showTopThreeArrDets[key]
.pinswg_agentfirstname +
" " +
showTopThreeArrDets[key]
.pinswg_agentlastname}
</div>
)}
{showTopThreeArrDets[key].pinswg_appellantfirstname !=
null && (
<div>
<b>{t("myportal:on-behalf-of-label")}: </b>
{showTopThreeArrDets[key]
.pinswg_appellantfirstname +
" " +
showTopThreeArrDets[key]
.pinswg_agentlastname}
</div>
)}
{showTopThreeArrDets[key].pinswg_appellantfirstname !=
null && (
<div>
<b>{t("myportal:on-behalf-of-label")}: </b>
{showTopThreeArrDets[key]
.pinswg_appellantfirstname +
" " +
showTopThreeArrDets[key]
.pinswg_appellantlastname}
</div>
)}
{router.locale == "cy"
? jsonpath(
'$..[?(@.value=="' +
showTopThreeArrDets[key]["pinswg_lpaname"] +
'")].value_cy',
transLookup
)
: showTopThreeArrDets[key]["pinswg_lpaname"] || ""}
.pinswg_appellantlastname}
</div>
)}
{router.locale == "cy"
? jsonpath(
'$..[?(@.value=="' +
showTopThreeArrDets[key][
"pinswg_lpaname"
] +
'")].value_cy',
transLookup
)
: showTopThreeArrDets[key]["pinswg_lpaname"] || ""}
<div className="cardModuleReference">
<b>{t("myportal:date-raised")}:</b>
{" "}
{raisedDate(showTopThreeArrDets[key].createdon)}
</div>{" "}
</div>
<div className="">
<button
title={t("case:do-you-want-to-delete-case-label")}
className=" cardModuleRemoveCase govuk-link govuk-link--no-underline govuk-link--inverse "
onClick={() => {
confirm(
t("case:do-you-want-to-delete-case-label") +
showTopThreeArr[key].pinswg_name +
"?\n" +
t(
"case:do-you-want-to-delete-case-disclaimer-label"
)
) &&
deleteCaseItem(
props.containerID,
showTopThreeArr[key].pinswg_name
);
}}
>
&mdash;
</button>
</div>
</div>
<div className="">
<button
title={t("case:do-you-want-to-delete-case-label")}
className=" cardModuleRemoveCase govuk-link govuk-link--no-underline govuk-link--inverse "
onClick={() => {
confirm(
t("case:do-you-want-to-delete-case-label") +
showTopThreeArr[key].pinswg_name +
"?\n" +
t(
"case:do-you-want-to-delete-case-disclaimer-label"
)
) &&
deleteCaseItem(
props.containerID,
showTopThreeArr[key].pinswg_name
);
}}
>
&mdash;
</button>
</div>
</div>
</>
);
});
const TopThreeRow = () => {
return (
<div
className="cardModuleContainer"
key={"cttr_" + Math.floor(Math.random() * 5)}
>
{topthreeRowArr}
</div>
);
};
return (
<div className="card" id="awaiting-submission-card">
<div
className="card"
id="awaiting-submission-card"
key="awaiting-submission-card"
>
<div className="card-body">
<h3 className="heading-small card-heading">
{t("myportal:awatitingsubmission-card-title")}
</h3>
<div className="cardModuleContainer">
{topthreeRow}
{/* <TopThree
<TopThreeRow key={"ttr_" + Math.floor(Math.random() * 5)} />
{/* <TopThree
showTopThree={props.awaitingSubmissionFromBlob}
showDetails={props.awaitingSubmissionFromBlob}
topThreeType={"awaitingSubmissionFromBlob"}
/> */}
</div>
{props.awaitingSubmissionFromBlob["@odata.count"] > 3 && (
<div className="cardVieAll">
<Link
+21 -3
View File
@@ -46,6 +46,22 @@ const TopThree = (props) => {
let showTopThreeArr = showTopThree.value;
Object.keys(showTopThreeArr).map((key, index) => {
let createdDate = parseInt(showTopThreeArr[key].createdon);
showTopThreeArr[key].createdDate = createdDate;
});
showTopThreeArr.sort(function compare(a, b) {
var dateA = new Date(a.createdDate);
var dateB = new Date(b.createdDate);
return dateB - dateA;
});
const raisedDate = (datePart) => {
var dateObj = new Date(datePart);
return dateObj.toLocaleString();
};
const deleteItem = (caseID, topThreeType) => {
let cookies = parseCookies();
//console.log("sssss", caseID, topThreeType);
@@ -209,7 +225,6 @@ const TopThree = (props) => {
]}{" "}
</Link>
</div>
{/* {(topThreeType == "awaitingSubmission" ||
topThreeType == "watchedCases") && ( */}
<div>
@@ -254,7 +269,6 @@ const TopThree = (props) => {
.pinswg_siteaddresstown
: "")}
</div>
{showTopThreeArr[key].pinswg_appellantagent != null && (
<div>
{showTopThreeArr[key].pinswg_appellantagent !=
@@ -280,7 +294,6 @@ const TopThree = (props) => {
showTopThreeArr[key].pinswg_appellantlastname}
</div>
)}
{router.locale == "cy"
? jsonpath(
'$..[?(@.value=="' +
@@ -300,6 +313,11 @@ const TopThree = (props) => {
) : (
""
)}
<div className="cardModuleReference">
<b>{t("myportal:date-raised")}:</b>
{" "}
{raisedDate(showTopThreeArr[key].createdon)}
</div>{" "}
</div>
{topThreeType == "watchedCases" && (
<div className="">
+1
View File
@@ -19,6 +19,7 @@
"myrepresentations-card-title": "Cyflwyniadau'r achos",
"watchedcases-card-title": "Achosion a gwylio",
"case-reference": "Cyfeirnod achos",
"temp-reference": "Cyfeirnod Dros Dro",
"case-address": "Cyfeiriad",
"case-address-not-entered": "heb ei nodi",
"yourdetails-card-title": "Eich manylion",
+1
View File
@@ -19,6 +19,7 @@
"myrepresentations-card-title": "My representations",
"watchedcases-card-title": "Watched cases",
"case-reference": "Case reference",
"temp-reference": "Temporary reference",
"case-address": "Address",
"case-address-not-entered": "not entered",
"yourdetails-card-title": "Your details",
+3 -1
View File
@@ -249,7 +249,7 @@ const authOptions = (locale, req, res) => {
};
};
export default (req, res) => {
const NextAuthPEDW = (req, res) => {
//console.log("----------", authOptions(req.cookies["pedw_locale"]));
//console.log("----------",
@@ -259,3 +259,5 @@ export default (req, res) => {
authOptions(req.cookies["pedw_locale"], req, res)
);
};
export default NextAuthPEDW;