CASH-2481 - when navigating forward, skip service-zip page if zip exists and is valid

This commit is contained in:
Adam Caouette 2026-03-25 10:57:59 -04:00
parent 4c664239f5
commit 22cba2d54b
5 changed files with 22 additions and 5 deletions

View file

@ -62,6 +62,7 @@ import baseMixin from "@/mixins/base-mixin.js";
import { queryStrings } from "@/constants/query-strings";
import { nextTick } from "vue";
import { peekQueryFromStash } from "@/router/methods/helpers/querystring-stash";
import { showFmgLoadingModal } from "@/helpers/loading-modal-helper";
// Define Validation Rules
defineRule("zip-required", required(errorMessages.SERVICE_ZIP_REQUIRED));
@ -169,7 +170,7 @@ export default {
baseMixin.methods.ResetExternalParamsAndHideModal();
}
} else {
baseMixin.methods.ResetExternalParamsAndHideModal();
showFmgLoadingModal(false);
}
} else {
baseMixin.methods.ResetExternalParamsAndHideModal();

View file

@ -80,6 +80,7 @@ import { saveSession } from "@/helpers/heritage-integration/order-helper.js";
import baseMixin from "@/mixins/base-mixin.js";
import { queryStrings } from "@/constants/query-strings";
import { routeData } from "@/router/constants/routes";
import { showFmgLoadingModal } from "@/helpers/loading-modal-helper";
// Define Validation Rules
defineRule("zip-required", required(errorMessages.SERVICE_ZIP_REQUIRED));
@ -137,6 +138,13 @@ export default {
},
false
);
vm.serviceZipCode = store.getters.externalParameterServiceZip.zipCode;
const isValid = await baseMixin.methods.isFormValid(vm.$refs.theForm);
if (isValid) {
showFmgLoadingModal(true);
vm.forwardButtonAction();
return;
}
}
if (store.getters.externalParameterCustomer?.phoneNumber) {

View file

@ -93,6 +93,7 @@ import { errorMessages } from "@/constants/error-messages";
import { damageLocationsCms } from "@/constants/damage-locations-cms.js";
import { damageLocationsSelected } from "@/constants/damage-locations-selected.js";
import { getFunnelCookie } from "@/helpers/heritage-integration/cookie-helper";
import { showFmgLoadingModal } from "@/helpers/loading-modal-helper";
import { debugLog } from "@/helpers/debug-log-helper";
import store from "@/store";
@ -199,7 +200,7 @@ export default {
return vm.forwardButtonAction();
}
}
baseMixin.methods.ResetExternalParamsAndHideModal();
showFmgLoadingModal(false);
//clear any validation errors for external parameter flow
const form = vm.$refs.theForm;
@ -209,7 +210,7 @@ export default {
}
}
} else {
baseMixin.methods.ResetExternalParamsAndHideModal();
showFmgLoadingModal(false);
}
});
},

View file

@ -109,6 +109,7 @@ import { getFunnelCookie } from "@/helpers/heritage-integration/cookie-helper";
import { applicationConfig } from "../../constants/application-config";
import { queryStrings } from "@/constants/query-strings";
import { getQuerystringParameter } from "@/helpers/querystring-helper";
import { showFmgLoadingModal } from "@/helpers/loading-modal-helper";
import { debugLog } from "@/helpers/debug-log-helper";
//define validation rules
@ -291,7 +292,12 @@ export default {
resultMap.modelQuestionInitialData,
resultMap.styleQuestionInitialData
);
if (store.getters.externalParameterState?.isExternalParameter) {
if (
store.getters.externalParameterState?.isExternalParameter &&
store.getters.externalParameterVehicle.year &&
store.getters.externalParameterVehicle.make &&
store.getters.externalParameterVehicle.model
) {
await vm.getVehicleDetails();
if (!vm.displayNoServiceAlert) {
const isValid = await baseMixin.methods.isFormValid(vm.$refs.theForm);
@ -304,7 +310,7 @@ export default {
baseMixin.methods.ResetExternalParamsAndHideModal();
}
} else {
baseMixin.methods.ResetExternalParamsAndHideModal();
showFmgLoadingModal(false);
}
});
},

View file

@ -95,6 +95,7 @@ function updateExternalParameterState() {
}
if (externalParameterZipCode) {
store.commit(storeMutations.UPDATE_EXTERNAL_PARAMETER_ZIP_CODE, externalParameterZipCode);
store.commit(storeMutations.UPDATE_IS_EXTERNAL_PARAMETER, externalParameterStatus.ACTIVE);
}
if (externalParameterEmail) {
store.commit(