diff --git a/server/data/carfax-rps.js b/server/data/carfax-rps.js index fd8f634a1..7c7eecb62 100644 --- a/server/data/carfax-rps.js +++ b/server/data/carfax-rps.js @@ -117,44 +117,46 @@ async function processShopData(shopsToProcess, start, end, skipUpload, ignoreDat imexshopid: shopid, json: JSON.stringify(carfaxObject, null, 2), filename: `${shopid}_${moment().format("DDMMYYYY_HHMMss")}.json`, - count: carfaxObject.job.length + count: carfaxObject?.job?.length || 0 }; if (skipUpload) { fs.writeFileSync(`./logs/${jsonObj.filename}`, jsonObj.json); uploadToS3(jsonObj, S3_BUCKET_NAME); } else { - await uploadViaSFTP(jsonObj); + if (jsonObj.count > 0) { + await uploadViaSFTP(jsonObj); - await sendMexicoBillingEmail({ - subject: `${shopid.replace(/_/g, "").toUpperCase()}_MexicoRPS_${moment().format("MMDDYYYY")} ROs ${jsonObj.count} Error ${errorCode(jsonObj)}`, - text: `Errors:\n${JSON.stringify( - erroredJobs.map((ej) => ({ - jobid: ej.job?.id, - error: ej.error - })), - null, - 2 - )}\n\nUploaded:\n${JSON.stringify( - { - bodyshopid: bodyshop.id, - imexshopid: shopid, - count: jsonObj.count, - filename: jsonObj.filename, - result: jsonObj.result - }, - null, - 2 - )}` - }); + await sendMexicoBillingEmail({ + subject: `${shopid.replace(/_/g, "").toUpperCase()}_MexicoRPS_${moment().format("MMDDYYYY")} ROs ${jsonObj.count} Error ${errorCode(jsonObj)}`, + text: `Errors:\n${JSON.stringify( + erroredJobs.map((ej) => ({ + jobid: ej.job?.id, + error: ej.error + })), + null, + 2 + )}\n\nUploaded:\n${JSON.stringify( + { + bodyshopid: bodyshop.id, + imexshopid: shopid, + count: jsonObj.count, + filename: jsonObj.filename, + result: jsonObj.result + }, + null, + 2 + )}` + }); + } } - allJSONResults.push({ + jsonObj.count > 0 && allJSONResults.push({ bodyshopid: bodyshop.id, imexshopid: shopid, count: jsonObj.count, filename: jsonObj.filename, - result: jsonObj.result + result: jsonObj.result || "No Upload Result Available" }); logger.log("CARFAX-RPS-end-shop-extract", "DEBUG", "api", bodyshop.id, { diff --git a/server/data/carfax.js b/server/data/carfax.js index 1424dea4f..250d553bb 100644 --- a/server/data/carfax.js +++ b/server/data/carfax.js @@ -160,40 +160,42 @@ async function processShopData(shopsToProcess, start, end, skipUpload, ignoreDat imexshopid: shopid, json: JSON.stringify(carfaxObject, null, 2), filename: `${shopid}_${moment().format("DDMMYYYY_HHMMss")}.json`, - count: carfaxObject.job.length + count: carfaxObject?.job?.length || 0 }; if (skipUpload) { fs.writeFileSync(`./logs/${jsonObj.filename}`, jsonObj.json); uploadToS3(jsonObj); } else { - await uploadViaSFTP(jsonObj); + if (jsonObj.count > 0) { + await uploadViaSFTP(jsonObj); - await sendMexicoBillingEmail({ - subject: `${shopid.replace(/_/g, "").toUpperCase()}_Mexico${InstanceManager({ - imex: "IO", - rome: "RO" - })}_${moment().format("MMDDYYYY")} ROs ${jsonObj.count} Error ${errorCode(jsonObj)}`, - text: `Errors:\n${JSON.stringify( - erroredJobs.map((ej) => ({ - ro_number: ej.job?.ro_number, - jobid: ej.job?.id, - error: ej.error - })), - null, - 2 - )}\n\nUploaded:\n${JSON.stringify( - { - bodyshopid: bodyshop.id, - imexshopid: shopid, - count: jsonObj.count, - filename: jsonObj.filename, - result: jsonObj.result - }, - null, - 2 - )}` - }); + await sendMexicoBillingEmail({ + subject: `${shopid.replace(/_/g, "").toUpperCase()}_Mexico${InstanceManager({ + imex: "IO", + rome: "RO" + })}_${moment().format("MMDDYYYY")} ROs ${jsonObj.count} Error ${errorCode(jsonObj)}`, + text: `Errors:\n${JSON.stringify( + erroredJobs.map((ej) => ({ + ro_number: ej.job?.ro_number, + jobid: ej.job?.id, + error: ej.error + })), + null, + 2 + )}\n\nUploaded:\n${JSON.stringify( + { + bodyshopid: bodyshop.id, + imexshopid: shopid, + count: jsonObj.count, + filename: jsonObj.filename, + result: jsonObj.result + }, + null, + 2 + )}` + }); + } } allJSONResults.push({ @@ -201,7 +203,7 @@ async function processShopData(shopsToProcess, start, end, skipUpload, ignoreDat imexshopid: shopid, count: jsonObj.count, filename: jsonObj.filename, - result: jsonObj.result + result: jsonObj.result || "No Upload Result Available" }); logger.log("CARFAX-end-shop-extract", "DEBUG", "api", bodyshop.id, {