IO-2742-redis - PR Changes

Signed-off-by: Dave Richer <dave@imexsystems.ca>
This commit is contained in:
Dave Richer
2024-09-24 14:20:09 -04:00
parent 5c54cf6c44
commit 5e14258839
2 changed files with 50 additions and 28 deletions

View File

@@ -204,7 +204,16 @@ const applyRedisHelpers = (pubClient, app) => {
} }
}; };
Object.assign(module.exports, { // Helper function to clear a list in Redis
const clearList = async (socketId, key) => {
try {
await pubClient.del(`socket:${socketId}:${key}`);
} catch (error) {
console.error(`Error clearing list for socket ${socketId}:`, error);
}
};
const api = {
setSessionData, setSessionData,
getSessionData, getSessionData,
clearSessionData, clearSessionData,
@@ -212,20 +221,14 @@ const applyRedisHelpers = (pubClient, app) => {
getMultipleSessionData, getMultipleSessionData,
setMultipleFromArraySessionData, setMultipleFromArraySessionData,
addItemToEndOfList, addItemToEndOfList,
addItemToBeginningOfList addItemToBeginningOfList,
}); clearList
};
Object.assign(module.exports, api);
app.use((req, res, next) => { app.use((req, res, next) => {
req.sessionUtils = { req.sessionUtils = api;
setSessionData,
getSessionData,
clearSessionData,
setMultipleSessionData,
getMultipleSessionData,
setMultipleFromArraySessionData,
addItemToEndOfList,
addItemToBeginningOfList
};
next(); next();
}); });
@@ -274,6 +277,16 @@ const applyRedisHelpers = (pubClient, app) => {
// const logEvents = await pubClient.lRange(`socket:${socketId}:logEvents`, 0, -1); // const logEvents = await pubClient.lRange(`socket:${socketId}:logEvents`, 0, -1);
// console.log("Log Events List:", logEvents.map(JSON.parse)); // console.log("Log Events List:", logEvents.map(JSON.parse));
// //
// // **Add the new code below to test clearList**
//
// // Clear the list using clearList
// await exports.clearList(socketId, "logEvents");
// console.log("Log Events List cleared.");
//
// // Retrieve the list after clearing to confirm it's empty
// const logEventsAfterClear = await pubClient.lRange(`socket:${socketId}:logEvents`, 0, -1);
// console.log("Log Events List after clearing:", logEventsAfterClear); // Should be an empty array
//
// // Clear session data // // Clear session data
// await exports.clearSessionData(socketId); // await exports.clearSessionData(socketId);
// console.log("Session data cleared."); // console.log("Session data cleared.");

View File

@@ -12,7 +12,13 @@ const CalcualteAllocations = require("./cdk-calculate-allocations").default;
const InstanceMgr = require("../utils/instanceMgr").default; const InstanceMgr = require("../utils/instanceMgr").default;
const moment = require("moment-timezone"); const moment = require("moment-timezone");
const { setSessionData, getSessionData, getMultipleSessionData, setMultipleSessionData } = require("../../server"); const {
setSessionData,
getSessionData,
getMultipleSessionData,
setMultipleSessionData,
clearList
} = require("../../server");
const replaceSpecialRegex = /[^a-zA-Z0-9 .,\n #]+/g; const replaceSpecialRegex = /[^a-zA-Z0-9 .,\n #]+/g;
@@ -22,6 +28,8 @@ exports.default = async function (socket, { txEnvelope, jobid }) {
txEnvelope txEnvelope
}); });
await clearList(socket.id, "logEvents");
try { try {
await CdkBase.createLogEvent(socket, "DEBUG", `Received Job export request for id ${jobid}`); await CdkBase.createLogEvent(socket, "DEBUG", `Received Job export request for id ${jobid}`);
@@ -52,19 +60,24 @@ exports.default = async function (socket, { txEnvelope, jobid }) {
"DEBUG", "DEBUG",
`{2.2} Querying the Customer using the ID from DMSVeh: ${DMSVehCustomer.id.value}` `{2.2} Querying the Customer using the ID from DMSVeh: ${DMSVehCustomer.id.value}`
); );
const DMSVehCustomerData = await QueryDmsCustomerById(socket, JobData, DMSVehCustomer.id.value); await setSessionData(
await setSessionData(socket.id, "DMSVehCustomer", DMSVehCustomerData); socket.id,
"DMSVehCustomer",
await QueryDmsCustomerById(socket, JobData, DMSVehCustomer.id.value)
);
} }
} }
await CdkBase.createLogEvent(socket, "DEBUG", `{2.3} Querying the Customer using the name.`); await CdkBase.createLogEvent(socket, "DEBUG", `{2.3} Querying the Customer using the name.`);
///
const DMSCustList = await QueryDmsCustomerByName(socket, JobData); const DMSCustList = await QueryDmsCustomerByName(socket, JobData);
await setSessionData(socket.id, "DMSCustList", DMSCustList); await setSessionData(socket.id, "DMSCustList", DMSCustList);
const DMSVehCustomerData = await getSessionData(socket.id, "DMSVehCustomer"); const DMSVehCustomer = await getSessionData(socket.id, "DMSVehCustomer");
socket.emit("cdk-select-customer", [ socket.emit("cdk-select-customer", [
...(DMSVehCustomerData ? [{ ...DMSVehCustomerData, vinOwner: true }] : []), ...(DMSVehCustomer ? [{ ...DMSVehCustomer, vinOwner: true }] : []),
...DMSCustList ...DMSCustList
]); ]);
} catch (error) { } catch (error) {
@@ -97,16 +110,13 @@ async function CdkSelectedCustomer(socket, selectedCustomerId) {
if (DMSVid.newId === "Y") { if (DMSVid.newId === "Y") {
await CdkBase.createLogEvent(socket, "DEBUG", `{4.1} Inserting new vehicle with ID: ID ${DMSVid.vehiclesVehId}`); await CdkBase.createLogEvent(socket, "DEBUG", `{4.1} Inserting new vehicle with ID: ID ${DMSVid.vehiclesVehId}`);
const DMSVeh = await InsertDmsVehicle(socket); await setSessionData(socket.id, "DMSVeh", await InsertDmsVehicle(socket));
await setSessionData(socket.id, "DMSVeh", DMSVeh);
} else { } else {
await CdkBase.createLogEvent(socket, "DEBUG", `{4.2} Querying Existing Vehicle using ID ${DMSVid.vehiclesVehId}`); await CdkBase.createLogEvent(socket, "DEBUG", `{4.2} Querying Existing Vehicle using ID ${DMSVid.vehiclesVehId}`);
const DMSVeh = await QueryDmsVehicleById(socket, await getSessionData(socket.id, "JobData"), DMSVid); await setSessionData(socket.id, "DMSVeh", await QueryDmsVehicleById(socket, JobData, DMSVid));
await setSessionData(socket.id, "DMSVeh", DMSVeh);
await CdkBase.createLogEvent(socket, "DEBUG", `{4.3} Updating Existing Vehicle to associate to owner.`); await CdkBase.createLogEvent(socket, "DEBUG", `{4.3} Updating Existing Vehicle to associate to owner.`);
const updatedDMSVeh = await UpdateDmsVehicle(socket); await setSessionData(socket.id, "DMSVeh", await UpdateDmsVehicle(socket));
await setSessionData(socket.id, "DMSVeh", updatedDMSVeh);
} }
await CdkBase.createLogEvent(socket, "DEBUG", `{5} Creating Transaction header with Dms Start WIP`); await CdkBase.createLogEvent(socket, "DEBUG", `{5} Creating Transaction header with Dms Start WIP`);
@@ -114,8 +124,7 @@ async function CdkSelectedCustomer(socket, selectedCustomerId) {
await setSessionData(socket.id, "DMSTransHeader", DMSTransHeader); await setSessionData(socket.id, "DMSTransHeader", DMSTransHeader);
await CdkBase.createLogEvent(socket, "DEBUG", `{5.1} Creating Transaction with ID ${DMSTransHeader.transID}`); await CdkBase.createLogEvent(socket, "DEBUG", `{5.1} Creating Transaction with ID ${DMSTransHeader.transID}`);
const DMSBatchTxn = await InsertDmsBatchWip(socket); await setSessionData(socket.id, "DMSBatchTxn", await InsertDmsBatchWip(socket));
await setSessionData(socket.id, "DMSBatchTxn", DMSBatchTxn);
await CdkBase.createLogEvent( await CdkBase.createLogEvent(
socket, socket,
@@ -123,6 +132,7 @@ async function CdkSelectedCustomer(socket, selectedCustomerId) {
`{6} Attempting to post Transaction with ID ${DMSTransHeader.transID}` `{6} Attempting to post Transaction with ID ${DMSTransHeader.transID}`
); );
const DmsBatchTxnPost = await PostDmsBatchWip(socket); const DmsBatchTxnPost = await PostDmsBatchWip(socket);
await setSessionData(socket.id, "DMSBatchTxnPost", DmsBatchTxnPost);
if (DmsBatchTxnPost.code === "success") { if (DmsBatchTxnPost.code === "success") {
await CdkBase.createLogEvent(socket, "DEBUG", `{6} Successfully posted transaction to DMS.`); await CdkBase.createLogEvent(socket, "DEBUG", `{6} Successfully posted transaction to DMS.`);
@@ -132,7 +142,6 @@ async function CdkSelectedCustomer(socket, selectedCustomerId) {
const DMSVehHistory = await InsertServiceVehicleHistory(socket); const DMSVehHistory = await InsertServiceVehicleHistory(socket);
await setSessionData(socket.id, "DMSVehHistory", DMSVehHistory); await setSessionData(socket.id, "DMSVehHistory", DMSVehHistory);
// TODO: Clear goes here.
socket.emit("export-success", JobData.id); socket.emit("export-success", JobData.id);
} else { } else {
await CdkBase.createLogEvent( await CdkBase.createLogEvent(
@@ -144,7 +153,7 @@ async function CdkSelectedCustomer(socket, selectedCustomerId) {
await setSessionData(socket.id, "DmsError", DmsError); await setSessionData(socket.id, "DmsError", DmsError);
await CdkBase.createLogEvent(socket, "DEBUG", `{6.2} Deleting Transaction ID ${DMSTransHeader.transID}`); await CdkBase.createLogEvent(socket, "DEBUG", `{6.2} Deleting Transaction ID ${DMSTransHeader.transID}`);
await DeleteDmsWip(socket); await setSessionData(socket.id, "DmsBatchTxnPost", await DeleteDmsWip(socket));
for (const e of DmsError.errMsg.split("|")) { for (const e of DmsError.errMsg.split("|")) {
if (e !== null && e !== "") { if (e !== null && e !== "") {