From 68ae6e049897a2af9e04ae91ea2ee67e346635cd Mon Sep 17 00:00:00 2001 From: Bill Richardson Date: Thu, 10 Oct 2024 11:32:53 -0400 Subject: [PATCH] Updates for glass-fees call --- src/constants/endpoints.js | 4 ++ src/helpers/querystring-helper.js | 6 ++ .../coverage-statement/coverage-statement.vue | 14 +--- .../service-location/service-location.vue | 68 +++++++++++++------ src/store/index.js | 48 ++++++++++++- 5 files changed, 105 insertions(+), 35 deletions(-) diff --git a/src/constants/endpoints.js b/src/constants/endpoints.js index 5c25364c..44c749a0 100644 --- a/src/constants/endpoints.js +++ b/src/constants/endpoints.js @@ -117,6 +117,10 @@ const endpoints = Object.freeze({ ) => `${PARTS_BASE_URL}/recal-parts/${carId}/${partNumber}/${recalibrationType}/${parentAccountNumber}/${zipCode}/${applicationName}/${referralSequenceNumber}`, method: 'GET' }, + GetGlassFees: { + url: `${PARTS_BASE_URL}/glass-fees`, + method: 'GET' + }, GetSupportingItems: { url: `${PARTS_BASE_URL}/supporting-items`, method: 'POST' diff --git a/src/helpers/querystring-helper.js b/src/helpers/querystring-helper.js index 0327071d..b827441a 100644 --- a/src/helpers/querystring-helper.js +++ b/src/helpers/querystring-helper.js @@ -29,6 +29,12 @@ export function getLineItemQueryString(lineItems, parameterName) { return queryString.length !== 0 ? `&${queryString}` : ''; } +export function getPartNumbersListForQueryString(lineItems, parameterName) { + const queryString = getLineItemsFlattened(lineItems).map((lineItem) => + `${parameterName}=${lineItem.partNumber}`).join('&'); + return queryString.length !== 0 ? `&${queryString}` : ''; +} + export function getTaxLineItemQueryString(lineItems, parameterName) { const queryString = getLineItemsFlattened(lineItems).map((lineItem, index) => `${parameterName}[${index}].partNumber=${lineItem.partNumber}` diff --git a/src/layouts/coverage-statement/coverage-statement.vue b/src/layouts/coverage-statement/coverage-statement.vue index 2b90a4e8..42c5bb20 100644 --- a/src/layouts/coverage-statement/coverage-statement.vue +++ b/src/layouts/coverage-statement/coverage-statement.vue @@ -158,7 +158,6 @@ export default { // Call APIs const cmsContentPromise = fetchCmsContentForPage(to?.query?.issPage); - const supportingItemsPromise = store.getSupportingItems(); const getRecalPartsPromise = store.getRecalParts(); // Settle promises and get results @@ -167,10 +166,6 @@ export default { resultKey: 'cmsContent', promise: cmsContentPromise }, - { - resultKey: 'supportingItems', - promise: supportingItemsPromise - }, { resultKey: 'recalParts', promise: getRecalPartsPromise @@ -197,7 +192,6 @@ export default { next(async (vm) => { showIssLoadingModal(true); vm.setCmsContent(resultMap.cmsContent); - vm.setSupportingItems(resultMap.supportingItems); await vm.initializeComponent(); if (!vm.unverified) { useMainStore().disableKeyFields(); @@ -401,10 +395,9 @@ export default { showIssLoadingModal(false); }, async getPricedParts() { - const { glassParts, supportingItems } = this.mainStore.order.lineItems; + const { glassParts } = this.mainStore.order.lineItems; const availableLineItems = [ - ...(glassParts ?? []), - ...(supportingItems ?? []) + ...(glassParts ?? []) ]; // We only call the ITAC pricing endpoint if we are not repair or we are NoComp @@ -480,9 +473,6 @@ export default { return null; } }, - setSupportingItems(newSupportingItems) { - this.mainStore.updateSupportingItems(newSupportingItems); - }, setBaseServiceLineItems(lineItems) { this.baseServiceLineItems = lineItems; }, diff --git a/src/layouts/service-location/service-location.vue b/src/layouts/service-location/service-location.vue index cdbaa9c4..88bc7d02 100644 --- a/src/layouts/service-location/service-location.vue +++ b/src/layouts/service-location/service-location.vue @@ -115,7 +115,9 @@