Merge pull request #1074 from Safelite/feature/CSR-1104
CSR-1104 | Change how priceOrderItems sends lineItems to endpoint
This commit is contained in:
commit
9c36ee944c
1 changed files with 16 additions and 12 deletions
|
|
@ -1472,8 +1472,9 @@ export const actions = {
|
|||
const ctuToUse = serviceZipCodeCtu
|
||||
? serviceZipCodeCtu
|
||||
: context.getters.order.serviceLocation.zipCodeCtu;
|
||||
|
||||
const lineItemsWithOnlyPartNumbers = availableLineItems.map((lineItem) => ({
|
||||
const flattenedLineItemsWithChildParts =
|
||||
getFlattenedArrayOfLineItemsWithChildParts(availableLineItems);
|
||||
const lineItemsWithOnlyPartNumbers = flattenedLineItemsWithChildParts.map((lineItem) => ({
|
||||
partNumber: lineItem.partNumber,
|
||||
}));
|
||||
const availableLineItemsFormattedForRequest =
|
||||
|
|
@ -1675,16 +1676,19 @@ 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("");
|
||||
|
||||
function getFlattenedArrayOfLineItemsWithChildParts(lineItems) {
|
||||
let flattenedArray = [];
|
||||
lineItems.forEach((lineItem) => {
|
||||
flattenedArray.push(lineItem);
|
||||
if (lineItem.childParts) {
|
||||
flattenedArray = [
|
||||
...flattenedArray,
|
||||
...getFlattenedArrayOfLineItemsWithChildParts(lineItem.childParts),
|
||||
];
|
||||
}
|
||||
});
|
||||
return flattenedArray;
|
||||
}
|
||||
|
||||
function buildQueryStringParameterFromArrayOfComplexObjects(arrayOfObjects, parameterName) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue