Merged PR 2476: added check for inactive case deadlines

added check for inactive case deadlines

Related work items: #24297
This commit is contained in:
Robert Bond
2026-07-15 12:41:10 +00:00
parent b00a2c0733
commit 95486f0164
4 changed files with 50 additions and 35 deletions
@@ -233,35 +233,41 @@ const RepCompleteSubmit = (props) => {
let filterFiles = [];
function showRepsEnded(endDate) {
let date = new Date();
date = new Date(date.toDateString());
let end = new Date(endDate);
end.setUTCHours(23);
end.setUTCMinutes(59);
end.setUTCSeconds(59);
end.toISOString();
if (!endDate) {
return false;
}
return end > date ? false : true;
const end = new Date(endDate);
if (Number.isNaN(end.getTime())) {
return false;
}
const today = new Date();
today.setHours(0, 0, 0, 0);
end.setHours(23, 59, 59, 999);
return end <= today;
}
const checkRepDatePassed = () => {
if (repFormData.representationType == "Questionnaire") {
if (repFormData.representationType === "Questionnaire") {
return false;
} else {
if (repFormData.representationType == "Final comments") {
return repFormData.hasOwnProperty(
"pinswg_finalcommentsduedate"
) && showRepsEnded(repFormData.pinswg_finalcommentsduedate)
? true
: false;
}
if (repFormData.representationType == "Statement") {
return repFormData.hasOwnProperty("pinswg_statementduedate") &&
showRepsEnded(repFormData.pinswg_statementduedate)
? true
: false;
}
}
if (repFormData.representationType === "Final comments") {
return showRepsEnded(repFormData.pinswg_finalcommentsduedate);
}
if (repFormData.representationType === "Statement") {
return (
showRepsEnded(repFormData.pinswg_statementduedate) ||
showRepsEnded(repFormData.pinswg_endofrepresentationperiod)
);
}
return false;
};
const triggerQuestionnaireDownload = async () => {
+19 -10
View File
@@ -31,14 +31,17 @@ const Pinswg_sipscase = (props) => {
);
}
const extensions =
detailsObj.pinswg_CaseDeadlineExtension_pinswg_sips || [];
const activeExtensions = (
detailsObj.pinswg_CaseDeadlineExtension_pinswg_sips || []
).filter((extension) => extension.statecode === 0);
const latest = extensions.sort(
(a, b) =>
new Date(b.pinswg_newcasedeadline) -
new Date(a.pinswg_newcasedeadline)
)[0];
const latestExtension = activeExtensions
.filter((extension) => !_.isEmpty(extension.pinswg_newcasedeadline))
.sort(
(a, b) =>
new Date(b.pinswg_newcasedeadline) -
new Date(a.pinswg_newcasedeadline)
)[0];
const projectTypes = Array.isArray(
detailsObj.pinswg_sips_pinswg_sipsprojecttype
@@ -398,6 +401,7 @@ const Pinswg_sipscase = (props) => {
)
}
/>
<SummaryRow
label={t(
"case:summary-case-deadline-label"
@@ -407,12 +411,17 @@ const Pinswg_sipscase = (props) => {
"case:summary-awaiting-information-label"
);
const extensions =
const activeExtensions = (
detailsObj.pinswg_CaseDeadlineExtension_pinswg_sips ||
[];
[]
).filter(
(extension) =>
extension.statecode ===
0
);
const latestExtension =
extensions
activeExtensions
.filter(
(extension) =>
!_.isEmpty(
@@ -88,7 +88,7 @@ export default async function ApiProxy(req, res) {
navigationProperty +
"($select=ticketnumber,statuscode)" +
(primaryIdAttribute == "pinswg_sipscase"
? ",pinswg_sipscase($select=ticketnumber),pinswg_CaseDeadlineExtension_pinswg_sips($select=pinswg_casedeadlineextensionid,pinswg_noofdaysextended,pinswg_reasonforextension,pinswg_agreedorimposedextension,pinswg_newcasedeadline),pinswg_sips_pinswg_sipsevent($select=pinswg_enddateofevent,pinswg_eventpublishflag,pinswg_linktotheevent,pinswg_linktotheeventstreamwelsh,pinswg_name,pinswg_dateeventrequested,pinswg_typeofevent,createdon,modifiedon),pinswg_sips_pinswg_sipsprojecttype($select=pinswg_sipsprojecttypeid,pinswg_name,_pinswg_sector_value)"
? ",pinswg_sipscase($select=ticketnumber),pinswg_CaseDeadlineExtension_pinswg_sips($select=statecode,pinswg_casedeadlineextensionid,pinswg_noofdaysextended,pinswg_reasonforextension,pinswg_agreedorimposedextension,pinswg_newcasedeadline),pinswg_sips_pinswg_sipsevent($select=pinswg_enddateofevent,pinswg_eventpublishflag,pinswg_linktotheevent,pinswg_linktotheeventstreamwelsh,pinswg_name,pinswg_dateeventrequested,pinswg_typeofevent,createdon,modifiedon),pinswg_sips_pinswg_sipsprojecttype($select=pinswg_sipsprojecttypeid,pinswg_name,_pinswg_sector_value)"
: "");
queryUrl = queryUrl + getSelectQuery(appealTypeName);
@@ -88,7 +88,7 @@ export default async function ApiProxy(req, res) {
navigationProperty +
"($select=ticketnumber,statuscode)" +
(primaryIdAttribute == "pinswg_sipscase"
? ",pinswg_sipscase($select=ticketnumber),pinswg_CaseDeadlineExtension_pinswg_sips($select=pinswg_casedeadlineextensionid,pinswg_noofdaysextended,pinswg_reasonforextension,pinswg_agreedorimposedextension,pinswg_newcasedeadline),pinswg_sips_pinswg_sipsevent($select=pinswg_enddateofevent,pinswg_eventpublishflag,pinswg_linktotheevent,pinswg_linktotheeventstreamwelsh,pinswg_name,pinswg_dateeventrequested,pinswg_typeofevent,createdon,modifiedon)"
? ",pinswg_sipscase($select=ticketnumber),pinswg_CaseDeadlineExtension_pinswg_sips($select=statecode,pinswg_casedeadlineextensionid,pinswg_noofdaysextended,pinswg_reasonforextension,pinswg_agreedorimposedextension,pinswg_newcasedeadline),pinswg_sips_pinswg_sipsevent($select=pinswg_enddateofevent,pinswg_eventpublishflag,pinswg_linktotheevent,pinswg_linktotheeventstreamwelsh,pinswg_name,pinswg_dateeventrequested,pinswg_typeofevent,createdon,modifiedon)"
: "");
queryUrl =