diff --git a/client/src/pages/dms/dms.container.jsx b/client/src/pages/dms/dms.container.jsx index 78f86a0c6..afc67a4a7 100644 --- a/client/src/pages/dms/dms.container.jsx +++ b/client/src/pages/dms/dms.container.jsx @@ -48,7 +48,7 @@ export const socket = SocketIO( export function DmsContainer({ bodyshop, setBreadcrumbs, setSelectedHeader, insertAuditTrail }) { const { t } = useTranslation(); - const [logLevel, setLogLevel] = useState("DEBUG"); + const [logLevel, setLogLevel] = useState(determineDmsType(bodyshop) === "pbs" ? "INFO" : "DEBUG"); const history = useNavigate(); const [logs, setLogs] = useState([]); const search = queryString.parse(useLocation().search); diff --git a/server/accounting/pbs/pbs-job-export.js b/server/accounting/pbs/pbs-job-export.js index ca008f9fe..b18e8e359 100644 --- a/server/accounting/pbs/pbs-job-export.js +++ b/server/accounting/pbs/pbs-job-export.js @@ -629,7 +629,8 @@ async function CreateRepairOrderInPBS(socket) { CdkBase.createLogEvent(socket, "INFO", `No repair orders found for vehicle. Inserting record.`); } else if (RepairOrders.length > 0) { - //Find out if it's a matching RO. + //Find out if it's a matching RO. + //This logic is used because the integration will simply add another line to an open RO if it exists. const matchingRo = RepairOrders.find(ro => ro.Memo?.toLowerCase()?.includes(socket.JobData.ro_number.toLowerCase())) if (!matchingRo) { CdkBase.createLogEvent(socket, "INFO", `ROs found for vehicle, but none match. Inserting record.`); @@ -677,18 +678,18 @@ async function RepairOrderGet(socket) { } } -async function RepairOrderChange(socket, PbsROObject) { +async function RepairOrderChange(socket) { try { const { data: RepairOrderChangeResponse } = await axios.post( PBS_ENDPOINTS.RepairOrderChange, - { + { //Additional details at https://partnerhub.pbsdealers.com/json/metadata?op=RepairOrderChange "RepairOrderInfo": { //"Id": "string/00000000-0000-0000-0000-000000000000", //"RepairOrderId": "00000000000000000000000000000000", SerialNumber: socket.JobData.bodyshop.pbs_serialnumber, - "RepairOrderNumber": "00000000000000000000000000000000", + "RepairOrderNumber": "00000000000000000000000000000000", //This helps force a new RO. "RawRepairOrderNumber": "00000000000000000000000000000000", - // "RepairOrderNumber": socket.JobData.ro_number, + // "RepairOrderNumber": socket.JobData.ro_number, //These 2 values are ignored as confirmed by PBS. // "RawRepairOrderNumber": socket.JobData.ro_number, "DateOpened": moment(), // "DateOpenedUTC": "0001-01-01T00:00:00.0000000Z", @@ -705,16 +706,8 @@ async function RepairOrderChange(socket, PbsROObject) { "ContactRef": socket.ownerRef?.ReferenceId, "VehicleRef": socket.vehicleRef?.ReferenceId, "MileageIn": socket.JobData.km_in, - // "MileageOut": 0, "Tag": "BODYSHOP", - // "Location": "String", - // "IsWaiter": false, - // "IsComeback": false, - // "Shop": "String", - // "ChargeType": "String", - // "PurchaseOrderNumber": "String", - // "Transportation": "String", - "Status": "CLOSED", //This does not impact the status. + //"Status": "CLOSED", //Values here do not impact the status. Confirmed by PBS support. Requests: [ { // "RepairOrderRequestRef": "b1842ecad62c4279bbc2fef4f6bf6cde", @@ -723,7 +716,7 @@ async function RepairOrderChange(socket, PbsROObject) { // "CSRRef": "1ce12ac692564e94bda955d529ee911a", // "Skill": "GEN", "RequestCode": "MISC", - "RequestDescription": "VEHICLE REPAIRED AT BODYSHOP. PLEASE REFERENCE IMEX SHOP MANAGEMENT SYSTEM.", + "RequestDescription": `VEHICLE REPAIRED AT BODYSHOP. PLEASE REFERENCE IMEX SHOP MANAGEMENT SYSTEM. ${socket.txEnvelope.story}`, "Status": "Completed", // "TechRef": "00000000000000000000000000000000", "AllowedHours": 0, @@ -758,860 +751,12 @@ async function RepairOrderChange(socket, PbsROObject) { "ServiceFeeTotal": 0, "OEMDiscount": 0 }, - // "Coupons": [], - // "PriceCode": "C", - // "JobGoodWill": false, - // "OriginType": "OperationCode", "LineType": "RequestLine", - // "TireStorageType": 0, - // "IsDeleted": false, - // "InspectionRef": "00000000000000000000000000000000", - // "AWRTechCSRRef": "00000000000000000000000000000000", - // "DisplayInWebAppointments": false, - // "Severity": "Low" }, ], - // "Requests": [ - // { - // "RepairOrderRequestRef": "00000000000000000000000000000000", - // "RepairOrderRequestId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Skill": "String", - // "RequestCode": "String", - // "RequestDescription": "String", - // "Cause": "String", - // "Correction": "String", - // "Status": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "AllowedHours": 0, - // "EstimateLabour": 0, - // "EstimateParts": 0, - // "ComeBack": false, - // "AddedOperation": false, - // "PartLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "PartRequestLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "LabourLines": [ - // { - // "RepairOrderLabourLineRef": "00000000000000000000000000000000", - // "RepairOrderLabourLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "OpCode": "String", - // "OpDescription": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "ActualHours": 0, - // "SoldHours": 0, - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "PriceCodeType": 0, - // "PriceOverride": "String", - // "GMItemId": "String", - // "GMOPCode": "String" - // } - // ], - // "SubletLines": [ - // { - // "RepairOrderSubletLineRef": "00000000000000000000000000000000", - // "RepairOrderSubletLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Description": "String", - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0 - // } - // ], - // "TimePunches": [ - // { - // "StartTime": "0001-01-01T00:00:00.0000000Z", - // "StopTime": "0001-01-01T00:00:00.0000000Z", - // "StartTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "StopTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000" - // } - // ], - // "Summary": { - // "Labour": 0, - // "Parts": 0, - // "OilGas": 0, - // "SubletTow": 0, - // "Misc": 0, - // "Environment": 0, - // "ShopSupplies": 0, - // "Freight": 0, - // "WarrantyDeductible": 0, - // "Discount": 0, - // "SubTotal": 0, - // "Tax1": 0, - // "Tax2": 0, - // "InvoiceTotal": 0, - // "CustomerDeductible": 0, - // "CustomerDeductibleBillableDescription": "String", - // "GrandTotal": 0, - // "Status": "String", - // "DateCashiered": "0001-01-01T00:00:00.0000000Z", - // "LabourDiscount": 0, - // "PartDiscount": 0, - // "ServiceFeeTotal": 0, - // "OEMDiscount": 0 - // }, - // "Coupons": [{ "Code": "String", "Description": "String", "Amount": 0 }], - // "PriceCode": "String", - // "JobGoodWill": false, - // "JobReferback": "String", - // "ClaimNumber": "String", - // "OriginType": "String", - // "PartnerAddedReq": "String", - // "LineType": "RequestLine", - // "MenuPackagePriceType": "String", - // "TireStorageType": 0, - // "IsDeleted": false, - // "InspectionRef": "00000000000000000000000000000000", - // "AWRTechCSR": "String", - // "AWRTechCSRRef": "00000000000000000000000000000000", - // "FailureCode": "String", - // "DisplayInWebAppointments": false, - // "MarkedForDeletion": false, - // "Reason": "String", - // "Severity": "String", - // "JobNote": "String" - // } - // ], - // "CustomerSummary": { - // "Labour": 0, - // "Parts": 0, - // "OilGas": 0, - // "SubletTow": 0, - // "Misc": 0, - // "Environment": 0, - // "ShopSupplies": 0, - // "Freight": 0, - // "WarrantyDeductible": 0, - // "Discount": 0, - // "SubTotal": 0, - // "Tax1": 0, - // "Tax2": 0, - // "InvoiceTotal": 0, - // "CustomerDeductible": 0, - // "CustomerDeductibleBillableDescription": "String", - // "GrandTotal": 0, - // "Status": "String", - // "DateCashiered": "0001-01-01T00:00:00.0000000Z", - // "LabourDiscount": 0, - // "PartDiscount": 0, - // "ServiceFeeTotal": 0, - // "OEMDiscount": 0 - // }, - // "WarrantySummary": { - // "Labour": 0, - // "Parts": 0, - // "OilGas": 0, - // "SubletTow": 0, - // "Misc": 0, - // "Environment": 0, - // "ShopSupplies": 0, - // "Freight": 0, - // "WarrantyDeductible": 0, - // "Discount": 0, - // "SubTotal": 0, - // "Tax1": 0, - // "Tax2": 0, - // "InvoiceTotal": 0, - // "CustomerDeductible": 0, - // "CustomerDeductibleBillableDescription": "String", - // "GrandTotal": 0, - // "Status": "String", - // "DateCashiered": "0001-01-01T00:00:00.0000000Z", - // "LabourDiscount": 0, - // "PartDiscount": 0, - // "ServiceFeeTotal": 0, - // "OEMDiscount": 0 - // }, - // "InternalSummary": { - // "Labour": 0, - // "Parts": 0, - // "OilGas": 0, - // "SubletTow": 0, - // "Misc": 0, - // "Environment": 0, - // "ShopSupplies": 0, - // "Freight": 0, - // "WarrantyDeductible": 0, - // "Discount": 0, - // "SubTotal": 0, - // "Tax1": 0, - // "Tax2": 0, - // "InvoiceTotal": 0, - // "CustomerDeductible": 0, - // "CustomerDeductibleBillableDescription": "String", - // "GrandTotal": 0, - // "Status": "String", - // "DateCashiered": "0001-01-01T00:00:00.0000000Z", - // "LabourDiscount": 0, - // "PartDiscount": 0, - // "ServiceFeeTotal": 0, - // "OEMDiscount": 0 - // }, - // "Loaner": { - // "VehicleRef": "00000000000000000000000000000000", - // "FriendlyId": "String", - // "DatePickup": "0001-01-01T00:00:00.0000000Z", - // "DateDropOff": "0001-01-01T00:00:00.0000000Z", - // "OdomPickup": 0, - // "OdomDropOff": 0, - // "AgreementNumber": 0, - // "Comments": "String" - // }, + "Memo": socket.txEnvelope.story, - // "MemoCustomerCopy": false, - // "AppointmentNumber": 0, - // "AppointmentRef": "00000000000000000000000000000000", - // "LastUpdate": "0001-01-01T00:00:00.0000000Z", - // "IsHardCopyPrinted": false, - // "PendingRequests": [ - // { - // "RepairOrderRequestRef": "00000000000000000000000000000000", - // "RepairOrderRequestId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Skill": "String", - // "RequestCode": "String", - // "RequestDescription": "String", - // "Cause": "String", - // "Correction": "String", - // "Status": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "AllowedHours": 0, - // "EstimateLabour": 0, - // "EstimateParts": 0, - // "ComeBack": false, - // "AddedOperation": false, - // "PartLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "PartRequestLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "LabourLines": [ - // { - // "RepairOrderLabourLineRef": "00000000000000000000000000000000", - // "RepairOrderLabourLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "OpCode": "String", - // "OpDescription": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "ActualHours": 0, - // "SoldHours": 0, - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "PriceCodeType": 0, - // "PriceOverride": "String", - // "GMItemId": "String", - // "GMOPCode": "String" - // } - // ], - // "SubletLines": [ - // { - // "RepairOrderSubletLineRef": "00000000000000000000000000000000", - // "RepairOrderSubletLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Description": "String", - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0 - // } - // ], - // "TimePunches": [ - // { - // "StartTime": "0001-01-01T00:00:00.0000000Z", - // "StopTime": "0001-01-01T00:00:00.0000000Z", - // "StartTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "StopTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000" - // } - // ], - // "Summary": { - // "Labour": 0, - // "Parts": 0, - // "OilGas": 0, - // "SubletTow": 0, - // "Misc": 0, - // "Environment": 0, - // "ShopSupplies": 0, - // "Freight": 0, - // "WarrantyDeductible": 0, - // "Discount": 0, - // "SubTotal": 0, - // "Tax1": 0, - // "Tax2": 0, - // "InvoiceTotal": 0, - // "CustomerDeductible": 0, - // "CustomerDeductibleBillableDescription": "String", - // "GrandTotal": 0, - // "Status": "String", - // "DateCashiered": "0001-01-01T00:00:00.0000000Z", - // "LabourDiscount": 0, - // "PartDiscount": 0, - // "ServiceFeeTotal": 0, - // "OEMDiscount": 0 - // }, - // "Coupons": [{ "Code": "String", "Description": "String", "Amount": 0 }], - // "PriceCode": "String", - // "JobGoodWill": false, - // "JobReferback": "String", - // "ClaimNumber": "String", - // "OriginType": "String", - // "PartnerAddedReq": "String", - // "LineType": "RequestLine", - // "MenuPackagePriceType": "String", - // "TireStorageType": 0, - // "IsDeleted": false, - // "InspectionRef": "00000000000000000000000000000000", - // "AWRTechCSR": "String", - // "AWRTechCSRRef": "00000000000000000000000000000000", - // "FailureCode": "String", - // "DisplayInWebAppointments": false, - // "MarkedForDeletion": false, - // "Reason": "String", - // "Severity": "String", - // "JobNote": "String" - // } - // ], - // "DeferredRequests": [ - // { - // "RepairOrderRequestRef": "00000000000000000000000000000000", - // "RepairOrderRequestId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Skill": "String", - // "RequestCode": "String", - // "RequestDescription": "String", - // "Cause": "String", - // "Correction": "String", - // "Status": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "AllowedHours": 0, - // "EstimateLabour": 0, - // "EstimateParts": 0, - // "ComeBack": false, - // "AddedOperation": false, - // "PartLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "PartRequestLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "LabourLines": [ - // { - // "RepairOrderLabourLineRef": "00000000000000000000000000000000", - // "RepairOrderLabourLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "OpCode": "String", - // "OpDescription": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "ActualHours": 0, - // "SoldHours": 0, - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "PriceCodeType": 0, - // "PriceOverride": "String", - // "GMItemId": "String", - // "GMOPCode": "String" - // } - // ], - // "SubletLines": [ - // { - // "RepairOrderSubletLineRef": "00000000000000000000000000000000", - // "RepairOrderSubletLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Description": "String", - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0 - // } - // ], - // "TimePunches": [ - // { - // "StartTime": "0001-01-01T00:00:00.0000000Z", - // "StopTime": "0001-01-01T00:00:00.0000000Z", - // "StartTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "StopTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000" - // } - // ], - // "Summary": { - // "Labour": 0, - // "Parts": 0, - // "OilGas": 0, - // "SubletTow": 0, - // "Misc": 0, - // "Environment": 0, - // "ShopSupplies": 0, - // "Freight": 0, - // "WarrantyDeductible": 0, - // "Discount": 0, - // "SubTotal": 0, - // "Tax1": 0, - // "Tax2": 0, - // "InvoiceTotal": 0, - // "CustomerDeductible": 0, - // "CustomerDeductibleBillableDescription": "String", - // "GrandTotal": 0, - // "Status": "String", - // "DateCashiered": "0001-01-01T00:00:00.0000000Z", - // "LabourDiscount": 0, - // "PartDiscount": 0, - // "ServiceFeeTotal": 0, - // "OEMDiscount": 0 - // }, - // "Coupons": [{ "Code": "String", "Description": "String", "Amount": 0 }], - // "PriceCode": "String", - // "JobGoodWill": false, - // "JobReferback": "String", - // "ClaimNumber": "String", - // "OriginType": "String", - // "PartnerAddedReq": "String", - // "LineType": "RequestLine", - // "MenuPackagePriceType": "String", - // "TireStorageType": 0, - // "IsDeleted": false, - // "InspectionRef": "00000000000000000000000000000000", - // "AWRTechCSR": "String", - // "AWRTechCSRRef": "00000000000000000000000000000000", - // "FailureCode": "String", - // "DisplayInWebAppointments": false, - // "MarkedForDeletion": false, - // "Reason": "String", - // "Severity": "String", - // "JobNote": "String" - // } - // ], - // "CancelledRequests": [ - // { - // "RepairOrderRequestRef": "00000000000000000000000000000000", - // "RepairOrderRequestId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Skill": "String", - // "RequestCode": "String", - // "RequestDescription": "String", - // "Cause": "String", - // "Correction": "String", - // "Status": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "AllowedHours": 0, - // "EstimateLabour": 0, - // "EstimateParts": 0, - // "ComeBack": false, - // "AddedOperation": false, - // "PartLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "PartRequestLines": [ - // { - // "RepairOrderPartsLineRef": "00000000000000000000000000000000", - // "RepairOrderPartsLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "PartRef": "00000000000000000000000000000000", - // "PartNumber": "String", - // "PartDescription": "String", - // "Requested": 0, - // "Shipped": 0, - // "Ordered": 0, - // "PriceCode": "String", - // "Cost": 0, - // "UnitPrice": 0, - // "ExtendedPrice": 0, - // "NoHistory": false, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "OriginalSerialNumber": "String", - // "ReplacementSerialNumber": "String", - // "IsPartsKit": false, - // "PartsKitName": "String", - // "Comment": "String", - // "PriceOverride": "String", - // "GMItemId": "String", - // "BIN": "String", - // "PartsRequestType": "Inquiry", - // "IsTransferred": false, - // "IsPickTicketPrinted": false, - // "SpecialOrderRef": "00000000000000000000000000000000" - // } - // ], - // "LabourLines": [ - // { - // "RepairOrderLabourLineRef": "00000000000000000000000000000000", - // "RepairOrderLabourLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "OpCode": "String", - // "OpDescription": "String", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000", - // "ActualHours": 0, - // "SoldHours": 0, - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0, - // "Discount": 0, - // "PriceCodeType": 0, - // "PriceOverride": "String", - // "GMItemId": "String", - // "GMOPCode": "String" - // } - // ], - // "SubletLines": [ - // { - // "RepairOrderSubletLineRef": "00000000000000000000000000000000", - // "RepairOrderSubletLineId": 0, - // "CSR": "String", - // "CSRRef": "00000000000000000000000000000000", - // "Description": "String", - // "PriceCode": "String", - // "Price": 0, - // "Cost": 0, - // "Tax1": 0, - // "Tax2": 0 - // } - // ], - // "TimePunches": [ - // { - // "StartTime": "0001-01-01T00:00:00.0000000Z", - // "StopTime": "0001-01-01T00:00:00.0000000Z", - // "StartTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "StopTimeLocal": "0001-01-01T00:00:00.0000000+00:00", - // "Tech": "String", - // "TechRef": "00000000000000000000000000000000" - // } - // ], - // "Summary": { - // "Labour": 0, - // "Parts": 0, - // "OilGas": 0, - // "SubletTow": 0, - // "Misc": 0, - // "Environment": 0, - // "ShopSupplies": 0, - // "Freight": 0, - // "WarrantyDeductible": 0, - // "Discount": 0, - // "SubTotal": 0, - // "Tax1": 0, - // "Tax2": 0, - // "InvoiceTotal": 0, - // "CustomerDeductible": 0, - // "CustomerDeductibleBillableDescription": "String", - // "GrandTotal": 0, - // "Status": "String", - // "DateCashiered": "0001-01-01T00:00:00.0000000Z", - // "LabourDiscount": 0, - // "PartDiscount": 0, - // "ServiceFeeTotal": 0, - // "OEMDiscount": 0 - // }, - // "Coupons": [{ "Code": "String", "Description": "String", "Amount": 0 }], - // "PriceCode": "String", - // "JobGoodWill": false, - // "JobReferback": "String", - // "ClaimNumber": "String", - // "OriginType": "String", - // "PartnerAddedReq": "String", - // "LineType": "RequestLine", - // "MenuPackagePriceType": "String", - // "TireStorageType": 0, - // "IsDeleted": false, - // "InspectionRef": "00000000000000000000000000000000", - // "AWRTechCSR": "String", - // "AWRTechCSRRef": "00000000000000000000000000000000", - // "FailureCode": "String", - // "DisplayInWebAppointments": false, - // "MarkedForDeletion": false, - // "Reason": "String", - // "Severity": "String", - // "JobNote": "String" - // } - // ], - // "Priority": 0, - // "TodayPhoneNumber": "String", - // "NotifyType": "String", - // "IncludeInternalPricing": false, - // "VINInquiryPerformed": false, - // "SONote": "String", - // "AlternateStartAddress": { - // "Name": "String", - // "Address": "String", - // "City": "String", - // "Province": "String", - // "PostalCode": "String", - // "AdditionalInfo": "String" - // }, - // "AlternateEndAddress": { - // "Name": "String", - // "Address": "String", - // "City": "String", - // "Province": "String", - // "PostalCode": "String", - // "AdditionalInfo": "String" - // } + }, "IsAsynchronous": false, // "UserRequest": "String",