feature/Reynolds-and-Reynolds-DMS-API-Integration - Scaffolding

This commit is contained in:
Dave
2025-10-01 14:19:44 -04:00
parent 3d112ed2cd
commit b995e1f35d
7 changed files with 783 additions and 1 deletions

View File

@@ -2,6 +2,9 @@ const { admin } = require("../firebase/firebase-handler");
const { FortellisJobExport, FortellisSelectedCustomer } = require("../fortellis/fortellis");
const FortellisLogger = require("../fortellis/fortellis-logger");
const CdkCalculateAllocations = require("../cdk/cdk-calculate-allocations").default;
const RRLogger = require("../rr/rr-logger");
const { RRJobExport, RRSelectedCustomer } = require("../rr/rr-job-export");
const redisSocketEvents = ({
io,
redisHelpers: {
@@ -331,6 +334,68 @@ const redisSocketEvents = ({
});
};
const registerRREvents = (socket) => {
socket.on("rr-export-job", async ({ jobid, txEnvelope }) => {
try {
await RRJobExport({
socket,
redisHelpers: {
setSessionData,
getSessionData,
addUserSocketMapping,
removeUserSocketMapping,
refreshUserSocketTTL,
getUserSocketMappingByBodyshop,
setSessionTransactionData,
getSessionTransactionData,
clearSessionTransactionData
},
ioHelpers: { getBodyshopRoom, getBodyshopConversationRoom },
jobid,
txEnvelope
});
} catch (error) {
RRLogger(socket, "error", `Error during RR export: ${error.message}`);
logger.log("rr-job-export-error", "error", null, null, { message: error.message, stack: error.stack });
}
});
socket.on("rr-selected-customer", async ({ jobid, selectedCustomerId }) => {
try {
await RRSelectedCustomer({
socket,
redisHelpers: {
setSessionData,
getSessionData,
addUserSocketMapping,
removeUserSocketMapping,
refreshUserSocketTTL,
getUserSocketMappingByBodyshop,
setSessionTransactionData,
getSessionTransactionData,
clearSessionTransactionData
},
ioHelpers: { getBodyshopRoom, getBodyshopConversationRoom },
jobid,
selectedCustomerId
});
} catch (error) {
RRLogger(socket, "error", `Error during RR selected-customer: ${error.message}`);
logger.log("rr-selected-customer-error", "error", null, null, { message: error.message, stack: error.stack });
}
});
socket.on("rr-calculate-allocations", async (jobid, callback) => {
try {
const allocations = await CdkCalculateAllocations(socket, jobid);
callback(allocations);
} catch (error) {
RRLogger(socket, "error", `Error during RR calculate allocations: ${error.message}`);
logger.log("rr-calc-allocations-error", "error", null, null, { message: error.message, stack: error.stack });
}
});
};
// Call Handlers
registerRoomAndBroadcastEvents(socket);
registerUpdateEvents(socket);
@@ -339,6 +404,7 @@ const redisSocketEvents = ({
registerSyncEvents(socket);
registerTaskEvents(socket);
registerFortellisEvents(socket);
registerRREvents(socket);
};
// Associate Middleware and Handlers