IO-3386 CARFAX RPS

Signed-off-by: Allan Carr <allan@imexsystems.ca>
This commit is contained in:
Allan Carr
2025-10-02 18:34:40 -07:00
parent 43f822e6ad
commit 9e977d9a58
7 changed files with 163 additions and 79 deletions

View File

@@ -24,7 +24,7 @@ const ftpSetup = {
debug:
process.env.NODE_ENV !== "production"
? (message, ...data) => logger.log(message, "DEBUG", "api", null, data)
: () => { },
: () => {},
algorithms: {
serverHostKey: ["ssh-rsa", "ssh-dss", "rsa-sha2-256", "rsa-sha2-512", "ecdsa-sha2-nistp256", "ecdsa-sha2-nistp384"]
}
@@ -37,12 +37,12 @@ const S3_BUCKET_NAME = InstanceManager({
const region = InstanceManager.InstanceRegion;
const isLocal = isString(process.env?.LOCALSTACK_HOSTNAME) && !isEmpty(process.env?.LOCALSTACK_HOSTNAME);
const uploadToS3 = (jsonObj) => {
const uploadToS3 = (jsonObj, bucketName = S3_BUCKET_NAME) => {
const webPath = isLocal
? `https://${S3_BUCKET_NAME}.s3.localhost.localstack.cloud:4566/${jsonObj.filename}`
: `https://${S3_BUCKET_NAME}.s3.${region}.amazonaws.com/${jsonObj.filename}`;
? `https://${bucketName}.s3.localhost.localstack.cloud:4566/${jsonObj.filename}`
: `https://${bucketName}.s3.${region}.amazonaws.com/${jsonObj.filename}`;
uploadFileToS3({ bucketName: S3_BUCKET_NAME, key: jsonObj.filename, content: jsonObj.json })
uploadFileToS3({ bucketName: bucketName, key: jsonObj.filename, content: jsonObj.json })
.then(() => {
logger.log("CARFAX-s3-upload", "DEBUG", "api", jsonObj.bodyshopid, {
imexshopid: jsonObj.imexshopid,
@@ -132,9 +132,9 @@ async function processShopData(shopsToProcess, start, end, skipUpload, ignoreDat
...(ignoreDateFilter
? {}
: {
start: start ? moment(start).startOf("day") : moment().subtract(7, "days").startOf("day"),
...(end && { end: moment(end).endOf("day") })
})
start: start ? moment(start).startOf("day") : moment().subtract(7, "days").startOf("day"),
...(end && { end: moment(end).endOf("day") })
})
});
const carfaxObject = {
@@ -295,18 +295,18 @@ const CreateRepairOrderTag = (job, errorCallback) => {
date_estimated: [job.date_estimated, job.created_at].find((date) => date)
? moment([job.date_open, job.created_at].find((date) => date))
.tz(job.bodyshop.timezone)
.format(AHDateFormat)
.tz(job.bodyshop.timezone)
.format(AHDateFormat)
: "",
data_opened: [job.date_open, job.created_at].find((date) => date)
? moment([job.date_open, job.created_at].find((date) => date))
.tz(job.bodyshop.timezone)
.format(AHDateFormat)
.tz(job.bodyshop.timezone)
.format(AHDateFormat)
: "",
date_invoiced: [job.date_invoiced, job.actual_delivery, job.actual_completion].find((date) => date)
? moment([job.date_invoiced, job.actual_delivery, job.actual_completion].find((date) => date))
.tz(job.bodyshop.timezone)
.format(AHDateFormat)
.tz(job.bodyshop.timezone)
.format(AHDateFormat)
: "",
loss_date: job.loss_date ? moment(job.loss_date).format(AHDateFormat) : "",
@@ -448,8 +448,8 @@ const errorCode = ({ count, filename, results }) => {
return 0;
};
module.exports = {
default: carfaxExport,
ftpSetup, uploadToS3
}
ftpSetup,
uploadToS3
};