IO-233 WIP CDK

This commit is contained in:
Patrick Fic
2021-07-02 12:53:18 -07:00
parent 4ab0947cc8
commit 84b39f3d2b
3 changed files with 197 additions and 86 deletions

View File

@@ -44,13 +44,13 @@ exports.default = async function (socket, jobid) {
CdkBase.createLogEvent(
socket,
"DEBUG",
`{1.2} clVFV DMSVid does *not* exist. clVFV: ${JSON.stringify(
clVFV,
null,
2
)}`
`{1.2} clVFV DMSVid does *not* exist.`
);
CdkBase.createLogEvent(
socket,
"TRACE",
`{1.2} clVFV: ${JSON.stringify(clVFV, null, 2)}`
);
//Check if DMSCustId is Empty - which it should always be?
//{6.6} Should check to see if a customer exists so that we can marry it to the new vehicle.
CdkBase.createLogEvent(
@@ -65,12 +65,30 @@ exports.default = async function (socket, jobid) {
CdkBase.createLogEvent(
socket,
"DEBUG",
`{8.2} Customer ID(s) found. strIDS: ${JSON.stringify(
strIDS,
null,
2
)}`
`{8.2} ${strIDS.length} Customer ID(s) found.`
);
CdkBase.createLogEvent(
socket,
"TRACE",
`{8.2} strIDS: ${JSON.stringify(strIDS, null, 2)}`
);
if (strIDS.length > 1) {
//We have multiple IDs
//TODO: Do we need to let the person select it?
CdkBase.createLogEvent(
socket,
"WARNING",
`{F} Mutliple customer ids have been found (${strIDS.length})`
);
CdkBase.createLogEvent(
socket,
"DEBUG",
`Asking for user intervention to select customer.`
);
socket.emit("cdk-select-customer", strIDS);
//TOOD: Need to find a way to wait and determine which customer to use.
}
} else {
CdkBase.createLogEvent(
socket,
@@ -94,22 +112,20 @@ exports.default = async function (socket, jobid) {
CdkBase.createLogEvent(
socket,
"DEBUG",
`{11.1} New Customer inserted. customer: ${JSON.stringify(
clADPC,
null,
2
)}`
`{11.1} New Customer inserted.`
);
CdkBase.createLogEvent(
socket,
"TRACE",
`{11.1} clADPC: ${JSON.stringify(clADPC, null, 2)}`
);
}
} else {
CdkBase.createLogEvent(socket, "DEBUG", `{1.1} clVFV DMSVid does exist.`);
CdkBase.createLogEvent(
socket,
"DEBUG",
`{1.1} clVFV DMSVid does exist. clVFV: ${JSON.stringify(
clVFV,
null,
2
)}`
"TRACE",
`{1.1} clVFV: ${JSON.stringify(clVFV, null, 2)}`
);
//{2} Begin Find Vehicle in DMS
@@ -121,22 +137,24 @@ exports.default = async function (socket, jobid) {
CdkBase.createLogEvent(
socket,
"DEBUG",
`{1.4} Vehicle was found in the DMS. clADPV: ${JSON.stringify(
clADPV,
null,
2
)}`
`{1.4} Vehicle was found in the DMS.`
);
CdkBase.createLogEvent(
socket,
"TRACE",
`{1.4} clADPV: ${JSON.stringify(clADPV, null, 2)}`
);
} else {
//Vehicle was not found.
CdkBase.createLogEvent(
socket,
"DEBUG",
`{6.4} Vehicle does not exist in DMS. Will have to create one. clVFV: ${JSON.stringify(
clVFV,
null,
2
)}`
`{6.4} Vehicle does not exist in DMS. Will have to create one.`
);
CdkBase.createLogEvent(
socket,
"TRACE",
`{6.4} clVFV: ${JSON.stringify(clVFV, null, 2)}`
);
}
}
@@ -167,7 +185,7 @@ async function QueryJobData(socket, jobid) {
}
async function CreateCustomerInDms(socket, JobData, newCustomerNumber) {
CdkBase.createLogEvent(socket, "DEBUG", `{10} Begin Create Customer in DMS`);
CdkBase.createLogEvent(socket, "DEBUG", `{11} Begin Create Customer in DMS`);
try {
const soapClientCustomerInsertUpdate = await soap.createClientAsync(
@@ -209,8 +227,9 @@ async function CreateCustomerInDms(socket, JobData, newCustomerNumber) {
{}
);
CheckCdkResponseForError(socket, soapResponseCustomerInsertUpdate);
const [result, rawResponse, soapheader, rawRequest] =
soapResponseCustomerInsertUpdate;
const [
result, //rawResponse, soapheader, rawRequest
] = soapResponseCustomerInsertUpdate;
CdkBase.createLogEvent(
socket,
@@ -303,7 +322,7 @@ async function FindCustomerIdFromDms(socket, JobData) {
arg0: CDK_CREDENTIALS,
arg1: { dealerId: JobData.bodyshop.cdk_dealerid }, //TODO: Verify why this does not follow the other standards.
arg2: {
// verb: "EXACT",
verb: "EXACT",
key: ownerName,
},
},
@@ -363,17 +382,6 @@ async function FindVehicleInDms(socket, JobData, clVFV) {
const [
result, //rawResponse, soapheader, rawRequest
] = soapResponseVehicleInsertUpdate;
//result format
// return: [
// {
// code: 'success',
// carInvStockNo: '',
// errorLevel: '0',
// errorMessage: '',
// newId: 'Y',
// vehiclesVehId: 'HM263407'
// }
// ]
CdkBase.createLogEvent(
socket,
"TRACE",
@@ -420,17 +428,6 @@ async function CalculateDmsVid(socket, JobData) {
const [
result, //rawResponse, soapheader, rawRequest
] = soapResponseVehicleInsertUpdate;
//result format
// return: [
// {
// code: 'success',
// carInvStockNo: '',
// errorLevel: '0',
// errorMessage: '',
// newId: 'Y',
// vehiclesVehId: 'HM263407'
// }
// ]
CdkBase.createLogEvent(
socket,
"TRACE",
@@ -465,14 +462,21 @@ function CheckCdkResponseForError(socket, soapResponse) {
return;
}
const ResultToCheck = Array.isArray(soapResponse[0] && soapResponse[0].return)
? soapResponse[0].return[0]
: soapResponse[0].return;
const ResultToCheck = soapResponse[0].return;
if (Array.isArray(ResultToCheck)) {
ResultToCheck.forEach((result) => checkIndividualResult(socket, result));
} else {
checkIndividualResult(socket, ResultToCheck);
}
}
function checkIndividualResult(socket, ResultToCheck) {
if (
ResultToCheck.errorLevel === 0 ||
ResultToCheck.errorLevel === "0" ||
ResultToCheck.code === "success"
ResultToCheck.code === "success" ||
(!ResultToCheck.code && !ResultToCheck.errorLevel)
)
//TODO: Verify that this is the best way to detect errors.
return;