/** * @swagger * /api/endpoint/getwatchedcasesproxy_api: * get: * tags: [Portal] * description: Get my watched cases * summary: Phase 2 * parameters: * - name: loggedInUserId * 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 { azureHeaders, consoleLogger, getToken } from "../../../actions"; 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; }; const BASE_URL = process.env.API_ROOT || `http://localhost:${port}`; export default async function ApiProxy(req, res) { var loggedInUserId = req.query.loggedInUserId; var token = await getToken(); // var queryUrl = // "pinswg_watchlists?$filter= _pinswg_contact_value eq " + // loggedInUserId + // "&$select=pinswg_emailnotifications,modifiedon,pinswg_appealcasetype,pinswg_watchlistid,_pinswg_watchedcase_value,statuscode,pinswg_representationsubmitted,pinswg_representationtype&$count=true&$orderby=createdon desc&$expand=pinswg_WatchedCase($select=pinswg_AssociatedLPA)"; var queryUrl = "pinswg_watchlists?$filter= _pinswg_contact_value eq " + loggedInUserId + "&$select=modifiedon,pinswg_appealcasetype,pinswg_watchlistid,_pinswg_watchedcase_value,statuscode,pinswg_representationsubmitted,pinswg_representationtype&$count=true&$orderby=createdon desc&$expand=pinswg_WatchedCase($select=pinswg_AssociatedLPA)"; return axios .get( WEBAPI_URL + queryUrl + hashAPIPath(queryUrl), azureHeaders(token.access_token) ) .then(({ data }) => { data.value.forEach(function (element) { element.ticketnumber = element.pinswg_WatchedCase.ticketnumber; element.pinswg_title = element[ "_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue" ]; element[ "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue" ] = element.pinswg_WatchedCase[ "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue" ]; element._pinswg_associatedlpa_value = element.pinswg_WatchedCase._pinswg_associatedlpa_value; element[ "_ownerid_value@OData.Community.Display.V1.FormattedValue" ] = element.pinswg_WatchedCase[ "_ownerid_value@OData.Community.Display.V1.FormattedValue" ]; element._ownerid_value = element.pinswg_WatchedCase._ownerid_value; delete element.pinswg_WatchedCase; }); res.status(200).json(data); }) .catch((error) => { consoleLogger(error); res.status(400).json(error); }); }