From b6178ead442c9f0c5db504e1038e2f8228929e41 Mon Sep 17 00:00:00 2001 From: AdamCaouetteSafelite Date: Thu, 10 Jul 2025 06:09:24 -0400 Subject: [PATCH 1/5] CASH-845 update getMobileTimeSlots call in store to take optional zipCode param --- src/store/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/store/index.js b/src/store/index.js index 61c38997c..4a428c9e2 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -2101,7 +2101,7 @@ export const actions = { return globalMethods.callHttpClient(options); }, - getMobileTimeSlots(context, { payload: { startDate, endDate }, pageNameToLog }) { + getMobileTimeSlots(context, { payload: { startDate, endDate, zipCode }, pageNameToLog }) { const order = context.state.order; const vehicle = context.state.order.vehicle; const payment = context.state.order.payment; @@ -2139,7 +2139,7 @@ export const actions = { style: vehicle.style, vin: vehicle.vin ?? "", }, - zipCode: order.serviceLocation.zipCode, + zipCode: zipCode ?? order.serviceLocation.zipCode, }; let hasCalled = timeSlotCallFlags.mobile; From fb03af0533eeafbd1f1fcf6404a0574974abde44 Mon Sep 17 00:00:00 2001 From: AdamCaouetteSafelite Date: Thu, 10 Jul 2025 06:32:02 -0400 Subject: [PATCH 2/5] CASH-845 update api call method structure for new zipCode param to be passed --- src/digital-components/date-picker/date-picker.vue | 9 ++++++--- src/layouts/schedule/schedule.vue | 11 +++++++---- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/digital-components/date-picker/date-picker.vue b/src/digital-components/date-picker/date-picker.vue index d04d10872..1156a2d54 100644 --- a/src/digital-components/date-picker/date-picker.vue +++ b/src/digital-components/date-picker/date-picker.vue @@ -483,9 +483,12 @@ export default { const loadInitialDataPromise = new Promise((resolve, reject) => { const response = config.getSelectableDatesCallback( - initialViewStartDate, - initialViewEndDate, - config.providerNumber + { + startDateString: initialViewStartDate, + endDateString: initialViewEndDate, + providerNumber: config.providerNumber, + zipCode: config.zipCode, + } ); resolve(response); }); diff --git a/src/layouts/schedule/schedule.vue b/src/layouts/schedule/schedule.vue index 809c2d069..f86472e36 100644 --- a/src/layouts/schedule/schedule.vue +++ b/src/layouts/schedule/schedule.vue @@ -257,7 +257,7 @@ const TIME_SLOTS_CALL_DAYS_LIMIT = 34; // needs to be 34 for API limits (35 does const NUMBER_OF_CALENDAR_ROWS_TO_SHOW_FOR_INITIAL_VIEW = 2; const MOBILE_FEE_PART_TYPE = "MOBILE FEE"; -const getScheduleApiResponse = async (startDateString, endDateString, providerNumber) => { +const getScheduleApiResponse = async ({startDateString, endDateString, providerNumber, zipCode}) => { const apiEndDateLimit = sumDateString(startDateString, TIME_SLOTS_CALL_DAYS_LIMIT); const difference = calcDaysBetweenDates(startDateString, endDateString); const apiCallsCount = Math.ceil(difference / TIME_SLOTS_CALL_DAYS_LIMIT); @@ -1207,9 +1207,12 @@ export default { async getMoreScheduleData(startDate, endDate) { // called only when "View more dates" is clicked; not on initial page load const moreShopTimeSlots = await getScheduleApiResponse( - startDate, - endDate, - this.selectedProvider.providerNumber + { + startDateString: startDate, + endDateString: endDate, + providerNumber: this.selectedProvider.providerNumber, + zipCode: this.zipCode, + } ); // ADD API CALL RESULTS TO EXISTING DATE DATA From 66248db361e5ac2faecdbe0a4b860f6c1c2aa4c0 Mon Sep 17 00:00:00 2001 From: AdamCaouetteSafelite Date: Thu, 10 Jul 2025 06:32:52 -0400 Subject: [PATCH 3/5] CASH-845 restore temp testing code --- src/layouts/schedule/schedule.vue | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/layouts/schedule/schedule.vue b/src/layouts/schedule/schedule.vue index f86472e36..d7e12c33c 100644 --- a/src/layouts/schedule/schedule.vue +++ b/src/layouts/schedule/schedule.vue @@ -761,9 +761,7 @@ export default { ); }, isAppointmentTypeDisplayed() { - // temporary adjustment - return true; - // return this.zipCode && !this.displayNoShopsAlert; + return this.zipCode && !this.displayNoShopsAlert; }, requiresInshopRecalibration() { // Specifically check for isRecalibrationServiceableMobile === false, not null or true. From c2aed7e25ae6dedf57ffbaa09b68be8db1609e98 Mon Sep 17 00:00:00 2001 From: AdamCaouetteSafelite Date: Thu, 10 Jul 2025 06:46:56 -0400 Subject: [PATCH 4/5] CASH-845 add zipCode to mobile call payload --- src/layouts/schedule/schedule.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/layouts/schedule/schedule.vue b/src/layouts/schedule/schedule.vue index d7e12c33c..3efdfab03 100644 --- a/src/layouts/schedule/schedule.vue +++ b/src/layouts/schedule/schedule.vue @@ -287,6 +287,7 @@ const getScheduleApiResponse = async ({startDateString, endDateString, providerN payload: { startDate: apiStartDate, endDate: apiEndDate, + zipCode: zipCode, }, }; storeActionConfigInshop = { From 26035ab37daf732e20d2516c65df1a947552b013 Mon Sep 17 00:00:00 2001 From: AdamCaouetteSafelite Date: Thu, 10 Jul 2025 09:28:25 -0400 Subject: [PATCH 5/5] CASH-845 prettier fixes --- .../date-picker/date-picker.vue | 14 ++++++------- src/layouts/schedule/schedule.vue | 21 +++++++++++-------- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/src/digital-components/date-picker/date-picker.vue b/src/digital-components/date-picker/date-picker.vue index 1156a2d54..bc3682cf0 100644 --- a/src/digital-components/date-picker/date-picker.vue +++ b/src/digital-components/date-picker/date-picker.vue @@ -482,14 +482,12 @@ export default { } const loadInitialDataPromise = new Promise((resolve, reject) => { - const response = config.getSelectableDatesCallback( - { - startDateString: initialViewStartDate, - endDateString: initialViewEndDate, - providerNumber: config.providerNumber, - zipCode: config.zipCode, - } - ); + const response = config.getSelectableDatesCallback({ + startDateString: initialViewStartDate, + endDateString: initialViewEndDate, + providerNumber: config.providerNumber, + zipCode: config.zipCode, + }); resolve(response); }); diff --git a/src/layouts/schedule/schedule.vue b/src/layouts/schedule/schedule.vue index 3efdfab03..630156827 100644 --- a/src/layouts/schedule/schedule.vue +++ b/src/layouts/schedule/schedule.vue @@ -257,7 +257,12 @@ const TIME_SLOTS_CALL_DAYS_LIMIT = 34; // needs to be 34 for API limits (35 does const NUMBER_OF_CALENDAR_ROWS_TO_SHOW_FOR_INITIAL_VIEW = 2; const MOBILE_FEE_PART_TYPE = "MOBILE FEE"; -const getScheduleApiResponse = async ({startDateString, endDateString, providerNumber, zipCode}) => { +const getScheduleApiResponse = async ({ + startDateString, + endDateString, + providerNumber, + zipCode, +}) => { const apiEndDateLimit = sumDateString(startDateString, TIME_SLOTS_CALL_DAYS_LIMIT); const difference = calcDaysBetweenDates(startDateString, endDateString); const apiCallsCount = Math.ceil(difference / TIME_SLOTS_CALL_DAYS_LIMIT); @@ -1205,14 +1210,12 @@ export default { }, async getMoreScheduleData(startDate, endDate) { // called only when "View more dates" is clicked; not on initial page load - const moreShopTimeSlots = await getScheduleApiResponse( - { - startDateString: startDate, - endDateString: endDate, - providerNumber: this.selectedProvider.providerNumber, - zipCode: this.zipCode, - } - ); + const moreShopTimeSlots = await getScheduleApiResponse({ + startDateString: startDate, + endDateString: endDate, + providerNumber: this.selectedProvider.providerNumber, + zipCode: this.zipCode, + }); // ADD API CALL RESULTS TO EXISTING DATE DATA this.selectableDatesInshop.days = this.selectableDatesInshop.days.concat(