diff --git a/src/layouts/confirmation/confirmation.vue b/src/layouts/confirmation/confirmation.vue index 8f34feb23..27b639531 100644 --- a/src/layouts/confirmation/confirmation.vue +++ b/src/layouts/confirmation/confirmation.vue @@ -89,22 +89,46 @@ export default { // Call APIs const cmsContentPromise = fetchCmsContentForPage(to.query.fmgPage); + const wipersPromise = baseMixin.methods.dispatchStoreActionWithLogging( + storeActions.GET_WIPERS, + { + serviceZipCode: store.getters.submittedOrder.serviceLocation.zipCode, + carId: store.getters.submittedOrder.vehicle.carId, + }, + "confirmation" + ); + + const rainDefensePromise = baseMixin.methods.dispatchStoreActionWithLogging( + storeActions.GET_RAIN_DEFENSE, + null, + "confirmation" + ); + // Settle promises and get results const promiseResultMap = [ { resultKey: "cmsContent", promise: cmsContentPromise, }, + { + resultKey: "wipers", + promise: wipersPromise, + }, + { + resultKey: "rainDefense", + promise: rainDefensePromise, + }, ]; const resultMap = await settleAllPromises(promiseResultMap); + const availableVaps = [resultMap.rainDefense, ...resultMap.wipers]; const lineItemsFromSubmittedOrder = deepClone(store.getters.submittedOrder.lineItems); // Call the "next" function to complete the transition to this page. next((vm) => { vm.setCmsContent(resultMap.cmsContent); vm.lineItems = lineItemsFromSubmittedOrder; - vm.vaps = lineItemsFromSubmittedOrder.vaps; + vm.vaps = availableVaps; }); }, data() { diff --git a/src/layouts/payment-method/payment-method.vue b/src/layouts/payment-method/payment-method.vue index af0ec86fc..6fa1b02a6 100644 --- a/src/layouts/payment-method/payment-method.vue +++ b/src/layouts/payment-method/payment-method.vue @@ -123,7 +123,10 @@ export default { const wipersPromise = baseMixin.methods.dispatchStoreActionWithLogging( storeActions.GET_WIPERS, - null, + { + serviceZipCode: store.getters.order.serviceLocation.zipCode, + carId: store.getters.vehicle.carId, + }, "payment-method" ); diff --git a/src/layouts/payment/payment.vue b/src/layouts/payment/payment.vue index 0cd632dc6..3e52d1c6b 100644 --- a/src/layouts/payment/payment.vue +++ b/src/layouts/payment/payment.vue @@ -257,7 +257,10 @@ export default { const wipersPromise = baseMixin.methods.dispatchStoreActionWithLogging( storeActions.GET_WIPERS, - null, + { + serviceZipCode: store.getters.order.serviceLocation.zipCode, + carId: store.getters.vehicle.carId, + }, "payment" ); diff --git a/src/layouts/quote/quote.vue b/src/layouts/quote/quote.vue index 6f293c43b..1357e5acc 100644 --- a/src/layouts/quote/quote.vue +++ b/src/layouts/quote/quote.vue @@ -96,7 +96,10 @@ export default { const cmsContentPromise = fetchCmsContentForPage(to.query.fmgPage); const wipersPromise = baseMixin.methods.dispatchStoreActionWithLogging( storeActions.GET_WIPERS, - null, + { + serviceZipCode: store.getters.order.serviceLocation.zipCode, + carId: store.getters.vehicle.carId, + }, "quote" ); const rainDefensePromise = baseMixin.methods.dispatchStoreActionWithLogging( diff --git a/src/layouts/review/review-sections/service-package-review/service-package-review.vue b/src/layouts/review/review-sections/service-package-review/service-package-review.vue index 03efb6769..ac6c333ac 100644 --- a/src/layouts/review/review-sections/service-package-review/service-package-review.vue +++ b/src/layouts/review/review-sections/service-package-review/service-package-review.vue @@ -15,6 +15,7 @@ import { import { settleAllPromises } from "@/helpers/layout-helper"; import baseMixin from "@/mixins/base-mixin.js"; import { storeActions } from "@/constants/store-actions"; +import store from "@/store"; export default { name: "service-package-review", @@ -34,7 +35,10 @@ export default { loadInitialData() { const wipersPromise = baseMixin.methods.dispatchStoreActionWithLogging( storeActions.GET_WIPERS, - null, + { + serviceZipCode: store.getters.order.serviceLocation.zipCode, + carId: store.getters.vehicle.carId, + }, "review" ); const rainDefensePromise = baseMixin.methods.dispatchStoreActionWithLogging( diff --git a/src/store/index.js b/src/store/index.js index 11690798f..dd6d1b08c 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -1301,9 +1301,10 @@ export const actions = { return response; }, - async getWipers(context, { pageNameToLog }) { - const carId = context.getters.vehicle.carId; - const serviceZipCode = context.getters.order.serviceLocation.zipCode; + async getWipers(context, { payload, pageNameToLog }) { + const carId = payload.carId; + const serviceZipCode = payload.serviceZipCode; + const response = await globalMethods .callHttpClient({ method: endpoints.GetWipers.method,