CASH-2508 check externalparameterstate correctly

CASH-2508 check externalparameterstate correctly.  It should check more than the flag because parms can be optional.  So make sure we're checking damage options stored in external params so the continue button is properly enabled
This commit is contained in:
CarlNation 2026-04-01 13:49:06 -04:00
parent b94560dc86
commit a4e853e528

View file

@ -100,6 +100,7 @@ import store from "@/store";
import baseMixin from "@/mixins/base-mixin"; import baseMixin from "@/mixins/base-mixin";
import { nextTick } from "vue"; import { nextTick } from "vue";
import { getBoolFromString } from "@/helpers/boolean-helper"; import { getBoolFromString } from "@/helpers/boolean-helper";
import { externalParameterStatus } from "@/constants/external-parameters";
// DEFINE VALIDATION RULES // DEFINE VALIDATION RULES
defineRule("replace-options-required", required(errorMessages.REPLACE_OPTIONS_REQUIRED)); defineRule("replace-options-required", required(errorMessages.REPLACE_OPTIONS_REQUIRED));
@ -143,7 +144,9 @@ export default {
vm.$refs.backGlassOptions.initializeComponent( vm.$refs.backGlassOptions.initializeComponent(
resultMap.damageOptions.backGlassOptions.availableReplacementOptions resultMap.damageOptions.backGlassOptions.availableReplacementOptions
); );
if (store.getters.externalParameterState?.isExternalParameter) { if (store.getters.externalParameterState?.isExternalParameter &&
store.getters.externalParameterState?.isExternalParameter === externalParameterStatus.ACTIVE &&
store.getters.externalParameterState.vehicleDamage?.damageType) {
await nextTick(); await nextTick();
const isValid = await baseMixin.methods.isFormValid(vm.$refs.theForm); const isValid = await baseMixin.methods.isFormValid(vm.$refs.theForm);
debugLog(`**** vehicle-damage is form valid: ${isValid} ****`); debugLog(`**** vehicle-damage is form valid: ${isValid} ****`);
@ -355,7 +358,9 @@ export default {
) { ) {
windShieldOptions.selectedWindshieldDamageType = windShieldOptions.selectedWindshieldDamageType =
damageLocationsSelected.REPLACE; damageLocationsSelected.REPLACE;
if (!store.getters.externalParameterState.isExternalParameter) { if (!store.getters.externalParameterState.isExternalParameter ||
store.getters.externalParameterState?.isExternalParameter !== externalParameterStatus.ACTIVE ||
!store.getters.externalParameterState.vehicleDamage?.damageType) {
windShieldOptions.selectedWindshieldReplaceOptions.push( windShieldOptions.selectedWindshieldReplaceOptions.push(
damageLocationsSelected.SINGLE damageLocationsSelected.SINGLE
); );
@ -666,12 +671,20 @@ export default {
return this.$store.getters.requiresVerifiedRedirecting; return this.$store.getters.requiresVerifiedRedirecting;
}, },
isContinueEnabled() { isContinueEnabled() {
return ( var isEnabled = (
this.isAnyDamageSelected && this.isAnyDamageSelected &&
this.isWindshieldValid && this.isWindshieldValid &&
this.isRearGlassValid && this.isRearGlassValid &&
this.isSideGlassValid this.isSideGlassValid
); );
if (!isEnabled) {
debugLog(`************************ isContinueEnabled: ${isEnabled} *****************************`);
debugLog(`**** this.isAnyDamageSelected: ${this.isAnyDamageSelected} ****`);
debugLog(`**** this.isWindshieldValid: ${this.isWindshieldValid} ****`);
debugLog(`**** this.isRearGlassValid: ${this.isRearGlassValid} ****`);
debugLog(`**** this.isSideGlassValid: ${this.isSideGlassValid} ****`);
}
return isEnabled;
}, },
isAnyDamageSelected() { isAnyDamageSelected() {
return this.selectedDamageLocations != null && this.selectedDamageLocations.length != 0; return this.selectedDamageLocations != null && this.selectedDamageLocations.length != 0;