From 229d23ddcabeecf0607fe26187f1f6e4f71b1a40 Mon Sep 17 00:00:00 2001 From: Jeremy-Z Date: Thu, 14 May 2026 14:31:34 -0400 Subject: [PATCH] Fixed issue of missing parent account and referral sequence number after order submission. --- src/mixins/analytics-mixin.js | 43 ++++++++++++++++------------------- 1 file changed, 20 insertions(+), 23 deletions(-) diff --git a/src/mixins/analytics-mixin.js b/src/mixins/analytics-mixin.js index 2c8c298d..4312d65c 100644 --- a/src/mixins/analytics-mixin.js +++ b/src/mixins/analytics-mixin.js @@ -27,7 +27,6 @@ import { getRecalPartNumbers, isRecalOrder } from "@/helpers/recal-helper"; import coverageStatuses from '@/constants/coverage-statuses'; import coverageType from '@/constants/coverage-type'; import { AppointmentTypeStrings } from '@/constants/schedule-constants'; -import issPageValues from '@/router/router-constants/issPage-values'; import { useMainStore } from '@/store'; function pushToDataLayerIfDefined(data) { @@ -67,15 +66,23 @@ export default { }, async logPageView(pageEvent) { const store = useMainStore(); + const issConfig = store.issConfig; const currentPageName = this.getPageNameByQueryString(); //await this.validateSession(); - + + const submittedOrder = store.getSubmittedOrder(); + const hasSubmittedOrder = store.hasSubmittedOrder(); + const order = hasSubmittedOrder ? submittedOrder : store.order; + + // Use parentaccount on order, use parentaccount on issconfig as fallback. + const parentAccountNumber = (order.parentAccountNumber ?? issConfig.parentAccountNumber); + const payload = { userId: getUserIdValue(), sessionKey: getSessionKeyValue(), pageName: currentPageName, - referralSequenceNumber: store.order.referralSequenceNumber, - parentAccountNumber: store.order.parentAccountNumber ?? 0, + referralSequenceNumber: order.referralSequenceNumber, + parentAccountNumber: parentAccountNumber, sessionId: getSessionIdValue(), action: '', event: pageEvent, @@ -389,27 +396,16 @@ export default { const submittedOrder = store.getSubmittedOrder(); const hasSubmittedOrder = store.hasSubmittedOrder(); - - // TODO: Find equivalent ISS methods for these: - const hasSubmittedOrderAtConfirmationPage = - hasSubmittedOrder && currentPageName?.toLowerCase() === issPageValues.ORDER_CONFIRMATION; + const order = hasSubmittedOrder ? submittedOrder : store.order; var payload = { deviceId: deviceId, sessionId: sid, actionName: `Browser page:${currentPageName}`, - referralSequenceNumber: hasSubmittedOrderAtConfirmationPage - ? submittedOrder.referralSequenceNumber - : store.order.referralSequenceNumber, - referralNumber: hasSubmittedOrderAtConfirmationPage - ? submittedOrder.referralNumber - : store.order.referralNumber, - workOrderId: hasSubmittedOrderAtConfirmationPage - ? submittedOrder.workOrderId - : store.order.workOrderId, - workOrderNumber: hasSubmittedOrderAtConfirmationPage - ? submittedOrder.workOrderNumber - : store.order.workOrderNumber, + referralSequenceNumber: order.referralSequenceNumber, + referralNumber: order.referralNumber, + workOrderId: order.workOrderId, + workOrderNumber: order.workOrderNumber, conceptVariation: conceptVariation, isConceptExposed: isConceptExposed, }; @@ -426,10 +422,13 @@ export default { const store = useMainStore(); const submittedOrder = store.getSubmittedOrder(); const hasSubmittedOrder = store.hasSubmittedOrder(); - const order = hasSubmittedOrder ? submittedOrder : store.order; + const order = hasSubmittedOrder ? submittedOrder : store.order; const issConfig = store.issConfig; const applicationUser = store.applicationUser; + // Use parentaccount on order, use parentaccount on issconfig as fallback. + const parentAccountNumber = (order.parentAccountNumber ?? issConfig.parentAccountNumber).toString(); + // NOTE: ISS does not support early bird times. const isEarlyBird = false; /* order?.lineItems?.supportingItems?.find( (lineItem) => lineItem.partType == partTypeStrings.EARLY_BIRD @@ -482,8 +481,6 @@ export default { } } */ - var parentAccountNumber = (order?.parentAccountNumber ?? (issConfig.parentAccountNumber ?? 0)).toString(); - var sessionData = {}; sessionData.currentPage = currentPageName; sessionData.sid = getSessionIdValue();