my cases portal module by loggedin user
This commit is contained in:
@@ -21,6 +21,7 @@ const CaseSummary = (props) => {
|
||||
<div className="govuk-grid-column-full">
|
||||
<Summary
|
||||
myCases={props.myCases}
|
||||
myCasesDetails={props.myCasesDetails}
|
||||
myRepresentations={props.myRepresentations}
|
||||
watchedCases={props.watchedCases}
|
||||
awaitingSubmission={props.awaitingSubmission}
|
||||
|
||||
@@ -21,6 +21,7 @@ const CaseSummary = (props) => {
|
||||
} = props;
|
||||
|
||||
let setCaseQueryObj = props[currentType];
|
||||
let setCaseDetailsObj = props[currentType][currentType + "Details"];
|
||||
|
||||
var casesObj = {};
|
||||
|
||||
@@ -38,10 +39,15 @@ const CaseSummary = (props) => {
|
||||
|
||||
var detailsObj = {};
|
||||
|
||||
detailsObj = jsonpath.query(
|
||||
searchDetailsObj,
|
||||
'$..[?(@.pinswg_name=="' + caseReference + '")]'
|
||||
);
|
||||
currentType == "searchResultsObj"
|
||||
? (detailsObj = jsonpath.query(
|
||||
searchDetailsObj,
|
||||
'$..[?(@.pinswg_name=="' + caseReference + '")]'
|
||||
))
|
||||
: (detailsObj = jsonpath.query(
|
||||
setCaseDetailsObj,
|
||||
'$..[?(@.pinswg_name=="' + caseReference + '")]'
|
||||
));
|
||||
|
||||
detailsObj = detailsObj[0];
|
||||
return (
|
||||
@@ -61,11 +67,9 @@ const CaseSummary = (props) => {
|
||||
{t("case:summary-applicant-label")}
|
||||
</dt>
|
||||
<dd className="govuk-summary-list__value">
|
||||
{
|
||||
detailsObj[
|
||||
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
|
||||
]
|
||||
}
|
||||
{detailsObj[
|
||||
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
|
||||
] || "not entered"}
|
||||
</dd>
|
||||
</div>
|
||||
<div className="govuk-summary-list__row">
|
||||
|
||||
@@ -20,6 +20,7 @@ const MyCases = (props) => {
|
||||
<div className="cardModuleContainer">
|
||||
<TopThree
|
||||
showTopThree={props.myCases.myCases}
|
||||
showDetails={props.myCases.myCasesDetails}
|
||||
topThreeType={"myCases"}
|
||||
/>
|
||||
</div>
|
||||
|
||||
+120
-50
@@ -1,4 +1,5 @@
|
||||
import Link from "next/link";
|
||||
import _ from "lodash";
|
||||
import { useRouter } from "next/router";
|
||||
import useTranslation from "next-translate/useTranslation";
|
||||
import { setCurrentReference } from "../../store/currentView/action";
|
||||
@@ -6,65 +7,134 @@ import { connect } from "react-redux";
|
||||
|
||||
const TopThree = (props) => {
|
||||
let { t } = useTranslation();
|
||||
const { showTopThree, setCurrentReference, topThreeType } = props;
|
||||
const { showTopThree, showDetails, setCurrentReference, topThreeType } =
|
||||
props;
|
||||
|
||||
const router = useRouter();
|
||||
const { locale } = router;
|
||||
|
||||
let topthreeRow = [];
|
||||
|
||||
for (var i = 0; i < 3; i++) {
|
||||
(function (i) {
|
||||
topthreeRow.push(
|
||||
<div className="cardModuleItem" key={i}>
|
||||
<div className="cardModuleDetails">
|
||||
<div className="cardModuleReference">
|
||||
<b>Case reference:</b>{" "}
|
||||
<Link
|
||||
href={
|
||||
topThreeType == "awaitingSubmission"
|
||||
? "/representation"
|
||||
: "/case"
|
||||
}
|
||||
>
|
||||
<a
|
||||
data-id={i}
|
||||
onClick={() => {
|
||||
setCurrentReference({
|
||||
"currentReference":
|
||||
showTopThree.value[i]
|
||||
.ticketnumber,
|
||||
"currentType": topThreeType,
|
||||
});
|
||||
}}
|
||||
>
|
||||
{showTopThree.value[i].ticketnumber}
|
||||
</a>
|
||||
</Link>
|
||||
</div>
|
||||
{topThreeType != "awaitingSubmission" ? (
|
||||
<div className="carModuleAddress">
|
||||
<b>Address: </b>
|
||||
{showTopThree.value[i].address1}
|
||||
</div>
|
||||
) : (
|
||||
""
|
||||
)}
|
||||
// for (var i = 0; i < 3; i++) {
|
||||
// (function (i) {
|
||||
// topthreeRow.push(
|
||||
// <div className="cardModuleItem" key={i}>
|
||||
// <div className="cardModuleDetails">
|
||||
// <div className="cardModuleReference">
|
||||
// <b>Case reference:</b>{" "}
|
||||
// <Link
|
||||
// href={
|
||||
// topThreeType == "awaitingSubmission"
|
||||
// ? "/representation"
|
||||
// : "/case"
|
||||
// }
|
||||
// >
|
||||
// <a
|
||||
// data-id={i}
|
||||
// onClick={() => {
|
||||
// setCurrentReference({
|
||||
// "currentReference":
|
||||
// showTopThree.value[i]
|
||||
// .ticketnumber,
|
||||
// "currentType": topThreeType,
|
||||
// });
|
||||
// }}
|
||||
// >
|
||||
// {showTopThree.value[i].ticketnumber}
|
||||
// </a>
|
||||
// </Link>
|
||||
// </div>
|
||||
// {topThreeType != "awaitingSubmission" ? (
|
||||
// <div className="carModuleAddress">
|
||||
// <b>Addressaa: </b>
|
||||
// {showDetails[i].value[0]
|
||||
// .pinswg_siteaddressline1 == null
|
||||
// ? "not entered"
|
||||
// : showDetails[i].value[0]
|
||||
// .pinswg_siteaddressline1}
|
||||
// </div>
|
||||
// ) : (
|
||||
// ""
|
||||
// )}
|
||||
|
||||
{topThreeType == "awaitingSubmission" ? (
|
||||
<div className="carModuleAddress">
|
||||
Make Representation on Case Incomplete, not
|
||||
submitted
|
||||
</div>
|
||||
) : (
|
||||
""
|
||||
)}
|
||||
// {topThreeType == "awaitingSubmission" ? (
|
||||
// <div className="carModuleAddress">
|
||||
// Make Representation on Case Incomplete, not
|
||||
// submitted
|
||||
// </div>
|
||||
// ) : (
|
||||
// ""
|
||||
// )}
|
||||
// </div>
|
||||
// <div className="cardModuleRemoveCase"> —</div>
|
||||
// </div>
|
||||
// );
|
||||
// })(i);
|
||||
// }
|
||||
|
||||
let showTopThreeArr = showTopThree.value;
|
||||
|
||||
Object.keys(showTopThreeArr).map((key, index) => {
|
||||
topthreeRow.push(
|
||||
<div className="cardModuleItem" key={index}>
|
||||
<div className="cardModuleDetails">
|
||||
<div className="cardModuleReference">
|
||||
<b>Case reference:</b>{" "}
|
||||
<Link
|
||||
href={
|
||||
topThreeType == "awaitingSubmission"
|
||||
? "/representation"
|
||||
: "/case"
|
||||
}
|
||||
>
|
||||
<a
|
||||
data-id={index}
|
||||
onClick={() => {
|
||||
setCurrentReference({
|
||||
"currentReference":
|
||||
showTopThreeArr[key].ticketnumber,
|
||||
"currentType": topThreeType,
|
||||
});
|
||||
}}
|
||||
>
|
||||
{showTopThreeArr[key].ticketnumber}
|
||||
</a>
|
||||
</Link>
|
||||
</div>
|
||||
<div className="cardModuleRemoveCase"> —</div>
|
||||
{topThreeType != "awaitingSubmission" ? (
|
||||
<div className="carModuleAddress">
|
||||
<b>Addressa:</b>{" "}
|
||||
{_.isEmpty(showDetails)
|
||||
? "not entered"
|
||||
: _.isEmpty(showDetails[index])
|
||||
? "not entered"
|
||||
: _.isEmpty(showDetails[index].value[0])
|
||||
? "not entered"
|
||||
: _.isEmpty(
|
||||
showDetails[index].value[0]
|
||||
.pinswg_siteaddressline1
|
||||
)
|
||||
? "not entered"
|
||||
: showDetails[index].value[0]
|
||||
.pinswg_siteaddressline1}
|
||||
</div>
|
||||
) : (
|
||||
""
|
||||
)}
|
||||
|
||||
{topThreeType == "awaitingSubmission" ? (
|
||||
<div className="carModuleAddress">
|
||||
Make Representation on Case Incomplete, not
|
||||
submitted
|
||||
</div>
|
||||
) : (
|
||||
""
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
})(i);
|
||||
}
|
||||
<div className="cardModuleRemoveCase"> —</div>
|
||||
</div>
|
||||
);
|
||||
});
|
||||
|
||||
return <>{topthreeRow}</>;
|
||||
};
|
||||
|
||||
@@ -26,6 +26,10 @@ let CompleteAppeal = (props) => {
|
||||
"Ids";
|
||||
|
||||
Object.assign(updateBody, {
|
||||
"pinswg_Appellant@odata.bind":
|
||||
"/contacts(" + props.props.accountDetails.loggedinUserId + ")",
|
||||
"pinswg_AssociatedLPA@odata.bind":
|
||||
"/accounts(" + props.appealType.appealLPA + ")",
|
||||
"pinswg_name": props.appealType.caseReference.ticketnumber,
|
||||
[updateBindAppealTypeToIncident + "@odata.bind"]:
|
||||
"/incidents(" + incidentId + ")",
|
||||
|
||||
@@ -7,6 +7,8 @@ import BuildRow from "./buildrow";
|
||||
import { reduxForm, formValueSelector, Field } from "redux-form";
|
||||
import { useDispatch, useSelector, shallowEqual, connect } from "react-redux";
|
||||
import jsonpath from "jsonpath";
|
||||
|
||||
import data from "../../data/collections.json";
|
||||
import {
|
||||
setAppealType,
|
||||
setAppealTypeTitle,
|
||||
@@ -174,7 +176,7 @@ let CreateCase = (props) => {
|
||||
"," +
|
||||
optionsObj[key].value
|
||||
.replace(
|
||||
/[\s\-\+\(\)\,]/g,
|
||||
/(\band|[\s\-\+\(\)\,\&])/g,
|
||||
""
|
||||
)
|
||||
.toLowerCase()
|
||||
@@ -201,11 +203,33 @@ let CreateCase = (props) => {
|
||||
|
||||
const required = (value) => (value ? undefined : "Required");
|
||||
|
||||
const getFormCollection = (formtype) => {
|
||||
formtype =
|
||||
"pinswg_" +
|
||||
(formtype.length > 39 ? formtype.slice(0, 39) : formtype);
|
||||
|
||||
const collectionName = jsonpath.query(
|
||||
data,
|
||||
"$..[?(@.LogicalName=='" + formtype + "')].UrlName"
|
||||
);
|
||||
//console.log(collectionName[0]);
|
||||
return collectionName[0];
|
||||
};
|
||||
|
||||
const onHandleSubmit = (values) => {
|
||||
event.preventDefault();
|
||||
|
||||
var appTypeCollection = values.appealTypes.split(",")[1];
|
||||
|
||||
appTypeCollection = getFormCollection(
|
||||
appTypeCollection.length > 39
|
||||
? appTypeCollection.slice(0, 39)
|
||||
: appTypeCollection
|
||||
);
|
||||
|
||||
router.replace(
|
||||
"/newappeal/" +
|
||||
values.appealTypes.split(",")[1] +
|
||||
appTypeCollection +
|
||||
"?lpa=" +
|
||||
values.lpaTypes +
|
||||
"&apt=" +
|
||||
|
||||
Reference in New Issue
Block a user