IO-233 Vehicle and Customer posting unit testing completed.
This commit is contained in:
@@ -38,7 +38,7 @@ export function DmsCustomerSelector({ bodyshop }) {
|
|||||||
setVisible(false);
|
setVisible(false);
|
||||||
socket.emit(
|
socket.emit(
|
||||||
"cdk-selected-customer",
|
"cdk-selected-customer",
|
||||||
bodyshop.cdk_configuration.generic_customer_umber
|
bodyshop.cdk_configuration.generic_customer_number
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -69,14 +69,16 @@ export function DmsCustomerSelector({ bodyshop }) {
|
|||||||
<Table
|
<Table
|
||||||
title={() => (
|
title={() => (
|
||||||
<div>
|
<div>
|
||||||
<Button onClick={onUseSelected}>
|
<Button onClick={onUseSelected} disabled={!selectedCustomer}>
|
||||||
{t("jobs.actions.dms.useselected")}
|
{t("jobs.actions.dms.useselected")}
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button
|
||||||
onClick={onUseGeneric}
|
onClick={onUseGeneric}
|
||||||
disabled={
|
disabled={
|
||||||
!bodyshop.cdk_configuration &&
|
!(
|
||||||
!bodyshop.cdk_configuration.generic_customer_umber
|
bodyshop.cdk_configuration &&
|
||||||
|
bodyshop.cdk_configuration.generic_customer_number
|
||||||
|
)
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
{t("jobs.actions.dms.usegeneric")}
|
{t("jobs.actions.dms.usegeneric")}
|
||||||
|
|||||||
@@ -49,10 +49,11 @@ export function DmsPostForm({ bodyshop, socket, job }) {
|
|||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
console.log("🚀 ~ file: dms-post-form.component.jsx ~ line 58 ~ job", job);
|
||||||
|
|
||||||
const handleFinish = (values) => {
|
const handleFinish = (values) => {
|
||||||
socket.emit(`${determineDmsType(bodyshop)}-export-job`, {
|
socket.emit(`${determineDmsType(bodyshop)}-export-job`, {
|
||||||
jobId: job.id,
|
jobid: job.id,
|
||||||
txEnvelope: values,
|
txEnvelope: values,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -274,7 +275,9 @@ export function DmsPostForm({ bodyshop, socket, job }) {
|
|||||||
}}
|
}}
|
||||||
value={discrep.toFormat()}
|
value={discrep.toFormat()}
|
||||||
/>
|
/>
|
||||||
<Button disabled={discrep.getAmount() !== 0} htmlType="submit">
|
<Button //disabled={discrep.getAmount() !== 0} //TODO: REMOVE THIS COMMENT.
|
||||||
|
htmlType="submit"
|
||||||
|
>
|
||||||
{t("jobs.actions.dms.post")}
|
{t("jobs.actions.dms.post")}
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button
|
||||||
|
|||||||
@@ -26,16 +26,17 @@ exports.default = async function (socket, { txEnvelope, jobid }) {
|
|||||||
);
|
);
|
||||||
|
|
||||||
const JobData = await QueryJobData(socket, jobid);
|
const JobData = await QueryJobData(socket, jobid);
|
||||||
|
socket.JobData = JobData;
|
||||||
const DealerId = JobData.bodyshop.cdk_dealerid;
|
const DealerId = JobData.bodyshop.cdk_dealerid;
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`Dealer ID detected: ${JSON.stringify(DealerId)}`
|
`Dealer ID detected: ${JSON.stringify(DealerId)}`
|
||||||
);
|
);
|
||||||
|
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{1} Begin Calculate DMS Vehicle ID using VIN: ${JobData.v_vin}`
|
`{1} Begin Calculate DMS Vehicle ID using VIN: ${JobData.v_vin}`
|
||||||
);
|
);
|
||||||
socket.DMSVid = await CalculateDmsVid(socket, JobData);
|
socket.DMSVid = await CalculateDmsVid(socket, JobData);
|
||||||
@@ -43,38 +44,38 @@ exports.default = async function (socket, { txEnvelope, jobid }) {
|
|||||||
if (socket.DMSVid.newId === "N") {
|
if (socket.DMSVid.newId === "N") {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{2.1} Querying the Vehicle using the DMSVid: ${socket.DmsVid}`
|
`{2.1} Querying the Vehicle using the DMSVid: ${socket.DMSVid}`
|
||||||
);
|
);
|
||||||
socket.DMSVeh = await QueryDmsVehicleById(socket, JobData, socket.DMSVid);
|
socket.DMSVeh = await QueryDmsVehicleById(socket, JobData, socket.DMSVid);
|
||||||
|
|
||||||
const DmsVehCustomerId =
|
const DMSVehCustomer =
|
||||||
socket.DMSVeh &&
|
socket.DMSVeh &&
|
||||||
socket.DMSVeh.owners.find((o) => o.assigningPartyId === "CURRENT");
|
socket.DMSVeh.owners.find((o) => o.id.assigningPartyId === "CURRENT");
|
||||||
|
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{2.2} Querying the Customer using the ID from DMSVeh: ${DmsVehCustomerId}`
|
`{2.2} Querying the Customer using the ID from DMSVeh: ${DMSVehCustomer.id.value}`
|
||||||
);
|
);
|
||||||
socket.DmsVehCustomer = await QueryDmsCustomerById(
|
socket.DMSVehCustomer = await QueryDmsCustomerById(
|
||||||
socket,
|
socket,
|
||||||
JobData,
|
JobData,
|
||||||
DmsVehCustomerId
|
DMSVehCustomer.id.value
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{2.3} Querying the Customer using the name.`
|
`{2.3} Querying the Customer using the name.`
|
||||||
);
|
);
|
||||||
|
|
||||||
socket.DmsCustList = await QueryDmsCustomerByName(socket, JobData);
|
socket.DMSCustList = await QueryDmsCustomerByName(socket, JobData);
|
||||||
|
|
||||||
socket.emit("cdk-select-customer", [
|
socket.emit("cdk-select-customer", [
|
||||||
...(socket.DmsVehCustomer ? socket.DmsVehCustomer : []),
|
...(socket.DMSVehCustomer ? [socket.DMSVehCustomer] : []),
|
||||||
...socket.DmsCustList,
|
...socket.DMSCustList,
|
||||||
]);
|
]);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
@@ -98,45 +99,55 @@ async function CdkSelectedCustomer(socket, selectedCustomerId) {
|
|||||||
if (selectedCustomerId) {
|
if (selectedCustomerId) {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{3.1} Querying the Customer using Customer ID: ${selectedCustomerId}`
|
`{3.1} Querying the Customer using Customer ID: ${selectedCustomerId}`
|
||||||
);
|
);
|
||||||
socket.DMSCust = await QueryDmsCustomerById(socket, selectedCustomerId);
|
socket.DMSCust = await QueryDmsCustomerById(socket, selectedCustomerId);
|
||||||
} else {
|
} else {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{3.2} Generating a new customer ID.`
|
`{3.2} Generating a new customer ID.`
|
||||||
);
|
);
|
||||||
const newCustomerId = await GenerateDmsCustomerNumber(
|
const newCustomerId = await GenerateDmsCustomerNumber(socket);
|
||||||
socket,
|
|
||||||
socket.JobData
|
|
||||||
);
|
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{3.3} Inserting new customer with ID: ${newCustomerId}`
|
`{3.3} Inserting new customer with ID: ${newCustomerId}`
|
||||||
);
|
);
|
||||||
socket.DMSCust = await InsertDmsCustomer(
|
socket.DMSCust = await InsertDmsCustomer(socket, newCustomerId);
|
||||||
socket,
|
|
||||||
socket.JobData,
|
|
||||||
newCustomerId
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (socket.DMSVid.newId === "Y") {
|
if (socket.DMSVid.newId === "Y") {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{4.1} Inserting new vehicle with ID: ID ${socket.DMSVid.vehiclesVehId}`
|
`{4.1} Inserting new vehicle with ID: ID ${socket.DMSVid.vehiclesVehId}`
|
||||||
);
|
);
|
||||||
|
socket.DMSVeh = await InsertDmsVehicle(socket);
|
||||||
} else {
|
} else {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"TRACE",
|
"DEBUG",
|
||||||
`{4.2} Querying Existing Vehicle using ID ${socket.DMSVid.vehiclesVehId}`
|
`{4.2} Querying Existing Vehicle using ID ${socket.DMSVid.vehiclesVehId}`
|
||||||
);
|
);
|
||||||
|
socket.DMSVeh = await QueryDmsVehicleById(
|
||||||
|
socket,
|
||||||
|
socket.JobData,
|
||||||
|
socket.DMSVid
|
||||||
|
);
|
||||||
|
CdkBase.createLogEvent(
|
||||||
|
socket,
|
||||||
|
"DEBUG",
|
||||||
|
`{4.3} Updating Existing Vehicle to associate to owner.`
|
||||||
|
);
|
||||||
|
socket.DMSVeh = await UpdateDmsVehicle(socket);
|
||||||
}
|
}
|
||||||
|
CdkBase.createLogEvent(
|
||||||
|
socket,
|
||||||
|
"DEBUG",
|
||||||
|
`{5} Updating Service Vehicle History.`
|
||||||
|
);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
@@ -181,7 +192,7 @@ async function CalculateDmsVid(socket, JobData) {
|
|||||||
arg1: { id: JobData.bodyshop.cdk_dealerid },
|
arg1: { id: JobData.bodyshop.cdk_dealerid },
|
||||||
arg2: { VIN: JobData.v_vin },
|
arg2: { VIN: JobData.v_vin },
|
||||||
});
|
});
|
||||||
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
|
||||||
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
socket,
|
socket,
|
||||||
@@ -204,9 +215,8 @@ async function CalculateDmsVid(socket, JobData) {
|
|||||||
2
|
2
|
||||||
)}`
|
)}`
|
||||||
);
|
);
|
||||||
|
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
||||||
const DmsVid = result && result.return && result.return[0];
|
return result && result.return && result.return[0];
|
||||||
return DmsVid;
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
socket,
|
socket,
|
||||||
@@ -217,7 +227,7 @@ async function CalculateDmsVid(socket, JobData) {
|
|||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
socket,
|
socket,
|
||||||
error.response.data,
|
error.response && error.response.data,
|
||||||
`soapClientVehicleInsertUpdate.getVehIdsAsync response.`,
|
`soapClientVehicleInsertUpdate.getVehIdsAsync response.`,
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
@@ -245,7 +255,7 @@ async function QueryDmsVehicleById(socket, JobData, DMSVid) {
|
|||||||
vehiclesVehicleId: DMSVid.vehiclesVehId,
|
vehiclesVehicleId: DMSVid.vehiclesVehId,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
|
||||||
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
@@ -268,6 +278,7 @@ async function QueryDmsVehicleById(socket, JobData, DMSVid) {
|
|||||||
rawResponse,
|
rawResponse,
|
||||||
`soapClientVehicleInsertUpdate.readAsync response.`
|
`soapClientVehicleInsertUpdate.readAsync response.`
|
||||||
);
|
);
|
||||||
|
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
||||||
const VehicleFromDMS = result && result.return && result.return.vehicle;
|
const VehicleFromDMS = result && result.return && result.return.vehicle;
|
||||||
return VehicleFromDMS;
|
return VehicleFromDMS;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -290,10 +301,11 @@ async function QueryDmsCustomerById(socket, JobData, CustomerId) {
|
|||||||
arg0: CDK_CREDENTIALS,
|
arg0: CDK_CREDENTIALS,
|
||||||
arg1: { dealerId: JobData.bodyshop.cdk_dealerid }, //TODO: Verify why this does not follow the other standards.
|
arg1: { dealerId: JobData.bodyshop.cdk_dealerid }, //TODO: Verify why this does not follow the other standards.
|
||||||
arg2: {
|
arg2: {
|
||||||
userId: CustomerId,
|
// userId: CustomerId,
|
||||||
},
|
},
|
||||||
|
arg3: CustomerId,
|
||||||
});
|
});
|
||||||
CheckCdkResponseForError(socket, soapResponseCustomerInsertUpdate);
|
|
||||||
const [result, rawResponse, , rawRequest] =
|
const [result, rawResponse, , rawRequest] =
|
||||||
soapResponseCustomerInsertUpdate;
|
soapResponseCustomerInsertUpdate;
|
||||||
|
|
||||||
@@ -317,7 +329,7 @@ async function QueryDmsCustomerById(socket, JobData, CustomerId) {
|
|||||||
2
|
2
|
||||||
)}`
|
)}`
|
||||||
);
|
);
|
||||||
|
CheckCdkResponseForError(socket, soapResponseCustomerInsertUpdate);
|
||||||
const CustomersFromDms =
|
const CustomersFromDms =
|
||||||
result && result.return && result.return.customerParty;
|
result && result.return && result.return.customerParty;
|
||||||
return CustomersFromDms;
|
return CustomersFromDms;
|
||||||
@@ -331,7 +343,7 @@ async function QueryDmsCustomerById(socket, JobData, CustomerId) {
|
|||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
socket,
|
socket,
|
||||||
error.response.data,
|
error.response && error.response.data,
|
||||||
`soapClientCustomerInsertUpdate.readAsync response.`,
|
`soapClientCustomerInsertUpdate.readAsync response.`,
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
@@ -366,7 +378,7 @@ async function QueryDmsCustomerByName(socket, JobData) {
|
|||||||
key: ownerName,
|
key: ownerName,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
CheckCdkResponseForError(socket, soapResponseCustomerSearch);
|
|
||||||
const [result, rawResponse, , rawRequest] = soapResponseCustomerSearch;
|
const [result, rawResponse, , rawRequest] = soapResponseCustomerSearch;
|
||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
@@ -390,6 +402,7 @@ async function QueryDmsCustomerByName(socket, JobData) {
|
|||||||
2
|
2
|
||||||
)}`
|
)}`
|
||||||
);
|
);
|
||||||
|
CheckCdkResponseForError(socket, soapResponseCustomerSearch);
|
||||||
const CustomersFromDms = (result && result.return) || [];
|
const CustomersFromDms = (result && result.return) || [];
|
||||||
return CustomersFromDms;
|
return CustomersFromDms;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -402,7 +415,7 @@ async function QueryDmsCustomerByName(socket, JobData) {
|
|||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
socket,
|
socket,
|
||||||
error.response.data,
|
error.response && error.response.data,
|
||||||
`soapClientCustomerSearch.executeSearchBulkAsync response.`,
|
`soapClientCustomerSearch.executeSearchBulkAsync response.`,
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
@@ -416,7 +429,7 @@ async function QueryDmsCustomerByName(socket, JobData) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function GenerateDmsCustomerNumber(socket, JobData) {
|
async function GenerateDmsCustomerNumber(socket) {
|
||||||
try {
|
try {
|
||||||
const soapClientCustomerInsertUpdate = await soap.createClientAsync(
|
const soapClientCustomerInsertUpdate = await soap.createClientAsync(
|
||||||
CdkWsdl.CustomerInsertUpdate
|
CdkWsdl.CustomerInsertUpdate
|
||||||
@@ -425,13 +438,13 @@ async function GenerateDmsCustomerNumber(socket, JobData) {
|
|||||||
await soapClientCustomerInsertUpdate.getCustomerNumberAsync(
|
await soapClientCustomerInsertUpdate.getCustomerNumberAsync(
|
||||||
{
|
{
|
||||||
arg0: CDK_CREDENTIALS,
|
arg0: CDK_CREDENTIALS,
|
||||||
arg1: { dealerId: JobData.bodyshop.cdk_dealerid }, //TODO: Verify why this does not follow the other standards.
|
arg1: { dealerId: socket.JobData.bodyshop.cdk_dealerid }, //TODO: Verify why this does not follow the other standards.
|
||||||
arg2: { userId: null },
|
arg2: { userId: null },
|
||||||
},
|
},
|
||||||
|
|
||||||
{}
|
{}
|
||||||
);
|
);
|
||||||
CheckCdkResponseForError(socket, soapResponseCustomerInsertUpdate);
|
|
||||||
const [result, rawResponse, , rawRequest] =
|
const [result, rawResponse, , rawRequest] =
|
||||||
soapResponseCustomerInsertUpdate;
|
soapResponseCustomerInsertUpdate;
|
||||||
|
|
||||||
@@ -456,6 +469,7 @@ async function GenerateDmsCustomerNumber(socket, JobData) {
|
|||||||
2
|
2
|
||||||
)}`
|
)}`
|
||||||
);
|
);
|
||||||
|
CheckCdkResponseForError(socket, soapResponseCustomerInsertUpdate);
|
||||||
const customerNumber =
|
const customerNumber =
|
||||||
result && result.return && result.return.customerNumber;
|
result && result.return && result.return.customerNumber;
|
||||||
return customerNumber;
|
return customerNumber;
|
||||||
@@ -469,20 +483,20 @@ async function GenerateDmsCustomerNumber(socket, JobData) {
|
|||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
socket,
|
socket,
|
||||||
error.response.data,
|
error.response && error.response.data,
|
||||||
`soapClientCustomerInsertUpdate.getCustomerNumberAsync response.`,
|
`soapClientCustomerInsertUpdate.getCustomerNumberAsync response.`,
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
"ERROR",
|
"ERROR",
|
||||||
`Error in GenerateDmsCustomerNumber - ${JSON.stringify(error, null, 2)}`
|
`Error in GenerateDmsCustomerNumber - ${error}`
|
||||||
);
|
);
|
||||||
throw new Error(error);
|
throw new Error(error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function InsertDmsCustomer(socket, JobData, newCustomerNumber) {
|
async function InsertDmsCustomer(socket, newCustomerNumber) {
|
||||||
try {
|
try {
|
||||||
const soapClientCustomerInsertUpdate = await soap.createClientAsync(
|
const soapClientCustomerInsertUpdate = await soap.createClientAsync(
|
||||||
CdkWsdl.CustomerInsertUpdate
|
CdkWsdl.CustomerInsertUpdate
|
||||||
@@ -491,27 +505,31 @@ async function InsertDmsCustomer(socket, JobData, newCustomerNumber) {
|
|||||||
await soapClientCustomerInsertUpdate.insertAsync(
|
await soapClientCustomerInsertUpdate.insertAsync(
|
||||||
{
|
{
|
||||||
arg0: CDK_CREDENTIALS,
|
arg0: CDK_CREDENTIALS,
|
||||||
arg1: { dealerId: JobData.bodyshop.cdk_dealerid }, //TODO: Verify why this does not follow the other standards.
|
arg1: { dealerId: socket.JobData.bodyshop.cdk_dealerid }, //TODO: Verify why this does not follow the other standards.
|
||||||
arg2: { userId: null },
|
arg2: { userId: null },
|
||||||
arg3: {
|
arg3: {
|
||||||
//Copied the required fields from the other integration.
|
//Copied the required fields from the other integration.
|
||||||
//TODO: Verify whether we need to bring more information in.
|
//TODO: Verify whether we need to bring more information in.
|
||||||
id: { value: newCustomerNumber },
|
id: { value: newCustomerNumber },
|
||||||
address: {
|
address: {
|
||||||
city: JobData.ownr_city,
|
addressLine: socket.JobData.ownr_addr1,
|
||||||
|
city: socket.JobData.ownr_city,
|
||||||
country: null,
|
country: null,
|
||||||
postalcode: JobData.ownr_zip,
|
postalCode: socket.JobData.ownr_zip,
|
||||||
stateOrProvince: JobData.ownr_st,
|
stateOrProvince: socket.JobData.ownr_st,
|
||||||
},
|
},
|
||||||
contactInfo: {
|
contactInfo: {
|
||||||
mainTelephoneNumber: { main: true, value: JobData.ownr_ph1 },
|
mainTelephoneNumber: {
|
||||||
|
main: true,
|
||||||
|
value: socket.JobData.ownr_ph1,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
demographics: null,
|
demographics: null,
|
||||||
name1: {
|
name1: {
|
||||||
companyname: JobData.ownr_co_nm,
|
companyname: socket.JobData.ownr_co_nm,
|
||||||
firstName: JobData.ownr_fn,
|
firstName: socket.JobData.ownr_fn,
|
||||||
fullname: null,
|
fullname: null,
|
||||||
lastName: JobData.ownr_ln,
|
lastName: socket.JobData.ownr_ln,
|
||||||
middleName: null,
|
middleName: null,
|
||||||
nameType: "Person",
|
nameType: "Person",
|
||||||
suffix: null,
|
suffix: null,
|
||||||
@@ -522,7 +540,7 @@ async function InsertDmsCustomer(socket, JobData, newCustomerNumber) {
|
|||||||
|
|
||||||
{}
|
{}
|
||||||
);
|
);
|
||||||
CheckCdkResponseForError(socket, soapResponseCustomerInsertUpdate);
|
|
||||||
const [result, rawResponse, , rawRequest] =
|
const [result, rawResponse, , rawRequest] =
|
||||||
soapResponseCustomerInsertUpdate;
|
soapResponseCustomerInsertUpdate;
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
@@ -545,7 +563,8 @@ async function InsertDmsCustomer(socket, JobData, newCustomerNumber) {
|
|||||||
2
|
2
|
||||||
)}`
|
)}`
|
||||||
);
|
);
|
||||||
const customer = result && result.return;
|
CheckCdkResponseForError(socket, soapResponseCustomerInsertUpdate);
|
||||||
|
const customer = result && result.return && result.return.customerParty;
|
||||||
return customer;
|
return customer;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
@@ -557,7 +576,7 @@ async function InsertDmsCustomer(socket, JobData, newCustomerNumber) {
|
|||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
socket,
|
socket,
|
||||||
error.response.data,
|
error.response && error.response.data,
|
||||||
`soapClientCustomerInsertUpdate.insertAsync response.`,
|
`soapClientCustomerInsertUpdate.insertAsync response.`,
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
@@ -570,7 +589,7 @@ async function InsertDmsCustomer(socket, JobData, newCustomerNumber) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function InsertDmsVehicle(socket, JobData) {
|
async function InsertDmsVehicle(socket) {
|
||||||
try {
|
try {
|
||||||
const soapClientVehicleInsertUpdate = await soap.createClientAsync(
|
const soapClientVehicleInsertUpdate = await soap.createClientAsync(
|
||||||
CdkWsdl.VehicleInsertUpdate
|
CdkWsdl.VehicleInsertUpdate
|
||||||
@@ -579,31 +598,33 @@ async function InsertDmsVehicle(socket, JobData) {
|
|||||||
const soapResponseVehicleInsertUpdate =
|
const soapResponseVehicleInsertUpdate =
|
||||||
await soapClientVehicleInsertUpdate.insertAsync({
|
await soapClientVehicleInsertUpdate.insertAsync({
|
||||||
arg0: CDK_CREDENTIALS,
|
arg0: CDK_CREDENTIALS,
|
||||||
arg1: { id: JobData.bodyshop.cdk_dealerid },
|
arg1: { id: socket.JobData.bodyshop.cdk_dealerid },
|
||||||
arg2: {
|
arg2: {
|
||||||
dealer: {
|
dealer: {
|
||||||
dealerNumber: JobData.bodyshop.cdk_dealerid,
|
dealerNumber: socket.JobData.bodyshop.cdk_dealerid,
|
||||||
VehicleId: socket.DmsVehId.vehiclesVehId,
|
inServiceDate: moment().startOf("day").toISOString(),
|
||||||
|
vehicleId: socket.DMSVid.vehiclesVehId,
|
||||||
},
|
},
|
||||||
manufacturer: {},
|
manufacturer: {},
|
||||||
vehicle: {
|
vehicle: {
|
||||||
DeliveryDate: moment().format("YYYYMMDD"),
|
deliveryDate: moment().format("YYYYMMDD"),
|
||||||
Make: socket.txEnvelope.dms_make,
|
make: socket.txEnvelope.dms_make,
|
||||||
Model: socket.txEnvelope.dms_model,
|
modelAbrev: socket.txEnvelope.dms_model,
|
||||||
ModelYear: JobData.v_model_yr,
|
modelYear: socket.JobData.v_model_yr,
|
||||||
OdometerStatus: socket.txEnvelope.kmout,
|
odometerStatus: socket.txEnvelope.kmout,
|
||||||
SaleClassValue: "MISC",
|
saleClassValue: "MISC",
|
||||||
VIN: JobData.v_vin,
|
VIN: socket.JobData.v_vin,
|
||||||
},
|
},
|
||||||
owners: {
|
owners: {
|
||||||
id: {
|
id: {
|
||||||
assigningPartyId: "CURRENT",
|
assigningPartyId: "CURRENT",
|
||||||
value: socket.DmsCust.id.value,
|
value: socket.DMSCust.id.value,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
arg3: "VEHICLES",
|
||||||
});
|
});
|
||||||
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
|
||||||
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
||||||
|
|
||||||
CdkBase.createXmlEvent(
|
CdkBase.createXmlEvent(
|
||||||
@@ -626,6 +647,75 @@ async function InsertDmsVehicle(socket, JobData) {
|
|||||||
rawResponse,
|
rawResponse,
|
||||||
`soapClientVehicleInsertUpdate.insertAsync response.`
|
`soapClientVehicleInsertUpdate.insertAsync response.`
|
||||||
);
|
);
|
||||||
|
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
||||||
|
const VehicleFromDMS = result && result.return && result.return.vehicle;
|
||||||
|
return VehicleFromDMS;
|
||||||
|
} catch (error) {
|
||||||
|
CdkBase.createLogEvent(
|
||||||
|
socket,
|
||||||
|
"ERROR",
|
||||||
|
`Error in QueryDmsVehicleById - ${error}`
|
||||||
|
);
|
||||||
|
throw new Error(error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async function UpdateDmsVehicle(socket) {
|
||||||
|
try {
|
||||||
|
const soapClientVehicleInsertUpdate = await soap.createClientAsync(
|
||||||
|
CdkWsdl.VehicleInsertUpdate
|
||||||
|
);
|
||||||
|
|
||||||
|
const soapResponseVehicleInsertUpdate =
|
||||||
|
await soapClientVehicleInsertUpdate.updateAsync({
|
||||||
|
arg0: CDK_CREDENTIALS,
|
||||||
|
arg1: { id: socket.JobData.bodyshop.cdk_dealerid },
|
||||||
|
arg2: {
|
||||||
|
...socket.DMSVeh,
|
||||||
|
dealer: {
|
||||||
|
...socket.DMSVeh.dealer,
|
||||||
|
inServiceDate: moment(
|
||||||
|
socket.DMSVeh.dealer.inServiceDate
|
||||||
|
).toISOString(),
|
||||||
|
},
|
||||||
|
vehicle: {
|
||||||
|
...socket.DMSVeh.vehicle,
|
||||||
|
deliveryDate: moment(
|
||||||
|
socket.DMSVeh.vehicle.deliveryDate
|
||||||
|
).toISOString(),
|
||||||
|
},
|
||||||
|
owners: {
|
||||||
|
id: {
|
||||||
|
assigningPartyId: "CURRENT",
|
||||||
|
value: socket.DMSCust.id.value,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
arg3: "VEHICLES",
|
||||||
|
});
|
||||||
|
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
||||||
|
|
||||||
|
CdkBase.createXmlEvent(
|
||||||
|
socket,
|
||||||
|
rawRequest,
|
||||||
|
`soapClientVehicleInsertUpdate.updateAsync reqest.`
|
||||||
|
);
|
||||||
|
|
||||||
|
CdkBase.createLogEvent(
|
||||||
|
socket,
|
||||||
|
"TRACE",
|
||||||
|
`soapClientVehicleInsertUpdate.updateAsync Result ${JSON.stringify(
|
||||||
|
result,
|
||||||
|
null,
|
||||||
|
2
|
||||||
|
)}`
|
||||||
|
);
|
||||||
|
CdkBase.createXmlEvent(
|
||||||
|
socket,
|
||||||
|
rawResponse,
|
||||||
|
`soapClientVehicleInsertUpdate.updateAsync response.`
|
||||||
|
);
|
||||||
|
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
||||||
const VehicleFromDMS = result && result.return && result.return.vehicle;
|
const VehicleFromDMS = result && result.return && result.return.vehicle;
|
||||||
return VehicleFromDMS;
|
return VehicleFromDMS;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
@@ -132,6 +132,7 @@ query QUERY_JOBS_FOR_CDK_EXPORT($id: uuid!) {
|
|||||||
ownr_fn
|
ownr_fn
|
||||||
ownr_addr1
|
ownr_addr1
|
||||||
ownr_addr2
|
ownr_addr2
|
||||||
|
ownr_ph1
|
||||||
ownr_zip
|
ownr_zip
|
||||||
ownr_city
|
ownr_city
|
||||||
ownr_st
|
ownr_st
|
||||||
|
|||||||
@@ -127,11 +127,13 @@ function createLogEvent(socket, level, message) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function createXmlEvent(socket, xml, message, isError = false) {
|
function createXmlEvent(socket, xml, message, isError = false) {
|
||||||
socket.emit("log-event", {
|
if (LogLevelHierarchy(socket.log_level) >= LogLevelHierarchy("TRACE")) {
|
||||||
timestamp: new Date(),
|
socket.emit("log-event", {
|
||||||
level: isError ? "ERROR" : "TRACE",
|
timestamp: new Date(),
|
||||||
message: `${message}: ${xml}`,
|
level: isError ? "ERROR" : "TRACE",
|
||||||
});
|
message: `${message}: ${xml}`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
logger.log(
|
logger.log(
|
||||||
isError ? "ws-log-event-xml-error" : "ws-log-event-xml",
|
isError ? "ws-log-event-xml-error" : "ws-log-event-xml",
|
||||||
|
|||||||
Reference in New Issue
Block a user