Merge pull request #1820 from Safelite/feature/csr-1978
Add `isGlassPart` field to schedule requests to match api changes
This commit is contained in:
commit
dff0443906
1 changed files with 26 additions and 22 deletions
|
|
@ -1487,17 +1487,9 @@ export const actions = {
|
||||||
const order = context.state.order;
|
const order = context.state.order;
|
||||||
const vehicle = context.state.order.vehicle;
|
const vehicle = context.state.order.vehicle;
|
||||||
const payment = context.state.order.payment;
|
const payment = context.state.order.payment;
|
||||||
let lineItems = [
|
|
||||||
...(order.lineItems.supportingItems ?? []),
|
const lineItems = getFlattenedLineItemsWithGlassPartTag(order.lineItems);
|
||||||
...(order.lineItems.vaps ?? []),
|
|
||||||
...getFlattenedArrayOfLineItemsWithChildParts(order.lineItems.glassParts),
|
|
||||||
];
|
|
||||||
lineItems = lineItems.map((lineItem) => {
|
|
||||||
return {
|
|
||||||
partNumber: lineItem.partNumber,
|
|
||||||
partType: lineItem.partType,
|
|
||||||
};
|
|
||||||
});
|
|
||||||
const glassPieces = order.damage.glassToReplace
|
const glassPieces = order.damage.glassToReplace
|
||||||
? convertGlassPieceToBackEndCompatibleFormat(order.damage.glassToReplace)
|
? convertGlassPieceToBackEndCompatibleFormat(order.damage.glassToReplace)
|
||||||
: [];
|
: [];
|
||||||
|
|
@ -1556,17 +1548,7 @@ export const actions = {
|
||||||
const order = context.state.order;
|
const order = context.state.order;
|
||||||
const vehicle = context.state.order.vehicle;
|
const vehicle = context.state.order.vehicle;
|
||||||
const payment = context.state.order.payment;
|
const payment = context.state.order.payment;
|
||||||
let lineItems = [
|
const lineItems = getFlattenedLineItemsWithGlassPartTag(order.lineItems);
|
||||||
...(order.lineItems.supportingItems ?? []),
|
|
||||||
...(order.lineItems.vaps ?? []),
|
|
||||||
...getFlattenedArrayOfLineItemsWithChildParts(order.lineItems.glassParts),
|
|
||||||
];
|
|
||||||
lineItems = lineItems.map((lineItem) => {
|
|
||||||
return {
|
|
||||||
partNumber: lineItem.partNumber,
|
|
||||||
partType: lineItem.partType,
|
|
||||||
};
|
|
||||||
});
|
|
||||||
const glassPieces = order.damage.glassToReplace
|
const glassPieces = order.damage.glassToReplace
|
||||||
? convertGlassPieceToBackEndCompatibleFormat(order.damage.glassToReplace)
|
? convertGlassPieceToBackEndCompatibleFormat(order.damage.glassToReplace)
|
||||||
: [];
|
: [];
|
||||||
|
|
@ -2882,6 +2864,28 @@ function getFlattenedArrayOfLineItemsWithChildParts(lineItems) {
|
||||||
return flattenedArray;
|
return flattenedArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getFlattenedLineItemsWithGlassPartTag(lineItems) {
|
||||||
|
const nonGlassLineItems = [...(lineItems.supportingItems ?? []), ...(lineItems.vaps ?? [])];
|
||||||
|
const mappedNonGlassLineItems = nonGlassLineItems.map((lineItem) => {
|
||||||
|
return {
|
||||||
|
partNumber: lineItem.partNumber,
|
||||||
|
partType: lineItem.partType,
|
||||||
|
isGlassPart: false,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
const glassLineItems = [...getFlattenedArrayOfLineItemsWithChildParts(lineItems.glassParts)];
|
||||||
|
const mappedGlassLineItems = glassLineItems.map((lineItem) => {
|
||||||
|
return {
|
||||||
|
partNumber: lineItem.partNumber,
|
||||||
|
partType: lineItem.partType,
|
||||||
|
isGlassPart: true,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
return [...mappedNonGlassLineItems, ...mappedGlassLineItems];
|
||||||
|
}
|
||||||
|
|
||||||
function buildQueryStringParameterFromArrayOfComplexObjects(arrayOfObjects, parameterName) {
|
function buildQueryStringParameterFromArrayOfComplexObjects(arrayOfObjects, parameterName) {
|
||||||
let queryStringParameter = "";
|
let queryStringParameter = "";
|
||||||
for (let i = 0; i < arrayOfObjects.length; i++) {
|
for (let i = 0; i < arrayOfObjects.length; i++) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue