From cccd025a242bbbc0abda9ebbb9b8615e3f3ab7cd Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Tue, 20 Sep 2022 15:30:32 -0700 Subject: [PATCH] Resolve PPG data pump issue. --- server/mixdata/mixdata.js | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/server/mixdata/mixdata.js b/server/mixdata/mixdata.js index 5d52f4e5b..a0d5141f3 100644 --- a/server/mixdata/mixdata.js +++ b/server/mixdata/mixdata.js @@ -24,9 +24,8 @@ exports.mixdataUpload = async (req, res) => { }); try { - req.files.forEach(async (element) => { + for (const element of req.files) { const b = Buffer.from(element.buffer); - console.log(b.toString()); const inboundRequest = await xml2js.parseStringPromise(b.toString(), { explicitArray: false, @@ -59,23 +58,24 @@ exports.mixdataUpload = async (req, res) => { ScaleType, jobHash ); - + const foundJobs = MixDataArray.filter((m) => m.jobid); const MixDataQuery = ` mutation UPSERT_MIXDATA{ - ${MixDataArray.map((md, idx) => - GenerateGqlForMixData(md, idx) - ).join(" ")} + ${foundJobs + .map((md, idx) => GenerateGqlForMixData(md, idx)) + .join(" ")} } `; - - const resp = await client.request(MixDataQuery); + if (foundJobs.length > 1) { + const resp = await client.request(MixDataQuery); + } //Process the list of ROs and return an object to generate the queries. } - }); + } res.sendStatus(200); } catch (error) { - res.status(500).JSON(error); + res.status(500).json(error); logger.log("job-mixdata-upload-error", "ERROR", null, null, { error: error.message, ...error, @@ -98,7 +98,7 @@ function DetermineScaleType(inboundRequest) { function GetListOfRos(inboundRequest, ScaleType) { if (ScaleType.company === "PPG" && ScaleType.version === "1.3.0") { - return inboundRequest.PPG.DataExportInterface.ROData.RepairOrders.RO.map( + return inboundRequest.PPG.MixDataInterface.ROData.RepairOrders.RO.map( (r) => r.RONumber ); } @@ -106,11 +106,11 @@ function GetListOfRos(inboundRequest, ScaleType) { function GenerateMixDataArray(inboundRequest, ScaleType, jobHash) { if (ScaleType.company === "PPG" && ScaleType.version === "1.3.0") { - return inboundRequest.PPG.DataExportInterface.ROData.RepairOrders.RO.map( + return inboundRequest.PPG.MixDataInterface.ROData.RepairOrders.RO.map( (r) => { return { - jobid: jobHash[r.RONumber].jobid, - id: jobHash[r.RONumber].mixdataid, + jobid: jobHash[r.RONumber]?.jobid, + id: jobHash[r.RONumber]?.mixdataid, mixdata: r, totalliquidcost: r.TotalLiquidCost, totalsundrycost: r.TotalSundryCost,