feature/IO-3357-Reynolds-and-Reynolds-DMS-API-Integration - Checkpoint

This commit is contained in:
Dave
2025-10-08 13:57:34 -04:00
parent 2ffc4b81f4
commit de02b34a63
28 changed files with 2550 additions and 2443 deletions

View File

@@ -1,158 +1,117 @@
<rr:RepairOrderInsertRq xmlns:rr="http://reynoldsandrey.com/">
<!-- Optional request metadata -->
{{#RequestId}}<rr:RequestId>{{RequestId}}</rr:RequestId>{{/RequestId}}
{{#Environment}}<rr:Environment>{{Environment}}</rr:Environment>{{/Environment}}
<rr:Dealer>
<rr:DealerCode>{{DealerCode}}</rr:DealerCode>
{{#DealerName}}<rr:DealerName>{{DealerName}}</rr:DealerName>{{/DealerName}}
{{#DealerNumber}}<rr:DealerNumber>{{DealerNumber}}</rr:DealerNumber>{{/DealerNumber}}
{{#StoreNumber}}<rr:StoreNumber>{{StoreNumber}}</rr:StoreNumber>{{/StoreNumber}}
{{#BranchNumber}}<rr:BranchNumber>{{BranchNumber}}</rr:BranchNumber>{{/BranchNumber}}
</rr:Dealer>
<rr:RepairOrder>
<rr:RepairOrderNumber>{{RepairOrderNumber}}</rr:RepairOrderNumber>
{{#DmsRepairOrderId}}<rr:DmsRepairOrderId>{{DmsRepairOrderId}}</rr:DmsRepairOrderId>{{/DmsRepairOrderId}}
<!-- Core dates -->
{{#OpenDate}}<rr:OpenDate>{{OpenDate}}</rr:OpenDate>{{/OpenDate}}
{{#PromisedDate}}<rr:PromisedDate>{{PromisedDate}}</rr:PromisedDate>{{/PromisedDate}}
{{#CloseDate}}<rr:CloseDate>{{CloseDate}}</rr:CloseDate>{{/CloseDate}}
<!-- People & routing -->
{{#ServiceAdvisorId}}<rr:ServiceAdvisorId>{{ServiceAdvisorId}}</rr:ServiceAdvisorId>{{/ServiceAdvisorId}}
{{#TechnicianId}}<rr:TechnicianId>{{TechnicianId}}</rr:TechnicianId>{{/TechnicianId}}
{{#Department}}<rr:Department>{{Department}}</rr:Department>{{/Department}}
{{#ProfitCenter}}<rr:ProfitCenter>{{ProfitCenter}}</rr:ProfitCenter>{{/ProfitCenter}}
<!-- Type & status -->
{{#ROType}}<rr:ROType>{{ROType}}</rr:ROType>{{/ROType}}
{{#Status}}<rr:Status>{{Status}}</rr:Status>{{/Status}}
{{#IsBodyShop}}<rr:IsBodyShop>{{IsBodyShop}}</rr:IsBodyShop>{{/IsBodyShop}}
{{#DRPFlag}}<rr:DRPFlag>{{DRPFlag}}</rr:DRPFlag>{{/DRPFlag}}
<!-- Customer -->
<rr:Customer>
<rr:CustomerId>{{CustomerId}}</rr:CustomerId>
{{#CustomerName}}<rr:CustomerName>{{CustomerName}}</rr:CustomerName>{{/CustomerName}}
{{#PhoneNumber}}<rr:PhoneNumber>{{PhoneNumber}}</rr:PhoneNumber>{{/PhoneNumber}}
{{#EmailAddress}}<rr:EmailAddress>{{EmailAddress}}</rr:EmailAddress>{{/EmailAddress}}
<!-- Optional address if you have it -->
{{#Address}}
<rr:Address>
{{#Line1}}<rr:Line1>{{Line1}}</rr:Line1>{{/Line1}}
{{#Line2}}<rr:Line2>{{Line2}}</rr:Line2>{{/Line2}}
{{#City}}<rr:City>{{City}}</rr:City>{{/City}}
{{#State}}<rr:State>{{State}}</rr:State>{{/State}}
{{#PostalCode}}<rr:PostalCode>{{PostalCode}}</rr:PostalCode>{{/PostalCode}}
{{#Country}}<rr:Country>{{Country}}</rr:Country>{{/Country}}
</rr:Address>
{{/Address}}
</rr:Customer>
<!-- Vehicle -->
<rr:Vehicle>
{{#VehicleId}}<rr:VehicleId>{{VehicleId}}</rr:VehicleId>{{/VehicleId}}
{{#VIN}}<rr:VIN>{{VIN}}</rr:VIN>{{/VIN}}
{{#LicensePlate}}<rr:LicensePlate>{{LicensePlate}}</rr:LicensePlate>{{/LicensePlate}}
{{#Year}}<rr:Year>{{Year}}</rr:Year>{{/Year}}
{{#Make}}<rr:Make>{{Make}}</rr:Make>{{/Make}}
{{#Model}}<rr:Model>{{Model}}</rr:Model>{{/Model}}
{{#Odometer}}<rr:Odometer>{{Odometer}}</rr:Odometer>{{/Odometer}}
{{#Color}}<rr:Color>{{Color}}</rr:Color>{{/Color}}
</rr:Vehicle>
<!-- Job lines -->
{{#JobLines}}
<rr:JobLine>
<rr:Sequence>{{Sequence}}</rr:Sequence>
{{#ParentSequence}}<rr:ParentSequence>{{ParentSequence}}</rr:ParentSequence>{{/ParentSequence}}
{{#LineType}}<rr:LineType>
{{LineType}}</rr:LineType>{{/LineType}} <!-- LABOR | PART | MISC | FEE | DISCOUNT -->
{{#Category}}<rr:Category>
{{Category}}</rr:Category>{{/Category}} <!-- e.g., BODY, PAINT, GLASS -->
{{#OpCode}}<rr:OpCode>{{OpCode}}</rr:OpCode>{{/OpCode}}
{{#Description}}<rr:Description>{{Description}}</rr:Description>{{/Description}}
<!-- Labor fields -->
{{#LaborHours}}<rr:LaborHours>{{LaborHours}}</rr:LaborHours>{{/LaborHours}}
{{#LaborRate}}<rr:LaborRate>{{LaborRate}}</rr:LaborRate>{{/LaborRate}}
<!-- Part fields -->
{{#PartNumber}}<rr:PartNumber>{{PartNumber}}</rr:PartNumber>{{/PartNumber}}
{{#PartDescription}}<rr:PartDescription>{{PartDescription}}</rr:PartDescription>{{/PartDescription}}
<!-- Amounts -->
{{#Quantity}}<rr:Quantity>{{Quantity}}</rr:Quantity>{{/Quantity}}
{{#UnitPrice}}<rr:UnitPrice>{{UnitPrice}}</rr:UnitPrice>{{/UnitPrice}}
{{#ExtendedPrice}}<rr:ExtendedPrice>{{ExtendedPrice}}</rr:ExtendedPrice>{{/ExtendedPrice}}
{{#DiscountAmount}}<rr:DiscountAmount>{{DiscountAmount}}</rr:DiscountAmount>{{/DiscountAmount}}
{{#TaxCode}}<rr:TaxCode>{{TaxCode}}</rr:TaxCode>{{/TaxCode}}
{{#GLAccount}}<rr:GLAccount>{{GLAccount}}</rr:GLAccount>{{/GLAccount}}
{{#ControlNumber}}<rr:ControlNumber>{{ControlNumber}}</rr:ControlNumber>{{/ControlNumber}}
<!-- Tax details (optional) -->
{{#Taxes}}
<rr:Taxes>
<rey_RomeCreateBSMRepairOrderReq xmlns="{{STAR_NS}}" revision="1.0">
<BSMRepairOrderReq>
<RepairOrder>
<RepairOrderNumber>{{RepairOrderNumber}}</RepairOrderNumber>
{{#DmsRepairOrderId}}<DmsRepairOrderId>{{DmsRepairOrderId}}</DmsRepairOrderId>{{/DmsRepairOrderId}}
{{#OpenDate}}<OpenDate>{{OpenDate}}</OpenDate>{{/OpenDate}}
{{#PromisedDate}}<PromisedDate>{{PromisedDate}}</PromisedDate>{{/PromisedDate}}
{{#CloseDate}}<CloseDate>{{CloseDate}}</CloseDate>{{/CloseDate}}
{{#ServiceAdvisorId}}<ServiceAdvisorId>{{ServiceAdvisorId}}</ServiceAdvisorId>{{/ServiceAdvisorId}}
{{#TechnicianId}}<TechnicianId>{{TechnicianId}}</TechnicianId>{{/TechnicianId}}
{{#Department}}<Department>{{Department}}</Department>{{/Department}}
{{#ProfitCenter}}<ProfitCenter>{{ProfitCenter}}</ProfitCenter>{{/ProfitCenter}}
{{#ROType}}<ROType>{{ROType}}</ROType>{{/ROType}}
{{#Status}}<Status>{{Status}}</Status>{{/Status}}
{{#IsBodyShop}}<IsBodyShop>{{IsBodyShop}}</IsBodyShop>{{/IsBodyShop}}
{{#DRPFlag}}<DRPFlag>{{DRPFlag}}</DRPFlag>{{/DRPFlag}}
<Customer>
{{#CustomerId}}<CustomerId>{{CustomerId}}</CustomerId>{{/CustomerId}}
{{#CustomerName}}<CustomerName>{{CustomerName}}</CustomerName>{{/CustomerName}}
{{#PhoneNumber}}<PhoneNumber>{{PhoneNumber}}</PhoneNumber>{{/PhoneNumber}}
{{#EmailAddress}}<EmailAddress>{{EmailAddress}}</EmailAddress>{{/EmailAddress}}
{{#Address}}
<Address>
{{#Line1}}<Line1>{{Line1}}</Line1>{{/Line1}}
{{#Line2}}<Line2>{{Line2}}</Line2>{{/Line2}}
{{#City}}<City>{{City}}</City>{{/City}}
{{#State}}<State>{{State}}</State>{{/State}}
{{#PostalCode}}<PostalCode>{{PostalCode}}</PostalCode>{{/PostalCode}}
{{#Country}}<Country>{{Country}}</Country>{{/Country}}
</Address>
{{/Address}}
</Customer>
<ServiceVehicle>
{{#VehicleId}}<VehicleId>{{VehicleId}}</VehicleId>{{/VehicleId}}
{{#VIN}}<VIN>{{VIN}}</VIN>{{/VIN}}
{{#LicensePlate}}<LicensePlate>{{LicensePlate}}</LicensePlate>{{/LicensePlate}}
{{#Year}}<Year>{{Year}}</Year>{{/Year}}
{{#Make}}<Make>{{Make}}</Make>{{/Make}}
{{#Model}}<Model>{{Model}}</Model>{{/Model}}
{{#Odometer}}<Odometer>{{Odometer}}</Odometer>{{/Odometer}}
{{#Color}}<Color>{{Color}}</Color>{{/Color}}
</ServiceVehicle>
{{#JobLines}}
<JobLine>
<Sequence>{{Sequence}}</Sequence>
{{#ParentSequence}}<ParentSequence>{{ParentSequence}}</ParentSequence>{{/ParentSequence}}
{{#LineType}}<LineType>
{{LineType}}</LineType>{{/LineType}
{{#Category}}<Category>
{{Category}}</Category>{{/Category}}
{{#OpCode}}<OpCode>{{OpCode}}</OpCode>{{/OpCode}}
{{#Description}}<Description>{{Description}}</Description>{{/Description}}
{{#LaborHours}}<LaborHours>{{LaborHours}}</LaborHours>{{/LaborHours}}
{{#LaborRate}}<LaborRate>{{LaborRate}}</LaborRate>{{/LaborRate}}
{{#PartNumber}}<PartNumber>{{PartNumber}}</PartNumber>{{/PartNumber}}
{{#PartDescription}}<PartDescription>{{PartDescription}}</PartDescription>{{/PartDescription}}
{{#Quantity}}<Quantity>{{Quantity}}</Quantity>{{/Quantity}}
{{#UnitPrice}}<UnitPrice>{{UnitPrice}}</UnitPrice>{{/UnitPrice}}
{{#ExtendedPrice}}<ExtendedPrice>{{ExtendedPrice}}</ExtendedPrice>{{/ExtendedPrice}}
{{#DiscountAmount}}<DiscountAmount>{{DiscountAmount}}</DiscountAmount>{{/DiscountAmount}}
{{#TaxCode}}<TaxCode>{{TaxCode}}</TaxCode>{{/TaxCode}}
{{#GLAccount}}<GLAccount>{{GLAccount}}</GLAccount>{{/GLAccount}}
{{#ControlNumber}}<ControlNumber>{{ControlNumber}}</ControlNumber>{{/ControlNumber}}
{{#Taxes}}
<Taxes>
{{#Items}}
<Tax>
<Code>{{Code}}</Code>
<Amount>{{Amount}}</Amount>
{{#Rate}}<Rate>{{Rate}}</Rate>{{/Rate}}
</Tax>
{{/Items}}
</Taxes>
{{/Taxes}}
</JobLine>
{{/JobLines}}
{{#Totals}}
<Totals>
{{#Currency}}<Currency>{{Currency}}</Currency>{{/Currency}}
{{#LaborTotal}}<LaborTotal>{{LaborTotal}}</LaborTotal>{{/LaborTotal}}
{{#PartsTotal}}<PartsTotal>{{PartsTotal}}</PartsTotal>{{/PartsTotal}}
{{#MiscTotal}}<MiscTotal>{{MiscTotal}}</MiscTotal>{{/MiscTotal}}
{{#DiscountTotal}}<DiscountTotal>{{DiscountTotal}}</DiscountTotal>{{/DiscountTotal}}
{{#TaxTotal}}<TaxTotal>{{TaxTotal}}</TaxTotal>{{/TaxTotal}}
<GrandTotal>{{GrandTotal}}</GrandTotal>
</Totals>
{{/Totals}}
{{#Payments}}
<Payments>
{{#Items}}
<rr:Tax>
<rr:Code>{{Code}}</rr:Code>
<rr:Amount>{{Amount}}</rr:Amount>
{{#Rate}}<rr:Rate>{{Rate}}</rr:Rate>{{/Rate}}
</rr:Tax>
<Payment>
<PayerType>{{PayerType}}</PayerType>
{{#PayerName}}<PayerName>{{PayerName}}</PayerName>{{/PayerName}}
<Amount>{{Amount}}</Amount>
{{#Method}}<Method>{{Method}}</Method>{{/Method}}
{{#Reference}}<Reference>{{Reference}}</Reference>{{/Reference}}
{{#ControlNumber}}<ControlNumber>{{ControlNumber}}</ControlNumber>{{/ControlNumber}}
</Payment>
{{/Items}}
</rr:Taxes>
{{/Taxes}}
</rr:JobLine>
{{/JobLines}}
<!-- Totals -->
{{#Totals}}
<rr:Totals>
{{#Currency}}<rr:Currency>{{Currency}}</rr:Currency>{{/Currency}}
{{#LaborTotal}}<rr:LaborTotal>{{LaborTotal}}</rr:LaborTotal>{{/LaborTotal}}
{{#PartsTotal}}<rr:PartsTotal>{{PartsTotal}}</rr:PartsTotal>{{/PartsTotal}}
{{#MiscTotal}}<rr:MiscTotal>{{MiscTotal}}</rr:MiscTotal>{{/MiscTotal}}
{{#DiscountTotal}}<rr:DiscountTotal>{{DiscountTotal}}</rr:DiscountTotal>{{/DiscountTotal}}
{{#TaxTotal}}<rr:TaxTotal>{{TaxTotal}}</rr:TaxTotal>{{/TaxTotal}}
<rr:GrandTotal>{{GrandTotal}}</rr:GrandTotal>
</rr:Totals>
{{/Totals}}
<!-- Payers/Payments (optional) -->
{{#Payments}}
<rr:Payments>
{{#Items}}
<rr:Payment>
<rr:PayerType>{{PayerType}}</rr:PayerType> <!-- CUSTOMER | INSURANCE | WARRANTY | FLEET -->
{{#PayerName}}<rr:PayerName>{{PayerName}}</rr:PayerName>{{/PayerName}}
<rr:Amount>{{Amount}}</rr:Amount>
{{#Method}}<rr:Method>{{Method}}</rr:Method>{{/Method}}
{{#Reference}}<rr:Reference>{{Reference}}</rr:Reference>{{/Reference}}
{{#ControlNumber}}<rr:ControlNumber>{{ControlNumber}}</rr:ControlNumber>{{/ControlNumber}}
</rr:Payment>
{{/Items}}
</rr:Payments>
{{/Payments}}
<!-- Insurance block (optional) -->
{{#Insurance}}
<rr:Insurance>
{{#CompanyName}}<rr:CompanyName>{{CompanyName}}</rr:CompanyName>{{/CompanyName}}
{{#ClaimNumber}}<rr:ClaimNumber>{{ClaimNumber}}</rr:ClaimNumber>{{/ClaimNumber}}
{{#AdjusterName}}<rr:AdjusterName>{{AdjusterName}}</rr:AdjusterName>{{/AdjusterName}}
{{#AdjusterPhone}}<rr:AdjusterPhone>{{AdjusterPhone}}</rr:AdjusterPhone>{{/AdjusterPhone}}
</rr:Insurance>
{{/Insurance}}
<!-- Notes -->
{{#Notes}}
<rr:Notes>
{{#Items}}<rr:Note>{{.}}</rr:Note>{{/Items}}
</rr:Notes>
{{/Notes}}
</rr:RepairOrder>
</rr:RepairOrderInsertRq>
</Payments>
{{/Payments}}
{{#Insurance}}
<Insurance>
{{#CompanyName}}<CompanyName>{{CompanyName}}</CompanyName>{{/CompanyName}}
{{#ClaimNumber}}<ClaimNumber>{{ClaimNumber}}</ClaimNumber>{{/ClaimNumber}}
{{#AdjusterName}}<AdjusterName>{{AdjusterName}}</AdjusterName>{{/AdjusterName}}
{{#AdjusterPhone}}<AdjusterPhone>{{AdjusterPhone}}</AdjusterPhone>{{/AdjusterPhone}}
</Insurance>
{{/Insurance}}
{{#Notes}}
<Notes>
{{#Items}}<Note>{{.}}</Note>{{/Items}}
</Notes>
{{/Notes}}
</RepairOrder>
</BSMRepairOrderReq>
</rey_RomeCreateBSMRepairOrderReq>