Merge pull request #856 from Safelite/feature/digital/SSR-1517

SSR-1517 implement isItacOptimized
This commit is contained in:
Josh Dassinger 2024-10-02 11:45:53 -05:00 committed by GitHub
commit 35fb959089
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -159,6 +159,7 @@ export const getDefaultState = () => ({
insuranceCoverage: { insuranceCoverage: {
coverageStatus: coverageStatuses.PENDING, coverageStatus: coverageStatuses.PENDING,
coverageType: coverageType.NONE, coverageType: coverageType.NONE,
isItacOptimized: false,
claimNumber: null claimNumber: null
}, },
payment: { payment: {
@ -584,6 +585,9 @@ export const useMainStore = defineStore({
updateCoverageType(type) { updateCoverageType(type) {
this.order.insuranceCoverage.coverageType = type; this.order.insuranceCoverage.coverageType = type;
}, },
updateIsItacOptimized(isItacOptimized) {
this.order.insuranceCoverage.isItacOptimized = isItacOptimized;
},
registerClaim() { registerClaim() {
const nonNumberCharRegex = /[^0-9]/g; const nonNumberCharRegex = /[^0-9]/g;
const { order, isITAC } = this; const { order, isITAC } = this;
@ -1177,13 +1181,14 @@ export const useMainStore = defineStore({
throw error; throw error;
}); });
const { lineItems, serverData, isItac, primaryBillToNumber, partsWerePriced } = response.data; const { lineItems, serverData, isItac, primaryBillToNumber, partsWerePriced, isItacOptimized } = response.data;
if (serverData) { if (serverData) {
this.order.lineItems.serverData = serverData; this.order.lineItems.serverData = serverData;
} }
if (partsWerePriced) { if (partsWerePriced) {
this.updateIsItacOptimized(isItacOptimized);
if (isItac) { if (isItac) {
// if the ITAC Pricing API call returns isItac = true then we should switch to ITAC coverage type // if the ITAC Pricing API call returns isItac = true then we should switch to ITAC coverage type
this.updateCoverageType(coverageType.ITAC); this.updateCoverageType(coverageType.ITAC);
@ -1261,7 +1266,7 @@ export const useMainStore = defineStore({
facilityType: 'Mobile', facilityType: 'Mobile',
parentAccountNumber: this.order.parentAccountNumber, parentAccountNumber: this.order.parentAccountNumber,
billToAccountNumber: this.billToAccountNumber, billToAccountNumber: this.billToAccountNumber,
isItacOptimized: false, // TODO: Implement with response from getITACPriceOrderItems isItacOptimized: insuranceCoverage.isItacOptimized,
providerNumber: this.providerNumber, providerNumber: this.providerNumber,
carId: vehicle.carId, carId: vehicle.carId,
coverageStatus: coverageStatuses.mapToApi(insuranceCoverage.coverageStatus), coverageStatus: coverageStatuses.mapToApi(insuranceCoverage.coverageStatus),
@ -1823,6 +1828,7 @@ export const useMainStore = defineStore({
resetInsurance() { resetInsurance() {
this.order.insuranceCoverage.coverageStatus = coverageStatuses.PENDING; this.order.insuranceCoverage.coverageStatus = coverageStatuses.PENDING;
this.order.insuranceCoverage.coverageType = coverageType.NONE; this.order.insuranceCoverage.coverageType = coverageType.NONE;
this.order.insuranceCoverage.isItacOptimized = false;
this.order.insuranceCoverage.claimNumber = null; this.order.insuranceCoverage.claimNumber = null;
}, },