Helper lemma for verifying existence of fields
This commit is contained in:
parent
db9f5f38f7
commit
0514dc3387
1 changed files with 16 additions and 13 deletions
|
|
@ -121,6 +121,9 @@ export default {
|
|||
},
|
||||
|
||||
pushOrderToDataLayer() {
|
||||
// helper check for if an object is defined (but maybe falsey)
|
||||
const isDefined = (x) => x !== null && x !== undefined;
|
||||
|
||||
// Get correct order object
|
||||
const hasSubmittedOrder = store.getters.hasSubmittedOrder;
|
||||
const order = hasSubmittedOrder ? store.getters.submittedOrder : store.getters.order;
|
||||
|
|
@ -131,13 +134,13 @@ export default {
|
|||
// Service Zip
|
||||
if (
|
||||
order.serviceLocation.appointmentType === AppointmentTypeStrings.MOBILE &&
|
||||
order.serviceLocation.zipCode
|
||||
isDefined(order.serviceLocation.zipCode)
|
||||
) {
|
||||
payload.serviceZipCode = order.serviceLocation.zipCode;
|
||||
} else if (
|
||||
order.serviceLocation.appointmentType &&
|
||||
isDefined(order.serviceLocation.appointmentType) &&
|
||||
order.serviceLocation.appointmentType !== AppointmentTypeStrings.MOBILE &&
|
||||
order.serviceLocation.provider.address.zipCode
|
||||
isDefined(order.serviceLocation.provider.address.zipCode)
|
||||
) {
|
||||
payload.serviceZipCode = order.serviceLocation.provider.address.zipCode;
|
||||
} else {
|
||||
|
|
@ -145,14 +148,14 @@ export default {
|
|||
}
|
||||
|
||||
// Damage Type
|
||||
if (order.damage.isRepair !== null && order.damage.isRepair !== undefined) {
|
||||
if (isDefined(order.damage.isRepair)) {
|
||||
payload.damageType = order.damage.isRepair ? "repair" : "replace";
|
||||
} else {
|
||||
payload.damageType = "";
|
||||
}
|
||||
|
||||
// Account Type
|
||||
if (order.payment.isInsurance !== null && order.payment.isInsurance !== undefined) {
|
||||
if (isDefined(order.payment.isInsurance)) {
|
||||
payload.accountType = order.payment.isInsurance ? "insurance" : "cash";
|
||||
} else {
|
||||
payload.accountType = "";
|
||||
|
|
@ -169,26 +172,26 @@ export default {
|
|||
}
|
||||
|
||||
// Vehicle info
|
||||
if (order.vehicle.year !== null && order.vehicle.year !== undefined) {
|
||||
if (isDefined(order.vehicle.year)) {
|
||||
// Ensure cast to string.
|
||||
payload.vehicleYear = `${order.vehicle.year}`;
|
||||
} else {
|
||||
payload.vehicleYear = "";
|
||||
}
|
||||
|
||||
if (order.vehicle.make) {
|
||||
if (isDefined(order.vehicle.make)) {
|
||||
payload.vehicleMake = order.vehicle.make;
|
||||
} else {
|
||||
payload.vehicleMake = "";
|
||||
}
|
||||
|
||||
if (order.vehicle.model) {
|
||||
if (isDefined(order.vehicle.model)) {
|
||||
payload.vehicleModel = order.vehicle.model;
|
||||
} else {
|
||||
payload.vehicleModel = "";
|
||||
}
|
||||
|
||||
if (order.vehicle.style) {
|
||||
if (isDefined(order.vehicle.style)) {
|
||||
payload.vehicleStyle = order.vehicle.style;
|
||||
} else {
|
||||
payload.vehicleStyle = "";
|
||||
|
|
@ -206,21 +209,21 @@ export default {
|
|||
}
|
||||
|
||||
// Work Order Id
|
||||
if (order.workOrderId) {
|
||||
if (isDefined(order.workOrderId)) {
|
||||
payload.workOrderId = parseInt(order.workOrderId);
|
||||
} else {
|
||||
payload.workOrderId = "";
|
||||
}
|
||||
|
||||
// Provider Ctu
|
||||
if (order.serviceLocation.zipCodeCtu) {
|
||||
if (isDefined(order.serviceLocation.zipCodeCtu)) {
|
||||
payload.providerCtu = parseInt(order.serviceLocation.zipCodeCtu);
|
||||
} else {
|
||||
payload.providerCtu = "";
|
||||
}
|
||||
|
||||
// Work Order Number
|
||||
if (order.workOrderNumber) {
|
||||
if (isDefined(order.workOrderNumber)) {
|
||||
payload.orderNumber = order.workOrderNumber;
|
||||
} else {
|
||||
payload.orderNumber = "";
|
||||
|
|
@ -260,7 +263,7 @@ export default {
|
|||
}
|
||||
|
||||
// Appointment Type
|
||||
if (order.serviceLocation.appointmentType) {
|
||||
if (isDefined(order.serviceLocation.appointmentType)) {
|
||||
payload.appointmentType = order.serviceLocation.appointmentType;
|
||||
} else {
|
||||
payload.appointmentType = "";
|
||||
|
|
|
|||
Loading…
Reference in a new issue