Merge branch 'release/2025.04.24' into feature/CASH-498
This commit is contained in:
commit
823c0c5dda
7 changed files with 121 additions and 33 deletions
|
|
@ -301,13 +301,15 @@ export default {
|
||||||
return this.$refs.navbar.removeLoader();
|
return this.$refs.navbar.removeLoader();
|
||||||
}
|
}
|
||||||
this.displayInvalidZipAlert = false;
|
this.displayInvalidZipAlert = false;
|
||||||
const closestShops = await this.findClosestApplicableShops(
|
if (this.serviceZipCode != null && this.isHeavyTruck) {
|
||||||
this.serviceZipCode,
|
const closestShops = await this.findClosestApplicableShops(
|
||||||
this.carId
|
this.serviceZipCode,
|
||||||
);
|
this.carId
|
||||||
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
);
|
||||||
if (this.displayNoServiceAlert) {
|
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
||||||
return this.$refs.navbar.removeLoader();
|
if (this.displayNoServiceAlert) {
|
||||||
|
return this.$refs.navbar.removeLoader();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const carsFound = resultMap.vinLookupResponse.vinVehicles;
|
const carsFound = resultMap.vinLookupResponse.vinVehicles;
|
||||||
|
|
|
||||||
|
|
@ -281,14 +281,15 @@ export default {
|
||||||
this.displayInvalidZipAlert = true;
|
this.displayInvalidZipAlert = true;
|
||||||
return this.$refs.navbar.removeLoader();
|
return this.$refs.navbar.removeLoader();
|
||||||
}
|
}
|
||||||
|
if (this.isHeavyTruck) {
|
||||||
const closestShops = await this.findClosestApplicableShops(
|
const closestShops = await this.findClosestApplicableShops(
|
||||||
this.serviceZipCode,
|
this.serviceZipCode,
|
||||||
this.carId
|
this.carId
|
||||||
);
|
);
|
||||||
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
||||||
if (this.displayNoServiceAlert) {
|
if (this.displayNoServiceAlert) {
|
||||||
return this.$refs.navbar.removeLoader();
|
return this.$refs.navbar.removeLoader();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if the CarId has changed.
|
// Check if the CarId has changed.
|
||||||
|
|
|
||||||
|
|
@ -264,6 +264,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -313,6 +319,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -360,6 +372,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -404,6 +422,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -449,6 +473,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -494,6 +524,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -540,6 +576,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -588,6 +630,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -634,6 +682,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -681,6 +735,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
@ -780,6 +840,12 @@ describe("quote.vue", () => {
|
||||||
lineItems: {
|
lineItems: {
|
||||||
glassParts: ["item", "item2"],
|
glassParts: ["item", "item2"],
|
||||||
},
|
},
|
||||||
|
pageData: jest.fn((page) => {
|
||||||
|
if (page === "quote") {
|
||||||
|
return { saveProgressPopupSkipped: true };
|
||||||
|
}
|
||||||
|
return {};
|
||||||
|
}),
|
||||||
applicationUser: {
|
applicationUser: {
|
||||||
experiments: [],
|
experiments: [],
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -166,6 +166,7 @@ import {
|
||||||
getDeviceIdValue,
|
getDeviceIdValue,
|
||||||
} from "@/helpers/heritage-integration/cookie-helper";
|
} from "@/helpers/heritage-integration/cookie-helper";
|
||||||
import { showFmgLoadingModal } from "@/helpers/loading-modal-helper";
|
import { showFmgLoadingModal } from "@/helpers/loading-modal-helper";
|
||||||
|
import { fmgPageValues } from "@/router/router-constants/fmgPage-values";
|
||||||
|
|
||||||
defineRule("option-required", required(errorMessages.OPTION_REQUIRED));
|
defineRule("option-required", required(errorMessages.OPTION_REQUIRED));
|
||||||
|
|
||||||
|
|
@ -242,7 +243,9 @@ export default {
|
||||||
const resultMap = await settleAllPromises(promiseResultMap);
|
const resultMap = await settleAllPromises(promiseResultMap);
|
||||||
const emailFromStore = store.getters.order.customer.emailAddress;
|
const emailFromStore = store.getters.order.customer.emailAddress;
|
||||||
const isEmailInStoreOnPageLoad = emailFromStore?.length > 0;
|
const isEmailInStoreOnPageLoad = emailFromStore?.length > 0;
|
||||||
const showSaveProgressPopup = isEmailInStoreOnPageLoad ? false : true;
|
const isPopupSkipped =
|
||||||
|
store.getters.pageData(fmgPageValues.QUOTE).saveProgressPopupSkipped === true;
|
||||||
|
const showSaveProgressPopup = isEmailInStoreOnPageLoad || isPopupSkipped ? false : true;
|
||||||
const showSaveProgressModal = isEmailInStoreOnPageLoad ? false : true;
|
const showSaveProgressModal = isEmailInStoreOnPageLoad ? false : true;
|
||||||
const shouldSkipToInsurance =
|
const shouldSkipToInsurance =
|
||||||
getBoolFromString(
|
getBoolFromString(
|
||||||
|
|
@ -626,6 +629,15 @@ export default {
|
||||||
async closeSaveProgressPopup() {
|
async closeSaveProgressPopup() {
|
||||||
this.showSaveProgressPopup = false;
|
this.showSaveProgressPopup = false;
|
||||||
|
|
||||||
|
await this.dispatchStoreAction(
|
||||||
|
storeActions.SAVE_PAGE_DATA,
|
||||||
|
{
|
||||||
|
page: fmgPageValues.QUOTE,
|
||||||
|
data: { saveProgressPopupSkipped: true },
|
||||||
|
},
|
||||||
|
false
|
||||||
|
);
|
||||||
|
|
||||||
if (this.skipToInsurance) {
|
if (this.skipToInsurance) {
|
||||||
// skip ahead now if in IGQ skip experiment
|
// skip ahead now if in IGQ skip experiment
|
||||||
await this.skip(true, externalParamPackageLabels.GLASS_ONLY);
|
await this.skip(true, externalParamPackageLabels.GLASS_ONLY);
|
||||||
|
|
|
||||||
|
|
@ -276,13 +276,15 @@ export default {
|
||||||
return this.$refs.navbar.removeLoader();
|
return this.$refs.navbar.removeLoader();
|
||||||
}
|
}
|
||||||
this.displayNonServiceableZipAlert = false;
|
this.displayNonServiceableZipAlert = false;
|
||||||
const closestShops = await this.findClosestApplicableShops(
|
if (this.isHeavyTruck) {
|
||||||
this.serviceZipCode,
|
const closestShops = await this.findClosestApplicableShops(
|
||||||
this.carId
|
this.serviceZipCode,
|
||||||
);
|
this.carId
|
||||||
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
);
|
||||||
if (this.displayNoServiceAlert) {
|
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
||||||
return this.$refs.navbar.removeLoader();
|
if (this.displayNoServiceAlert) {
|
||||||
|
return this.$refs.navbar.removeLoader();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const payment = this.$store.getters.payment;
|
const payment = this.$store.getters.payment;
|
||||||
|
|
|
||||||
|
|
@ -303,14 +303,16 @@ export default {
|
||||||
return this.$refs.navbar.removeLoader();
|
return this.$refs.navbar.removeLoader();
|
||||||
}
|
}
|
||||||
this.displayInvalidZipAlert = false;
|
this.displayInvalidZipAlert = false;
|
||||||
// If a VIN has already been found. Validate the Service Zip (in case of changes)
|
if (this.isHeavyTruck) {
|
||||||
var closestShops = await this.findClosestApplicableShops(
|
// If a VIN has already been found. Validate the Service Zip (in case of changes)
|
||||||
this.serviceZipCode,
|
var closestShops = await this.findClosestApplicableShops(
|
||||||
this.carId
|
this.serviceZipCode,
|
||||||
);
|
this.carId
|
||||||
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
);
|
||||||
if (this.displayNoServiceAlert) {
|
this.displayNoServiceAlert = !closestShops?.data?.providers?.length;
|
||||||
return this.$refs.navbar.removeLoader();
|
if (this.displayNoServiceAlert) {
|
||||||
|
return this.$refs.navbar.removeLoader();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// If either lookup fails, remove the loader and stop processing the page.
|
// If either lookup fails, remove the loader and stop processing the page.
|
||||||
|
|
|
||||||
|
|
@ -678,6 +678,9 @@ export const mutations = {
|
||||||
imageUrl: sessionInformation.order.vehicle?.imageUrl,
|
imageUrl: sessionInformation.order.vehicle?.imageUrl,
|
||||||
imageVifNumber: sessionInformation.order.vehicle?.imageVifNumber,
|
imageVifNumber: sessionInformation.order.vehicle?.imageVifNumber,
|
||||||
imageColor: sessionInformation.order.vehicle?.imageVifColor,
|
imageColor: sessionInformation.order.vehicle?.imageVifColor,
|
||||||
|
vehicleSubType: sessionInformation.order.vehicle?.vehicleSubType,
|
||||||
|
vehicleSpecialClass: sessionInformation.order.vehicle?.vehicleSpecialClass,
|
||||||
|
isBigTruck: sessionInformation.order.vehicle?.isBigTruck,
|
||||||
});
|
});
|
||||||
|
|
||||||
state.order.damage.glassToReplace = sessionInformation.order.damage.glassToReplace;
|
state.order.damage.glassToReplace = sessionInformation.order.damage.glassToReplace;
|
||||||
|
|
@ -3214,8 +3217,8 @@ export const actions = {
|
||||||
context.commit(storeMutations.UPDATE_CUSTOMER_WAITLIST_REQUESTED, waitListRequested);
|
context.commit(storeMutations.UPDATE_CUSTOMER_WAITLIST_REQUESTED, waitListRequested);
|
||||||
},
|
},
|
||||||
|
|
||||||
savePageData(context, emailOrSms) {
|
savePageData(context, pageData) {
|
||||||
context.commit(storeMutations.UPDATE_PAGE_DATA, emailOrSms);
|
context.commit(storeMutations.UPDATE_PAGE_DATA, pageData);
|
||||||
},
|
},
|
||||||
|
|
||||||
saveVin(context, { isSelectedGlassAvailableForVehicle, vehicleInfo }) {
|
saveVin(context, { isSelectedGlassAvailableForVehicle, vehicleInfo }) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue