From b29903c6444e1e99ca6ee437e53ffd510b9d7f9d Mon Sep 17 00:00:00 2001
From: Patrick Fic <>
Date: Wed, 29 Dec 2021 20:05:26 -0800
Subject: [PATCH 1/2] Cherrypick CDK Fixes.
---
server/cdk/cdk-job-export.js | 85 +++++++++++++++++++++---------------
1 file changed, 51 insertions(+), 34 deletions(-)
diff --git a/server/cdk/cdk-job-export.js b/server/cdk/cdk-job-export.js
index 497021805..9fe9ca92d 100644
--- a/server/cdk/cdk-job-export.js
+++ b/server/cdk/cdk-job-export.js
@@ -96,6 +96,7 @@ exports.default = async function (socket, { txEnvelope, jobid }) {
async function CdkSelectedCustomer(socket, selectedCustomerId) {
try {
+ socket.selectedCustomerId = selectedCustomerId;
if (selectedCustomerId) {
CdkBase.createLogEvent(
socket,
@@ -282,7 +283,12 @@ async function CalculateDmsVid(socket, JobData) {
)}`
);
CheckCdkResponseForError(socket, soapResponseVehicleInsertUpdate);
- return result && result.return && result.return[0];
+
+ //if (result && result.return && result.return.length > 1) {
+ return result.return.find((r) => r.vehiclesVehId);
+ //}
+
+ //return result && result.return && result.return[0];
} catch (error) {
CdkBase.createXmlEvent(
socket,
@@ -605,7 +611,7 @@ async function InsertDmsCustomer(socket, newCustomerNumber) {
contactInfo: {
mainTelephoneNumber: {
main: true,
- value: socket.JobData.ownr_ph1,
+ value: socket.JobData.ownr_ph1.replace(replaceSpecialRegex, ""),
},
email: {
desc: socket.JobData.ownr_ea ? "Other" : "CustomerDeclined",
@@ -773,45 +779,56 @@ async function UpdateDmsVehicle(socket) {
let ids = [];
- const existingOwnerinVeh =
- socket.DMSVeh &&
- socket.DMSVeh.owners &&
- socket.DMSVeh.owners.find((o) => o.id.value === socket.DMSCust.id.value);
+ //if it's a generic customer, don't update the vehicle owners.
- if (existingOwnerinVeh) {
- ids = socket.DMSVeh.owners.map((o) => {
- return {
- id: {
- assigningPartyId:
- o.id.value === socket.DMSCust.id.value ? "CURRENT" : "PREVIOUS",
- value: o.id.value,
- },
- };
- });
+ if (
+ socket.selectedCustomerId ===
+ socket.JobData.bodyshop.cdk_configuration.generic_customer_number
+ ) {
+ ids = socket.DMSVeh && socket.DMSVeh.owners && socket.DMSVeh.owners;
} else {
- const oldOwner =
+ const existingOwnerinVeh =
socket.DMSVeh &&
socket.DMSVeh.owners &&
- socket.DMSVeh.owners.find((o) => o.id.assigningPartyId === "CURRENT");
+ socket.DMSVeh.owners.find(
+ (o) => o.id.value === socket.DMSCust.id.value
+ );
- ids = [
- {
- id: {
- assigningPartyId: "CURRENT",
- value: socket.DMSCust.id.value,
+ if (existingOwnerinVeh) {
+ ids = socket.DMSVeh.owners.map((o) => {
+ return {
+ id: {
+ assigningPartyId:
+ o.id.value === socket.DMSCust.id.value ? "CURRENT" : "PREVIOUS",
+ value: o.id.value,
+ },
+ };
+ });
+ } else {
+ const oldOwner =
+ socket.DMSVeh &&
+ socket.DMSVeh.owners &&
+ socket.DMSVeh.owners.find((o) => o.id.assigningPartyId === "CURRENT");
+
+ ids = [
+ {
+ id: {
+ assigningPartyId: "CURRENT",
+ value: socket.DMSCust.id.value,
+ },
},
- },
- ...(oldOwner
- ? [
- {
- id: {
- assigningPartyId: "PREVIOUS",
- value: oldOwner.id.value,
+ ...(oldOwner
+ ? [
+ {
+ id: {
+ assigningPartyId: "PREVIOUS",
+ value: oldOwner.id.value,
+ },
},
- },
- ]
- : []),
- ];
+ ]
+ : []),
+ ];
+ }
}
const soapResponseVehicleInsertUpdate =
From ebde2516b7abcd490a6012357103ea2e7718ee69 Mon Sep 17 00:00:00 2001
From: Patrick Fic <>
Date: Wed, 29 Dec 2021 21:55:02 -0800
Subject: [PATCH 2/2] Expose in service date for CDK.
---
bodyshop_translations.babel | 21 +++++++++++++++++++
.../dms-post-form/dms-post-form.component.jsx | 9 ++++++++
client/src/translations/en_us/common.json | 1 +
client/src/translations/es/common.json | 1 +
client/src/translations/fr/common.json | 1 +
server/cdk/cdk-job-export.js | 20 +++++++++++++-----
6 files changed, 48 insertions(+), 5 deletions(-)
diff --git a/bodyshop_translations.babel b/bodyshop_translations.babel
index c6fbd2117..263f5d6fc 100644
--- a/bodyshop_translations.babel
+++ b/bodyshop_translations.babel
@@ -20474,6 +20474,27 @@
+
+ inservicedate
+ false
+
+
+
+
+
+ en-US
+ false
+
+
+ es-MX
+ false
+
+
+ fr-CA
+ false
+
+
+
journal
false
diff --git a/client/src/components/dms-post-form/dms-post-form.component.jsx b/client/src/components/dms-post-form/dms-post-form.component.jsx
index 44b1f86fb..bcd31e5be 100644
--- a/client/src/components/dms-post-form/dms-post-form.component.jsx
+++ b/client/src/components/dms-post-form/dms-post-form.component.jsx
@@ -2,6 +2,7 @@ import { DeleteFilled, DownOutlined } from "@ant-design/icons";
import {
Button,
Card,
+ DatePicker,
Divider,
Dropdown,
Form,
@@ -24,6 +25,7 @@ import DmsCdkMakes from "../dms-cdk-makes/dms-cdk-makes.component";
import DmsCdkMakesRefetch from "../dms-cdk-makes/dms-cdk-makes.refetch.component";
import CurrencyInput from "../form-items-formatted/currency-form-item.component";
import LayoutFormRow from "../layout-form-row/layout-form-row.component";
+import moment from "moment";
const mapStateToProps = createStructuredSelector({
bodyshop: selectBodyshop,
@@ -82,6 +84,7 @@ export function DmsPostForm({ bodyshop, socket, job, logsRef }) {
ro_number: job.ro_number,
area_of_damage: job.area_of_damage && job.area_of_damage.impact1,
}).substr(0, 239),
+ inservicedate: moment("2019-01-01"),
}}
>
@@ -154,6 +157,12 @@ export function DmsPostForm({ bodyshop, socket, job, logsRef }) {
>
+
+
+
diff --git a/client/src/translations/en_us/common.json b/client/src/translations/en_us/common.json
index bfabd708d..7552ed34e 100644
--- a/client/src/translations/en_us/common.json
+++ b/client/src/translations/en_us/common.json
@@ -1248,6 +1248,7 @@
"dms_model": "DMS Model",
"dms_wip_acctnumber": "Cost WIP DMS Acct #",
"id": "DMS ID",
+ "inservicedate": "In Service Date",
"journal": "Journal #",
"name1": "Customer Name",
"payer": {
diff --git a/client/src/translations/es/common.json b/client/src/translations/es/common.json
index 0edd70d22..60d916187 100644
--- a/client/src/translations/es/common.json
+++ b/client/src/translations/es/common.json
@@ -1248,6 +1248,7 @@
"dms_model": "",
"dms_wip_acctnumber": "",
"id": "",
+ "inservicedate": "",
"journal": "",
"name1": "",
"payer": {
diff --git a/client/src/translations/fr/common.json b/client/src/translations/fr/common.json
index f1debe9fd..c0dfdc456 100644
--- a/client/src/translations/fr/common.json
+++ b/client/src/translations/fr/common.json
@@ -1248,6 +1248,7 @@
"dms_model": "",
"dms_wip_acctnumber": "",
"id": "",
+ "inservicedate": "",
"journal": "",
"name1": "",
"payer": {
diff --git a/server/cdk/cdk-job-export.js b/server/cdk/cdk-job-export.js
index 9fe9ca92d..2a78af167 100644
--- a/server/cdk/cdk-job-export.js
+++ b/server/cdk/cdk-job-export.js
@@ -611,7 +611,9 @@ async function InsertDmsCustomer(socket, newCustomerNumber) {
contactInfo: {
mainTelephoneNumber: {
main: true,
- value: socket.JobData.ownr_ph1.replace(replaceSpecialRegex, ""),
+ value:
+ socket.JobData.ownr_ph1 &&
+ socket.JobData.ownr_ph1.replace(replaceSpecialRegex, ""),
},
email: {
desc: socket.JobData.ownr_ea ? "Other" : "CustomerDeclined",
@@ -712,7 +714,11 @@ async function InsertDmsVehicle(socket) {
arg2: {
dealer: {
dealerNumber: socket.JobData.bodyshop.cdk_dealerid,
- inServiceDate: moment().startOf("day").toISOString(),
+ ...(socket.txEnvelope.inservicedate && {
+ inServiceDate: moment(socket.txEnvelope.inservicedate)
+ .startOf("day")
+ .toISOString(),
+ }),
vehicleId: socket.DMSVid.vehiclesVehId,
},
manufacturer: {},
@@ -839,9 +845,13 @@ async function UpdateDmsVehicle(socket) {
...socket.DMSVeh,
dealer: {
...socket.DMSVeh.dealer,
- inServiceDate: moment(
- socket.DMSVeh.dealer.inServiceDate
- ).toISOString(),
+ ...((socket.txEnvelope.inservicedate ||
+ socket.DMSVeh.dealer.inServiceDate) && {
+ inServiceDate: moment(
+ socket.DMSVeh.dealer.inServiceDate ||
+ socket.txEnvelope.inservicedate
+ ).toISOString(),
+ }),
},
vehicle: {
...socket.DMSVeh.vehicle,