Merge pull request #2315 from Safelite/feature/CASH-272
Feature/cash 272
This commit is contained in:
commit
db6af58f7b
2 changed files with 21 additions and 15 deletions
|
|
@ -58,3 +58,15 @@ export function getTopLevelPartsWithRecal(lineItems) {
|
||||||
|
|
||||||
return lineItems.filter((li) => isRecalPartOrHasChildRecalPart(li));
|
return lineItems.filter((li) => isRecalPartOrHasChildRecalPart(li));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getRecalPartNumbers(glassPartsArray) {
|
||||||
|
if (glassPartsArray && glassPartsArray.length > 0) {
|
||||||
|
const topLevel = glassPartsArray.filter((gp) => isRecalPart(gp)).map((gp) => gp.partNumber);
|
||||||
|
|
||||||
|
const children = glassPartsArray.map((gp) => getRecalPartNumbers(gp.childParts)).flat();
|
||||||
|
|
||||||
|
return [...topLevel, ...children];
|
||||||
|
} else {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,7 @@ import {
|
||||||
containsRecalParts,
|
containsRecalParts,
|
||||||
getTopLevelPartsWithRecal,
|
getTopLevelPartsWithRecal,
|
||||||
isRecalPartOrHasChildRecalPart,
|
isRecalPartOrHasChildRecalPart,
|
||||||
|
getRecalPartNumbers,
|
||||||
} from "@/helpers/recal-helper";
|
} from "@/helpers/recal-helper";
|
||||||
import { externalParameterStatus } from "@/constants/external-parameters";
|
import { externalParameterStatus } from "@/constants/external-parameters";
|
||||||
import { experimentSettings } from "@/constants/experiments";
|
import { experimentSettings } from "@/constants/experiments";
|
||||||
|
|
@ -1712,10 +1713,15 @@ export const actions = {
|
||||||
|
|
||||||
var endPoint = `${endpoints.GetMobileFeePart.url}/?serviceType=${serviceType}&facilityType=${facilityType}&parentAccountNumber=${parentAccountNumber}&billToAccountNumber=${billToAccountNumber}&providerNumber=${providerNumber}&isItacOptimized=${isItacOptimized}&zipCode=${zipCode}`;
|
var endPoint = `${endpoints.GetMobileFeePart.url}/?serviceType=${serviceType}&facilityType=${facilityType}&parentAccountNumber=${parentAccountNumber}&billToAccountNumber=${billToAccountNumber}&providerNumber=${providerNumber}&isItacOptimized=${isItacOptimized}&zipCode=${zipCode}`;
|
||||||
|
|
||||||
const recalPartNumber = getRecalPartNumber(order.lineItems?.glassParts[0]);
|
const recalPartNumbers = getRecalPartNumbers(order.lineItems?.glassParts);
|
||||||
const carId = order.vehicle?.carId;
|
const carId = order.vehicle?.carId;
|
||||||
if (recalPartNumber && carId) {
|
if (recalPartNumbers && recalPartNumbers.length > 0 && carId) {
|
||||||
endPoint = `${endPoint}&partNumbers=${recalPartNumber}&carId=${carId}`;
|
let additionalQueryParams = ``;
|
||||||
|
for (let i = 0; i < recalPartNumbers.length; i++) {
|
||||||
|
additionalQueryParams += `&partNumbers[${i}]=${recalPartNumbers[i]}`;
|
||||||
|
}
|
||||||
|
additionalQueryParams += `&carId=${carId}`;
|
||||||
|
endPoint += additionalQueryParams;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (coverageStatus) {
|
if (coverageStatus) {
|
||||||
|
|
@ -3760,15 +3766,3 @@ function getExternalParameterDefaultState() {
|
||||||
function saveExternalParameterState(externalParameterState) {
|
function saveExternalParameterState(externalParameterState) {
|
||||||
window.sessionStorage.setItem("externalParameterState", JSON.stringify(externalParameterState));
|
window.sessionStorage.setItem("externalParameterState", JSON.stringify(externalParameterState));
|
||||||
}
|
}
|
||||||
|
|
||||||
//This function finds the recalibration part and returns the part number for it.
|
|
||||||
function getRecalPartNumber(glassPartsArray) {
|
|
||||||
const recalPart = glassPartsArray.childParts.find(
|
|
||||||
(item) => item.partType === partTypeStrings.ADAS_RECALIBRATION
|
|
||||||
);
|
|
||||||
if (recalPart) {
|
|
||||||
return recalPart.partNumber;
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue