From 89efee9a2e20fc04b4537d859917b47cf68a814c Mon Sep 17 00:00:00 2001 From: peng <peng.com> Date: 星期五, 26 九月 2025 18:28:40 +0800 Subject: [PATCH] 用户行为分享基础埋点 --- pages/order/afterSales/afterSales.vue | 49 +++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 39 insertions(+), 10 deletions(-) diff --git a/pages/order/afterSales/afterSales.vue b/pages/order/afterSales/afterSales.vue index fb42565..e5f2973 100644 --- a/pages/order/afterSales/afterSales.vue +++ b/pages/order/afterSales/afterSales.vue @@ -128,6 +128,7 @@ order.flowPrice != 0 && sku.afterSaleStatus.includes('NOT_APPLIED') || sku.afterSaleStatus.includes('PART_AFTER_SALE') + || order.orderStatus === 'UNDELIVERED' " @click="applyService(sku.sn, order, sku)" > @@ -198,22 +199,15 @@ </template> <script> -import UTabs from '@/uview-components/uview-ui/components/u-tabs/u-tabs.vue'; -import USearch from '@/uview-components/uview-ui/components/u-search/u-search.vue'; -import UImage from '@/uview-components/uview-ui/components/u-image/u-image.vue'; -import UIcon from '@/uview-components/uview-ui/components/u-icon/u-icon.vue'; -import ULoadmore from '@/uview-components/uview-ui/components/u-loadmore/u-loadmore.vue'; -import UModal from '@/uview-components/uview-ui/components/u-modal/u-modal.vue'; +import '@/components/uview-components/uview-ui'; -import uniLoadMore from "@/components/uni-load-more/uni-load-more.vue"; import { getAfterSaleList, cancelAfterSale } from "@/api/after-sale.js"; import { getOrderList } from "@/api/order.js"; import storage from "@/utils/storage"; +import { getSessionId, userAction } from "@/api/userAction.js"; export default { - components: { - uniLoadMore,UTabs,USearch,UImage,UIcon,ULoadmore - }, + data() { return { list: [ @@ -247,9 +241,44 @@ }, status: "loadmore", keywords: "", // 鎼滅储璁㈠崟sn + pageSessionNo:"", + sendOnShow:false, + actionParam:{ + sessionId:'', + actionType:"PAGE", + joinType:"SELF", + pageCode:"AFTER_SALE", + pageParams:"{}", + pageStatus:"JOIN", + pageType:"LIST" + } }; }, + onUnload() { + let param = this.actionParam; + if (this.sendOnShow)return + param.pageStatus = "LEAVE" + userAction(param) + }, + onHide() { + this.startHidenTime = Date.now() + let param = this.actionParam; + this.sendOnShow = true; + param.pageStatus = "LEAVE" + userAction(param) + }, + onShow() { + getSessionId().then(res=>{ + this.pageSessionNo = res.data.data + if(this.pageSessionNo){ + let param = this.actionParam; + param.sessionId = this.pageSessionNo + userAction(param) + } + }) + }, onLoad(options) { + this.actionParam.pageParams = JSON.stringify(options) this.orderList = []; this.params.pageNumber = 1; if (options.orderSn) this.params.keywords = options.orderSn; -- Gitblit v1.8.0