From e21cd97c7b3b60ed88fd32109ad551a76678ab95 Mon Sep 17 00:00:00 2001 From: brydon1 Date: Fri, 21 Jul 2023 09:39:33 -0400 Subject: [PATCH 1/3] Adding policyLookupSuccessful to store --- src/store/index.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/store/index.js b/src/store/index.js index 72709239..dcb0dfcf 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -53,6 +53,7 @@ const getDefaultState = () => damageState: null, damageCity: null, isDamageGlassOnly: null, + policyLookupSuccessful: null, noCoverage: null, deductible: { repair: null, // numerical value; how much customer owes on deductible in repair case @@ -349,6 +350,7 @@ export const useMainStore = defineStore({ getCoveragePolicyInfo({ accountNumber, policyNumber, dateOfLoss, zipCode }) { // TODO: replace place holder correlationId with the real thing const placeHolderCorrelationId = '00000000-0000-0000-0000-000000000000'; + const { policy } = this.order; try { const response = globalMethods.callHttpClient({ method: endpoints.CoveragePolicyInfo.method, @@ -360,9 +362,14 @@ export const useMainStore = defineStore({ zipCode, correlationId: placeHolderCorrelationId } + }).then((r) => { + const responsePolicy = response.policies?.[0]; + policy.policyLookupSuccessful = !!responsePolicy; + return r; }); return response; } catch (responseError) { + policy.policyLookupSuccessful = false; return { error: { status: responseError.status From ff40ff18f773143403a8cc935d9185b18d408e9f Mon Sep 17 00:00:00 2001 From: brydon1 Date: Fri, 21 Jul 2023 09:49:57 -0400 Subject: [PATCH 2/3] Tweaks to coverage statement --- .../coverage-statement/coverage-statement.vue | 23 ++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/src/layouts/coverage-statement/coverage-statement.vue b/src/layouts/coverage-statement/coverage-statement.vue index 689272f8..69510c21 100644 --- a/src/layouts/coverage-statement/coverage-statement.vue +++ b/src/layouts/coverage-statement/coverage-statement.vue @@ -66,7 +66,7 @@ v-slot="{ meta }" buttonTypeString="listButton" isRequired v-model="selectedProvider" - validationRules="selection-required" + :validationRules="rules.selectionRequired" id="coverage-button-question"> @@ -91,11 +91,9 @@ v-slot="{ meta }" // Import Component import baseFormMixin from '@/mixins/base-form-mixin'; -import { Form, defineRule } from 'vee-validate'; +import { Form } from 'vee-validate'; import siteFooter from '@/iss-components/site-footer/site-footer.vue'; import siteHeader from '@/iss-components/site-header/site-header.vue'; -import siteSubHeader from '@/iss-components/site-sub-header/site-sub-header.vue'; -import textBlock from "@/digital-components/text-block/text-block"; import recalModal from '@/layouts/coverage-statement/recal-modal/recal-modal.vue'; import alert from "@/ux-components/alert/alert"; import contentGroupModal from '@/iss-components/content-group-modal/content-group-modal'; @@ -108,11 +106,7 @@ import { getDamageString } from '@/helpers/damage-helper.js'; import { useMainStore } from "@/store"; import vehicleQuestionsMixin from "@/mixins/vehicle-questions-mixin"; import { processIfStatements } from '@/helpers/cms-content-helper'; -import { required } from "@/helpers/validation-rules"; -import { errorMessages } from "@/constants/error-messages"; - -// DEFINE VALIDATION RULES -defineRule("selection-required", required(errorMessages.OPTION_REQUIRED)); +import globalRules from '@/constants/global-rules.js'; const store = useMainStore(); @@ -137,7 +131,9 @@ export default { }, ]; - if (useMainStore().isClaimRegistrationRequired){ + if (useMainStore().policy.policyLookupSuccessful + && useMainStore().isClaimRegistrationRequired + && !useMainStore().policy.noCoverage) { const registerClaimResponse = await useMainStore().registerClaim(); promiseResultMap.push({ resultKey: 'registerClaim', @@ -152,7 +148,7 @@ export default { : []; const availableLineItems = [ ...resultMap.supportingItems, - ...clonedGlassParts, + ...clonedGlassParts ]; const pricingResults = await store.getPriceOrderItems(availableLineItems); @@ -168,9 +164,7 @@ export default { components: { siteFooter, siteHeader, - siteSubHeader, Form, - textBlock, recalModal, alert, contentGroupModal, @@ -187,6 +181,9 @@ export default { availableLineItems: [], selectedProvider: "", deductibleText: "Your deductible is:", + rules: { + selectionRequired: globalRules.OPTION_REQUIRED + } } }, computed: { From 4e1b039a6e598e693e77d5f5f07f627f003a4d5a Mon Sep 17 00:00:00 2001 From: brydon1 Date: Fri, 21 Jul 2023 12:00:07 -0400 Subject: [PATCH 3/3] Fixing formatting and adding return values for all methods --- .../coverage-statement/coverage-statement.vue | 700 +++++++++--------- 1 file changed, 340 insertions(+), 360 deletions(-) diff --git a/src/layouts/coverage-statement/coverage-statement.vue b/src/layouts/coverage-statement/coverage-statement.vue index 69510c21..87209eb0 100644 --- a/src/layouts/coverage-statement/coverage-statement.vue +++ b/src/layouts/coverage-statement/coverage-statement.vue @@ -1,9 +1,9 @@ @@ -483,7 +463,7 @@ export default { font-size: 16px; line-height: 26px; } - + .my-4 { margin-top: 8px !important; margin-bottom: 0px !important;