diff --git a/src/common-components/modal/modal.vue b/src/common-components/modal/modal.vue
index e965b3e3f..9845e0891 100644
--- a/src/common-components/modal/modal.vue
+++ b/src/common-components/modal/modal.vue
@@ -2,6 +2,7 @@
{
- this.$refs.buttonMain.resetButtonStyle();
- });
+ resetButtonStyle() {
+ this.$refs.buttonMain.resetButtonStyle();
},
},
- mounted() {
- this.setupModalEventListener();
- },
components: {
buttonMain,
},
diff --git a/src/constants/endpoints.js b/src/constants/endpoints.js
index 3024a67d9..07dba9498 100644
--- a/src/constants/endpoints.js
+++ b/src/constants/endpoints.js
@@ -96,7 +96,7 @@ const endpoints = {
},
PriceOrderItems: {
url: "/price/api/v1/price/order-items",
- method: "POST",
+ method: "GET",
},
LogExperimentExposureIfAssigned: {
url: "/experiments/api/v1/experiments/log-exposure",
diff --git a/src/constants/store-actions.js b/src/constants/store-actions.js
index c4df053dc..69de6d53e 100644
--- a/src/constants/store-actions.js
+++ b/src/constants/store-actions.js
@@ -67,6 +67,7 @@ const storeActions = {
SAVE_CAPABILITY_QUESTION_ANSWERS: "saveCapabilityQuestionAnswers",
SAVE_QUOTE_PAGE_SELECTIONS: "saveQuotePageSelections",
SAVE_PAYMENT_TYPE: "savePaymentType",
+ SAVE_ACCOUNT_NUMBER: "saveAccountNumber",
SAVE_SUPPORTING_ITEMS: "saveSupportingItems",
SAVE_VAPS: "saveVaps",
};
diff --git a/src/constants/store-mutations.js b/src/constants/store-mutations.js
index baad1dedc..840aff30d 100644
--- a/src/constants/store-mutations.js
+++ b/src/constants/store-mutations.js
@@ -21,6 +21,7 @@ const storeMutations = {
UPDATE_GLASS_PARTS: "updateGlassParts",
UPDATE_VAPS: "updateVaps",
UPDATE_SUPPORTING_ITEMS: "updateSupportingItems",
+ UPDATE_LINE_ITEMS_SERVER_DATA: "updateLineItemsServerData",
UPDATE_REGISTRATION_LICENSE_PLATE: "updateRegistrationLicensePlate",
UPDATE_REGISTRATION_ADDRESS: "updateRegistrationAddress",
diff --git a/src/helpers/heritage-integration/navigation-helper.js b/src/helpers/heritage-integration/navigation-helper.js
index e5efaa0fc..7030ba193 100644
--- a/src/helpers/heritage-integration/navigation-helper.js
+++ b/src/helpers/heritage-integration/navigation-helper.js
@@ -69,7 +69,7 @@ export async function skipVinLookup() {
return (
store.getters.damage.isRepair ||
isVinOptionalVehicle ||
- experimentMixin.methods.hasSettingEqualTo(experimentSettings.SUPPRESS_VIN_CAPTURE, true)
+ experimentMixin.methods.hasSettingEqualTo(experimentSettings.SUPPRESS_VIN_CAPTURE, "true")
);
}
@@ -83,7 +83,7 @@ export async function skipVinLookupNotRepair() {
(isVinOptionalVehicle ||
experimentMixin.methods.hasSettingEqualTo(
experimentSettings.SUPPRESS_VIN_CAPTURE,
- true
+ "true"
))
);
}
diff --git a/src/helpers/heritage-integration/order-helper.js b/src/helpers/heritage-integration/order-helper.js
index 6f19b3eb5..31ba38d35 100644
--- a/src/helpers/heritage-integration/order-helper.js
+++ b/src/helpers/heritage-integration/order-helper.js
@@ -109,6 +109,7 @@ async function saveSessionHelper() {
accountNumber: savedSessionInfo.data.accountNumber?.toString(),
savedSessionId: savedSessionInfo.data.savedSessionId,
crmCustomerId: savedSessionInfo.data.crmCustomerId?.toString(),
+ eon: savedSessionInfo.data.eon,
},
false
);
diff --git a/src/layouts/quote/quote.vue b/src/layouts/quote/quote.vue
index 19f1e4e12..5eababde5 100644
--- a/src/layouts/quote/quote.vue
+++ b/src/layouts/quote/quote.vue
@@ -25,17 +25,19 @@
groupName="ServicePackageQuestion"
:availableLineItems="availableLineItems"
:isInsuranceSelected="isInsuranceSelected"
- @vapsItemsSelected="vapsItemsSelectedAction" />
+ @vapsItemsSelected="vapsItemsSelectedAction"
+ validationRules="option-required"
+ isRequired />
-
-
-
-
+
+
+
+
{
- vm.setCmsContent(cmsContent);
-
+ vm.setCmsContent(resultMap.cmsContent);
vm.supportingItems = resultMap.supportingItems;
vm.availableLineItems = pricingResults;
- vm.isInsuranceSelected = vm.getDefaultIsInsuranceSelectedValue();
+ vm.isInsuranceSelected = vm.getDefaultIsInsuranceSelectedValue(vm.availableLineItems);
});
},
data() {
@@ -137,23 +147,33 @@ export default {
store.getters.order.lineItems.glassParts.length > 0))
);
},
- getDefaultIsInsuranceSelectedValue() {
+ getDefaultIsInsuranceSelectedValue(availableLineItems) {
// Override if coming back from QuoteDetails. Remove override after Quote release
const isInsuranceOverrideValue = this.$route.query?.isInsurance;
+
const defaultIsInsuranceSelectedValue = this.$store.getters.order.payment.isInsurance;
if (isInsuranceOverrideValue != null) {
return isInsuranceOverrideValue == "true";
} else if (defaultIsInsuranceSelectedValue != null) {
return defaultIsInsuranceSelectedValue;
} else {
- return this.availableLineItems
- ? baseMixin.methods.getTierOnePackagePrice(this.availableLineItems) > 500
+ return availableLineItems
+ ? baseMixin.methods.getTierOnePackagePrice(availableLineItems) > 500
: null;
}
},
vapsItemsSelectedAction(vapsItemsSelected) {
this.selectedVaps = vapsItemsSelected;
},
+ filterOutFees(currentSupportingItems) {
+ const filteredSupportingItems = currentSupportingItems.filter((item) => {
+ return (
+ !item.partType.includes("FEE") ||
+ (item.partType === "REPAIR FEE" && item.partNumber != "SUPPLIES-REPAIR")
+ );
+ });
+ return filteredSupportingItems;
+ },
backButtonAction() {
vehicleQuestionsMixin.methods.navigateBack(this);
},
@@ -163,6 +183,16 @@ export default {
this.isInsuranceSelected,
false
);
+ if (!this.isInsuranceSelected) {
+ this.dispatchStoreAction(
+ this.storeActions.SAVE_ACCOUNT_NUMBER,
+ applicationConfig.CASH_ACCOUNT_NUMBER,
+ false
+ );
+ }
+ if (this.$store.getters.order.accountNumber != applicationConfig.CASH_ACCOUNT_NUMBER) {
+ this.supportingItems = this.filterOutFees(this.supportingItems);
+ }
this.dispatchStoreAction(
this.storeActions.SAVE_SUPPORTING_ITEMS,
this.supportingItems,
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 b642587ab..51cd16a3e 100644
--- a/src/layouts/quote/service-package-question/service-package-question.vue
+++ b/src/layouts/quote/service-package-question/service-package-question.vue
@@ -5,7 +5,8 @@
buttonTypeString="servicePackageRadio"
:buttonTypeObject="servicePackageRadio"
v-model="selectedPackageName"
- isRequired />
+ :validationRules="validationRules"
+ :isRequired="isRequired" />