From d50a3ed44e2edab2a7a661c43491c3aa42c57794 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期四, 25 九月 2025 14:17:05 +0800
Subject: [PATCH] 用户行为分享基础埋点

---
 pages/kitchen/KitchenVideo.vue |   78 +++++++++++++++++++++++++++++++++++++--
 1 files changed, 74 insertions(+), 4 deletions(-)

diff --git a/pages/kitchen/KitchenVideo.vue b/pages/kitchen/KitchenVideo.vue
index 79305e9..a2b54e4 100644
--- a/pages/kitchen/KitchenVideo.vue
+++ b/pages/kitchen/KitchenVideo.vue
@@ -284,6 +284,8 @@
   changeCollect
 } from "@/api/collect.js";
 import { saveShare, saveShareClickRecord } from "@/api/share.js";
+import storage from "@/utils/storage.js";
+import { getSessionId, userAction } from "@/api/userAction.js";
 export default {
   computed: {
     hasPlayTime() {
@@ -385,10 +387,28 @@
 	  similarlyNomore: false, // 鏄惁杩樻湁鏇村鐩镐技瑙嗛
 	  similaryVideoIndex: 0, // 鐩镐技瑙嗛鐨勬挱鏀句綅缃�
 	  similarlyLoading: false, // 鐩镐技瑙嗛鍔犺浇
-	  marginBottom: 0 // 搴曢儴瀹夊叏鍖哄煙
+	  marginBottom: 0 ,// 搴曢儴瀹夊叏鍖哄煙
+	  pageSessionNo:"",
+	  actionParam:{
+		sessionId:'',
+		actionType:"PAGE",
+		joinType:"SELF",
+		pageCode:"KITCHEN_VIDEO",
+		pageParams:"{}",
+		pageStatus:"JOIN",
+		pageType:"LIST"
+		}
     }
   },
   onShow() {
+	  getSessionId().then(res=>{
+	  		this.pageSessionNo = res.data.data
+	  		if(this.pageSessionNo){
+	  		let	param = this.actionParam;
+	  			param.sessionId = this.pageSessionNo
+	  			userAction(param)
+	  		}
+	  })	
     // this.showDrawer('showLeft')
     this.loadVideos()
     // 濡傛灉瑙嗛鎸変笅鏆傚仠鍚庡垏鎹㈤〉闈㈠啀鍥炲埌椤甸潰鏃讹紝鍙畻鏆傚仠鏃堕棿锛堝洜涓烘殏鍋滄椂闂村拰绂诲紑椤甸潰鏃堕棿鏄噸澶嶇殑锛屽彧绠椾竴涓級
@@ -397,8 +417,18 @@
       this.totalHidenTime += duration
     }
   },
+  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)
   },
   onLoad(option) {
 		this.marginBottom = uni.getSystemInfoSync().safeAreaInsets.bottom;
@@ -427,18 +457,23 @@
 			queryParam.shareType = shareType
 			queryParam.source = source
 			console.log('瑙f瀽鍙傛暟:', { shareType, videoId,source });
+			this.actionParam.pageParams = JSON.stringify(params)
+			this.actionParam.joinType = 'SHARE'
 		}
 		const token = storage.getAccessToken();
 		if(!token){
 			this.wxSilentLogin(() => {
 				// 鍒ゆ柇鏄笉鏄偣鍑诲垎浜摼鎺ヨ繘鏉ョ殑
 				if (option.userId && option.videoId) {
+					this.actionParam.pageParams = JSON.stringify(option)
+					this.actionParam.joinType = 'SCAN'
 					queryParam.videoId = option.videoId
 					// 淇濆瓨鍒嗕韩鐐瑰嚮璁板綍
 					saveShareClickRecord({refId: option.videoId, shareUserId: option.userId})
 				}
 					this.getKitchenTypeList();
 					this.loadVideos(queryParam);
+					
 			})
 		}else{
 			if (option.userId && option.videoId) {
@@ -447,7 +482,7 @@
 				saveShareClickRecord({refId: option.videoId, shareUserId: option.userId})
 		}
 		this.getKitchenTypeList();
-		this.loadVideos();
+		this.loadVideos(queryParam);
 	}
 	
   }, 
@@ -799,14 +834,48 @@
       })
     },
     // 鍔犺浇瑙嗛鏁版嵁
-    async loadVideos() {
+    async loadVideos(param) {
       console.log(this.loading, this.videoNoMore,this.videoQuery)
       if (this.videoQuery.pageNumber == 1) {
 
       } else if (this.loading || this.videoNoMore) return;
       this.loading = true;
-
+		if(param){
+			console.log("浜岀淮鐮佹壂鐮佹暟鎹墽琛屽湪姝ゅ1")
+			console.log(this.videoQuery)
+			getkitchenVideoList(this.videoQuery).then(res => {
+				console.log(res)
+			  // 鏂板涓�涓瓧娈电敤浜庡惊鐜椂鐨刱ey
+			  const data = res.data.data.map(item => {
+			  	return {
+			  		...item,
+			  		updateKey: item.id
+			  	}
+			  })
+			  if (this.videoQuery.pageNumber === 1) {
+			    this.videoList = data;
+			  } else {
+			    this.videoList = [
+			      ...this.videoList,
+			      ...data.filter(
+			          (newItem) => !this.videoList.some((oldItem) => oldItem.id === newItem.id)
+			      ),
+			    ];
+			  }
+			  this.loading = false;
+			  if (data.length < this.videoQuery.pageSize) {
+			    this.videoNoMore = true;
+			    return;
+			  }
+			  this.videoQuery.pageNumber++;
+			
+			})
+		}else{
+			
+		console.log("浜岀淮鐮佹壂鐮佹暟鎹墽琛屽湪姝ゅ2")
+		console.log(this.videoQuery)
       getkitchenVideoList(this.videoQuery).then(res => {
+		  console.log(res)
         // 鏂板涓�涓瓧娈电敤浜庡惊鐜椂鐨刱ey
         const data = res.data.data.map(item => {
         	return {
@@ -832,6 +901,7 @@
         this.videoQuery.pageNumber++;
 
       })
+	  }
     },
 
     // 婊戝姩鍒囨崲瑙嗛

--
Gitblit v1.8.0