Merge pull request #2977 from Safelite/feature/CASH-2027
CASH-2027 - Add call to oem-after-market-parts endpoint
This commit is contained in:
commit
cb4758ce7d
4 changed files with 60 additions and 0 deletions
|
|
@ -216,6 +216,10 @@ const endpoints = {
|
||||||
url: "/order/api/v1/order/add-donation-part",
|
url: "/order/api/v1/order/add-donation-part",
|
||||||
method: "POST",
|
method: "POST",
|
||||||
},
|
},
|
||||||
|
GetOemAfterMarketParts: {
|
||||||
|
url: "/parts/api/v1/parts/oem-after-market-parts",
|
||||||
|
method: "POST",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
export { endpoints };
|
export { endpoints };
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ const storeActions = {
|
||||||
GET_ALERT_REASONS_BY_CTU: "getAlertReasonsByCtu",
|
GET_ALERT_REASONS_BY_CTU: "getAlertReasonsByCtu",
|
||||||
GET_PARTS_OR_QUESTIONS: "getPartsOrQuestions",
|
GET_PARTS_OR_QUESTIONS: "getPartsOrQuestions",
|
||||||
GET_PARTS: "getParts",
|
GET_PARTS: "getParts",
|
||||||
|
GET_OEM_AFTERMARKET_PARTS: "getOemAfterMarketParts",
|
||||||
GET_WIPERS: "getWipers",
|
GET_WIPERS: "getWipers",
|
||||||
GET_RAIN_REPEL: "getRainRepel",
|
GET_RAIN_REPEL: "getRainRepel",
|
||||||
GET_SUPPORTING_ITEMS: "getSupportingItems",
|
GET_SUPPORTING_ITEMS: "getSupportingItems",
|
||||||
|
|
|
||||||
|
|
@ -219,6 +219,13 @@ export default {
|
||||||
"quote"
|
"quote"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// call API oem-after-market-parts method
|
||||||
|
const oemAfterMarketParts = baseMixin.methods.dispatchStoreActionWithLogging(
|
||||||
|
storeActions.GET_OEM_AFTERMARKET_PARTS,
|
||||||
|
null,
|
||||||
|
"quote"
|
||||||
|
);
|
||||||
|
|
||||||
const shouldExposeSkipQuote = store.getters.isRecalibrationOnOrder;
|
const shouldExposeSkipQuote = store.getters.isRecalibrationOnOrder;
|
||||||
const skipQuoteExperiment = store.getters.applicationUser.experiments.find(
|
const skipQuoteExperiment = store.getters.applicationUser.experiments.find(
|
||||||
(e) => e.universeName === experimentUniverses.IGQ_SkipQuote
|
(e) => e.universeName === experimentUniverses.IGQ_SkipQuote
|
||||||
|
|
|
||||||
|
|
@ -1836,6 +1836,54 @@ export const actions = {
|
||||||
return response;
|
return response;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// Parts API Actions
|
||||||
|
async getOemAfterMarketParts(context, { pageNameToLog }) {
|
||||||
|
const vehicle = context.getters.vehicle;
|
||||||
|
const damage = context.getters.damage;
|
||||||
|
const order = context.state.order;
|
||||||
|
|
||||||
|
const carId = vehicle.carId;
|
||||||
|
const glassArray = damage.glassToReplace;
|
||||||
|
const resultsArray = damage.partQuestionAnswers;
|
||||||
|
const zipCode = order.serviceLocation.zipCode;
|
||||||
|
const vin = vehicle.vin;
|
||||||
|
const make = vehicle.make;
|
||||||
|
const serviceType = order.serviceLocation?.appointmentType;
|
||||||
|
const referralSeqNumber = order.referralSequenceNumber;
|
||||||
|
const parentAccountNumber = applicationConfig.CASH_PARENT_ACCOUNT_NUMBER;
|
||||||
|
const oemEndorsementFlag = false; // Need to update from the store when available
|
||||||
|
|
||||||
|
// create a new array to avoid mutating state
|
||||||
|
const glassArrayForPayload = convertGlassPieceNamingForApi(glassArray);
|
||||||
|
const resultsArrayForPayload = convertResultsForApi(resultsArray);
|
||||||
|
|
||||||
|
const response = await globalMethods.callHttpClient({
|
||||||
|
method: endpoints.GetOemAfterMarketParts.method,
|
||||||
|
endpoint: endpoints.GetOemAfterMarketParts.url,
|
||||||
|
payload: {
|
||||||
|
carId: carId,
|
||||||
|
glassPieces: glassArrayForPayload,
|
||||||
|
answerResults: resultsArrayForPayload,
|
||||||
|
zip: zipCode,
|
||||||
|
vin: vin,
|
||||||
|
serviceType: serviceType,
|
||||||
|
referralSeqNumber: referralSeqNumber,
|
||||||
|
make: make,
|
||||||
|
parentAccountNumber: parentAccountNumber.toString(),
|
||||||
|
oemEndorsementFlag: oemEndorsementFlag,
|
||||||
|
},
|
||||||
|
logApiCall: true,
|
||||||
|
pageNameToLog: pageNameToLog,
|
||||||
|
});
|
||||||
|
|
||||||
|
// Flatten location and name properties
|
||||||
|
response.data.glassPieceParts = convertGlassPieceNamingFromApi(
|
||||||
|
response.data.glassPieceParts
|
||||||
|
);
|
||||||
|
|
||||||
|
return response;
|
||||||
|
},
|
||||||
|
|
||||||
async getWipers(context, { payload, pageNameToLog }) {
|
async getWipers(context, { payload, pageNameToLog }) {
|
||||||
const carId = payload.carId;
|
const carId = payload.carId;
|
||||||
const serviceZipCode = payload.serviceZipCode;
|
const serviceZipCode = payload.serviceZipCode;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue