Merge pull request #922 from Safelite/defect/CSR-753
CSR-1022 | Child parts are not priced
This commit is contained in:
commit
b7e8fc5817
1 changed files with 16 additions and 3 deletions
|
|
@ -1416,9 +1416,8 @@ export const actions = {
|
|||
},
|
||||
// Price order actions
|
||||
async priceOrderItems(context, availableLineItems) {
|
||||
const availableLineItemsFormattedForRequest = availableLineItems
|
||||
.map((lineItem) => `&LineItems=${lineItem.partNumber}`)
|
||||
.join("");
|
||||
const availableLineItemsFormattedForRequest =
|
||||
getLineItemQueryStringForPricing(availableLineItems);
|
||||
const vehicle = context.getters.order.vehicle;
|
||||
let queryString =
|
||||
`ParentAccountNumber=${applicationConfig.CASH_ACCOUNT_NUMBER}` +
|
||||
|
|
@ -1598,6 +1597,9 @@ function addPricesToLineItems(lineItems, pricingLineItems) {
|
|||
let lineItemIndex = pricingLineItems.findIndex(
|
||||
(pricingLineItem) => pricingLineItem.partNumber === lineItem.partNumber
|
||||
);
|
||||
if (lineItem.childParts) {
|
||||
addPricesToLineItems(lineItem.childParts, pricingLineItems);
|
||||
}
|
||||
let pricedLineItem = pricingLineItems.splice(lineItemIndex, 1)[0];
|
||||
lineItem.laborAmount = pricedLineItem.laborAmount;
|
||||
lineItem.sellingPrice = pricedLineItem.sellingPrice;
|
||||
|
|
@ -1605,3 +1607,14 @@ function addPricesToLineItems(lineItems, pricingLineItems) {
|
|||
});
|
||||
return lineItems;
|
||||
}
|
||||
function getLineItemQueryStringForPricing(lineItems) {
|
||||
return lineItems
|
||||
.map((lineItem) => {
|
||||
let queryStringSnippet = `&LineItems=${lineItem.partNumber}`;
|
||||
if (lineItem.childParts) {
|
||||
queryStringSnippet += getLineItemQueryStringForPricing(lineItem.childParts);
|
||||
}
|
||||
return queryStringSnippet;
|
||||
})
|
||||
.join("");
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue