IO-233 Insert DMS Vehicle
This commit is contained in:
@@ -53,7 +53,7 @@ export function DmsPostForm({ bodyshop, socket, 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,
|
||||||
...values,
|
txEnvelope: values,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -12,10 +12,12 @@ const CdkBase = require("../web-sockets/web-socket");
|
|||||||
const CdkWsdl = require("./cdk-wsdl").default;
|
const CdkWsdl = require("./cdk-wsdl").default;
|
||||||
const logger = require("../utils/logger");
|
const logger = require("../utils/logger");
|
||||||
const { CDK_CREDENTIALS, CheckCdkResponseForError } = require("./cdk-wsdl");
|
const { CDK_CREDENTIALS, CheckCdkResponseForError } = require("./cdk-wsdl");
|
||||||
|
const moment = require("moment");
|
||||||
|
|
||||||
exports.default = async function (socket, { jobid }) {
|
exports.default = async function (socket, { txEnvelope, jobid }) {
|
||||||
socket.logEvents = [];
|
socket.logEvents = [];
|
||||||
socket.recordid = jobid;
|
socket.recordid = jobid;
|
||||||
|
socket.txEnvelope = txEnvelope;
|
||||||
try {
|
try {
|
||||||
CdkBase.createLogEvent(
|
CdkBase.createLogEvent(
|
||||||
socket,
|
socket,
|
||||||
@@ -567,3 +569,71 @@ async function InsertDmsCustomer(socket, JobData, newCustomerNumber) {
|
|||||||
throw new Error(error);
|
throw new Error(error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function InsertDmsVehicle(socket, JobData) {
|
||||||
|
try {
|
||||||
|
const soapClientVehicleInsertUpdate = await soap.createClientAsync(
|
||||||
|
CdkWsdl.VehicleInsertUpdate
|
||||||
|
);
|
||||||
|
|
||||||
|
const soapResponseVehicleInsertUpdate =
|
||||||
|
await soapClientVehicleInsertUpdate.insertAsync({
|
||||||
|
arg0: CDK_CREDENTIALS,
|
||||||
|
arg1: { id: JobData.bodyshop.cdk_dealerid },
|
||||||
|
arg2: {
|
||||||
|
dealer: {
|
||||||
|
dealerNumber: JobData.bodyshop.cdk_dealerid,
|
||||||
|
VehicleId: socket.DmsVehId.vehiclesVehId,
|
||||||
|
},
|
||||||
|
manufacturer: {},
|
||||||
|
vehicle: {
|
||||||
|
DeliveryDate: moment().format("YYYYMMDD"),
|
||||||
|
Make: socket.txEnvelope.dms_make,
|
||||||
|
Model: socket.txEnvelope.dms_model,
|
||||||
|
ModelYear: JobData.v_model_yr,
|
||||||
|
OdometerStatus: socket.txEnvelope.kmout,
|
||||||
|
SaleClassValue: "MISC",
|
||||||
|
VIN: JobData.v_vin,
|
||||||
|
},
|
||||||
|
owners: {
|
||||||
|
id: {
|
||||||
|
assigningPartyId: "CURRENT",
|
||||||
|
value: socket.DmsCust.id.value,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
|
||||||
|
const [result, rawResponse, , rawRequest] = soapResponseVehicleInsertUpdate;
|
||||||
|
|
||||||
|
CdkBase.createXmlEvent(
|
||||||
|
socket,
|
||||||
|
rawRequest,
|
||||||
|
`soapClientVehicleInsertUpdate.insertAsync reqest.`
|
||||||
|
);
|
||||||
|
|
||||||
|
CdkBase.createLogEvent(
|
||||||
|
socket,
|
||||||
|
"TRACE",
|
||||||
|
`soapClientVehicleInsertUpdate.insertAsync Result ${JSON.stringify(
|
||||||
|
result,
|
||||||
|
null,
|
||||||
|
2
|
||||||
|
)}`
|
||||||
|
);
|
||||||
|
CdkBase.createXmlEvent(
|
||||||
|
socket,
|
||||||
|
rawResponse,
|
||||||
|
`soapClientVehicleInsertUpdate.insertAsync response.`
|
||||||
|
);
|
||||||
|
const VehicleFromDMS = result && result.return && result.return.vehicle;
|
||||||
|
return VehicleFromDMS;
|
||||||
|
} catch (error) {
|
||||||
|
CdkBase.createLogEvent(
|
||||||
|
socket,
|
||||||
|
"ERROR",
|
||||||
|
`Error in QueryDmsVehicleById - ${error}`
|
||||||
|
);
|
||||||
|
throw new Error(error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user