From e29248a7ed0b65c207a25c4ede65fd96b542b0e3 Mon Sep 17 00:00:00 2001 From: Chloe Herd Date: Thu, 12 Sep 2024 12:29:22 -0400 Subject: [PATCH] Update quote to use new parts --- src/layouts/quote/quote.vue | 19 +++++++++---------- .../service-package-question.vue | 13 +++++-------- 2 files changed, 14 insertions(+), 18 deletions(-) diff --git a/src/layouts/quote/quote.vue b/src/layouts/quote/quote.vue index 3d539e630..c0e6165ea 100644 --- a/src/layouts/quote/quote.vue +++ b/src/layouts/quote/quote.vue @@ -30,6 +30,7 @@ insuranceCmsWidgetName="InsuranceServicePackageQuestionWidget" groupName="ServicePackageQuestion" :availableLineItems="availableLineItems" + :shouldHideRecalibration="shouldHideRecalibration" :isInsuranceSelected="isInsuranceSelected" @vapsItemsSelected="vapsItemsSelectedAction" @servicePackageDiscountSelected="servicePackageDiscountSelectedAction" @@ -131,6 +132,7 @@ import { containsLineItemWithPartType } from "@/helpers/service-package-helper"; import { nextTick } from "vue"; import { packageNames } from "@/constants/package-names"; import { navigateToHeritageFunnel } from "@/helpers/heritage-integration/navigation-helper"; +import { containsRecalParts } from "@/helpers/recal-helper"; defineRule("option-required", required(errorMessages.OPTION_REQUIRED)); export default { @@ -209,10 +211,7 @@ export default { ]; // If the recal experiment is found then log the experiment exposure. - const isRecalibrationOnOrder = containsLineItemWithPartType( - partTypeStrings.RECALIBRATION, - availableLineItems - ); + const isRecalibrationOnOrder = containsRecalParts(availableLineItems); const canSafeliteRecalibrate = nullSafeGlassParts.some((glassPart) => { return glassPart.partType === "WINDSHIELD" && glassPart.canSafeliteRecalibrate; }); @@ -354,10 +353,7 @@ export default { return Object.assign({}, this.lineItems); }, isRecalibrationOnOrder() { - return containsLineItemWithPartType( - partTypeStrings.RECALIBRATION, - this?.availableLineItems - ); + return containsRecalParts(this.lineItems); }, shouldHideRecalibration() { const recalSettingValue = experimentMixin.methods.getSettingValue( @@ -366,10 +362,13 @@ export default { return recalSettingValue; }, showAfterpayBanner() { - return !this.isInsuranceSelected && (!this.isRecalibrationOnOrder || !this.shouldHideRecalibration) + return ( + !this.isInsuranceSelected && + (!this.isRecalibrationOnOrder || !this.shouldHideRecalibration) + ); }, showRecalDisclaimer() { - return this.isRecalibrationOnOrder && this.shouldHideRecalibration + return this.isRecalibrationOnOrder && this.shouldHideRecalibration; }, }, methods: { diff --git a/src/layouts/quote/service-package-question/service-package-question.vue b/src/layouts/quote/service-package-question/service-package-question.vue index 93d8ff79b..f17fe908a 100644 --- a/src/layouts/quote/service-package-question/service-package-question.vue +++ b/src/layouts/quote/service-package-question/service-package-question.vue @@ -36,6 +36,7 @@ import { getPromosWithAddableVaps, getLineItemsThatMatchPromos, } from "@/helpers/promotions-helper"; +import { containsRecalParts, getItemsWithoutRecalParts } from "@/helpers/recal-helper"; export default { name: "servicePackageQuestion", @@ -49,6 +50,7 @@ export default { availableLineItems: null, activePromos: null, servicePackage: null, + shouldHideRecalibration: Boolean, }, data() { return { @@ -142,10 +144,7 @@ export default { return modifiedAnswers; }, isRecalibrationOnOrder() { - return containsLineItemWithPartType( - partTypeStrings.RECALIBRATION, - this.nullSafeAvailableLineItems - ); + return containsRecalParts(this.nullSafeAvailableLineItems); }, isServicePackageDiscountOnOrder() { return containsLineItemWithPartType( @@ -242,10 +241,8 @@ export default { }, getPackagePrice(packageName, { discountedPrice = false, servicePackageDiscount = false }) { var lineItemsToPrice = [...this.nullSafeAvailableLineItems]; - if (this.isRecalibrationOnOrder) { - lineItemsToPrice = lineItemsToPrice.filter((item) => { - return item.partType != partTypeStrings.RECALIBRATION; - }); + if (this.shouldHideRecalibration && this.isRecalibrationOnOrder) { + lineItemsToPrice = getItemsWithoutRecalParts(lineItemsToPrice); } //remove service package discount part