diff --git a/src/layouts/coverage-statement/coverage-statement.vue b/src/layouts/coverage-statement/coverage-statement.vue index eec23bfee..db915ae80 100644 --- a/src/layouts/coverage-statement/coverage-statement.vue +++ b/src/layouts/coverage-statement/coverage-statement.vue @@ -87,6 +87,12 @@ import contentGroupModal from "@/fmg-components/content-group-modal/content-grou import textBlock from "@/digital-components/text-block/text-block.vue"; import { debugLog } from "@/helpers/debug-log-helper"; import { loadSessionIfPresent } from "@/helpers/heritage-integration/order-helper"; +import { + flushPagePrereqsLogs, + hasServiceZipInfo, + hasInsuranceInfo, + hasGlassPartsOrRepairInfo, +} from "@/helpers/page-prerequisites-helper.js"; export default { name: "coverage-statement", mixins: [], @@ -199,7 +205,20 @@ export default { ); }, arePagePrerequisitesValid() { - return true; + const order = store.getters.order; + if (order.payment.isClaimAndCoverage) { + return true; //TODO: Future card when C&C flow is implemented + } + + const logQueue = []; + + const serviceZip = hasServiceZipInfo(order, logQueue); + const glassPartsOrRepair = hasGlassPartsOrRepairInfo(order, logQueue); + const insuranceInfo = hasInsuranceInfo(order, logQueue); + const preReqResult = serviceZip && glassPartsOrRepair && insuranceInfo; + + flushPagePrereqsLogs("coverage-statement.vue", preReqResult, logQueue); + return preReqResult; }, openModalAction(modalName) { this.$refs[modalName]?.openModal(); diff --git a/src/layouts/insurance-details/insurance-details.vue b/src/layouts/insurance-details/insurance-details.vue index 6414d33de..414cac93d 100644 --- a/src/layouts/insurance-details/insurance-details.vue +++ b/src/layouts/insurance-details/insurance-details.vue @@ -151,6 +151,12 @@ import { regex } from "@/helpers/validation-rules"; import { coverageStatus, coverageStatusEnum } from "@/constants/insurance"; import saveProgressModalQuestion from "@/fmg-components/save-progress-modal-question/save-progress-modal-question"; import { debugLog } from "@/helpers/debug-log-helper"; +import { + flushPagePrereqsLogs, + hasServiceZipInfo, + hasGlassPartsOrRepairInfo, + hasInsuranceInfo, +} from "@/helpers/page-prerequisites-helper.js"; // DEFINE VALIDATION RULES defineRule( @@ -363,7 +369,15 @@ export default { ); }, arePagePrerequisitesValid() { - return true; + const order = store.getters.order; + const logQueue = []; + + const serviceZip = hasServiceZipInfo(order, logQueue); + const glassPartsOrRepair = hasGlassPartsOrRepairInfo(order, logQueue); + const preReqResult = serviceZip && glassPartsOrRepair; + + flushPagePrereqsLogs("insurance-details.vue", preReqResult, logQueue); + return preReqResult; }, }, }; diff --git a/src/layouts/policy-info-submitted/policy-info-submitted.vue b/src/layouts/policy-info-submitted/policy-info-submitted.vue index d3b4d22c0..9cb02da1e 100644 --- a/src/layouts/policy-info-submitted/policy-info-submitted.vue +++ b/src/layouts/policy-info-submitted/policy-info-submitted.vue @@ -35,7 +35,6 @@