update lpa portal

This commit is contained in:
2023-07-27 12:46:02 +01:00
parent 3ff708737c
commit daa8b1c96d
5 changed files with 198 additions and 106 deletions
+1 -1
View File
@@ -583,7 +583,7 @@ export const getPickLists = (whichForm) => {
}; };
export const getPersonalAccount = (contactid) => { export const getPersonalAccount = (contactid) => {
//console.log(contactid); console.log(contactid);
return axios return axios
.get( .get(
BASE_URL + BASE_URL +
+14 -7
View File
@@ -109,7 +109,7 @@ const MyPortal = (props) => {
<h2 className="heading-small card-heading"> <h2 className="heading-small card-heading">
{ {
props.accountDetails.accountDetails[ props.accountDetails.accountDetails[
"pinswg_typeofinvolvement@OData.Community.Display.V1.FormattedValue" "pinswg_contact_associatedlpa@OData.Community.Display.V1.FormattedValue"
] ]
}{" "} }{" "}
LPA Portal LPA Portal
@@ -121,7 +121,7 @@ const MyPortal = (props) => {
<div className="govuk-grid-row"> <div className="govuk-grid-row">
<div className="govuk-grid-column-full"> <div className="govuk-grid-column-full">
<div className="flex-container grid-row govuk-body "> <div className="flex-container grid-row govuk-body ">
<MakeNewAppeal /> {isLPA ? "" : <MakeNewAppeal />}
<SearchCases /> <SearchCases />
{/* {props.awaitingSubmission.awaitingSubmission[ {/* {props.awaitingSubmission.awaitingSubmission[
"@odata.count" "@odata.count"
@@ -132,9 +132,12 @@ const MyPortal = (props) => {
} }
/> />
)} */} )} */}
{props.awaitingSubmission {isLPA
.awaitingSubmissionFromBlob["@odata.count"] > ? ""
0 && ( : props.awaitingSubmission
.awaitingSubmissionFromBlob[
"@odata.count"
] > 0 && (
<AwaitingSubmissionFromBlob <AwaitingSubmissionFromBlob
containerID={props.containerID} containerID={props.containerID}
awaitingSubmissionFromBlob={ awaitingSubmissionFromBlob={
@@ -152,11 +155,15 @@ const MyPortal = (props) => {
watchedCases={props.watchedCases} watchedCases={props.watchedCases}
/> />
)} )}
{props.myRepresentations.myRepresentations[ {isLPA
? ""
: props.myRepresentations.myRepresentations[
"@odata.count" "@odata.count"
] > 0 && ( ] > 0 && (
<MyRepresentations <MyRepresentations
myRepresentations={props.myRepresentations} myRepresentations={
props.myRepresentations
}
/> />
)} )}
{isLPA ? "" : <Dns />} {isLPA ? "" : <Dns />}
+4 -1
View File
@@ -9,9 +9,12 @@
"start": "node_modules/next/dist/bin/next start", "start": "node_modules/next/dist/bin/next start",
"lint": "next lint" "lint": "next lint"
}, },
"browser": {
"child_process": false
},
"dependencies": { "dependencies": {
"@auth/prisma-adapter": "^1.0.1", "@auth/prisma-adapter": "^1.0.1",
"@azure/identity": "^3.1.3", "@azure/identity": "^3.2.4",
"@azure/storage-blob": "^12.12.0", "@azure/storage-blob": "^12.12.0",
"@azure/storage-queue": "^12.11.0", "@azure/storage-queue": "^12.11.0",
"@next-auth/prisma-adapter": "^1.0.4", "@next-auth/prisma-adapter": "^1.0.4",
+78
View File
@@ -0,0 +1,78 @@
/**
* @swagger
* /api/endpoint/getmylpacases_api:
* get:
* tags: [Portal]
* description: Get My LPA Cases
* summary: Phase 2
* parameters:
* - name: lpaid
* in: query
* required: true
* example: 726158c6-708d-ec11-aad8-00224800be9c
* schema:
* type: string
* responses:
* 200:
* description: Success
*/
import axios from "axios";
import CryptoJS from "crypto-js";
import { getToken, azureHeaders, consoleLogger } from "../../../actions";
import jsonpath from "jsonpath";
const WORDKEY = process.env.HASHKEY;
const WEBAPI_URL =
process.env.RELAY_ROOT ||
"https://dev-pedw-ns.servicebus.windows.net/dev-pedw-hc/";
const hashAPIPath = (queryPath) => {
var hashlink = CryptoJS.HmacSHA256(
queryPath,
CryptoJS.enc.Hex.parse(WORDKEY)
);
hashlink = hashlink.toString(CryptoJS.enc.Hex);
return (queryPath.indexOf("?") > -1 ? "&hash=" : "?hash=") + hashlink;
};
export default async function ApiProxy(req, res) {
var lpaid = req.query.lpaid;
var token = await getToken();
const lpaList = await getLPA();
const lpaGUID = jsonpath.query(lpaList, '$..[?(@.name="' + lpaid + '")]');
console.log(
'$..[?(@.name="' + lpaid + '")]',
lpaList,
lpaid,
"LPAGUID=",
lpaGUID
);
var queryUrl =
"incidents?$select=description,numberofchildincidents,_accountid_value,_customerid_value,_pinswg_associatedlpa_value,_ownerid_value,pinswg_appealcasetype,statuscode,ticketnumber,title, _primarycontactid_value,pinswg_appellantlastname,pinswg_appellantfirstname,pinswg_appellantagent,pinswg_agentfirstname,pinswg_agentlastname,pinswg_agentcompanyname&$expand=primarycontactid($select=fullname)&$filter=_pinswg_associatedlpa_value eq " +
lpaGUID[0].accountid +
" and servicestage eq 0 and pinswg_appealcasetype ne null&$orderby=createdon desc&$count=true";
//console.log("///////////\nPortal query: ", queryUrl, "<<<<end query");
return axios
.get(
WEBAPI_URL + queryUrl + hashAPIPath(queryUrl),
azureHeaders(token.access_token)
)
.then(({ data }) => {
data.value.forEach(function (element) {
element.pinswg_title = element.title;
});
res.status(200).json(data);
})
.catch((err) => {
console.log(consoleLogger(err));
res.status(400).json(err);
});
}
+9 -5
View File
@@ -9,7 +9,7 @@ import {
getAwaitingSubmissionFromBlob, getAwaitingSubmissionFromBlob,
getAwaitingSubmission, getAwaitingSubmission,
getMyCases, getMyCases,
getLPACases, getMyLPACases,
getMyRepresentations, getMyRepresentations,
getPersonalAccount, getPersonalAccount,
getPortalModuleDetails, getPortalModuleDetails,
@@ -188,9 +188,12 @@ export const getServerSideProps = wrapper.getServerSideProps(
const accountDetails = await getPersonalAccount(loggedInUser); const accountDetails = await getPersonalAccount(loggedInUser);
const lpaid = accountDetails( console.log("----------", accountDetails);
const lpaid =
accountDetails[
"pinswg_typeofinvolvement@OData.Community.Display.V1.FormattedValue" "pinswg_typeofinvolvement@OData.Community.Display.V1.FormattedValue"
); ];
const [ const [
myCases, myCases,
@@ -201,8 +204,8 @@ export const getServerSideProps = wrapper.getServerSideProps(
] = await Promise.all([ ] = await Promise.all([
accountDetails.pinswg_typeofinvolvment == 846040012 accountDetails.pinswg_typeofinvolvment == 846040012
? await getMyLPACases(lpaid) ? await getMyLPACases(lpaid)
: await getMyCases(loggedinUser), : await getMyCases(loggedInUser),
await getMyCases(loggedInUser),
await getRepsFromBlob(thisSession.user.id), await getRepsFromBlob(thisSession.user.id),
await getWatchedCases(loggedInUser), await getWatchedCases(loggedInUser),
await getAwaitingSubmission(loggedInUser), await getAwaitingSubmission(loggedInUser),
@@ -297,6 +300,7 @@ const getDetails = (resultsObj, detailsType) => {
resultsObj = resultsObj.value; resultsObj = resultsObj.value;
if (detailsType == "myRepresentations") { if (detailsType == "myRepresentations") {
const repsObj = resultsObj.map((searchDetail, index) => { const repsObj = resultsObj.map((searchDetail, index) => {
console.log(".......... ", searchDetail);
detailsArr.push( detailsArr.push(
getCase(searchDetail["incidentID"]).then((data) => { getCase(searchDetail["incidentID"]).then((data) => {
let caseID = ""; let caseID = "";