From c6bddd39c91f2d411316a78ed27b466488c2a39e Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期二, 30 九月 2025 17:38:39 +0800
Subject: [PATCH] 店铺扫码领取抽奖机会

---
 pages/prize/PrizeDetail/PrizeDetail.vue |   78 +++++++++++++++++++++++++++++++--------
 1 files changed, 62 insertions(+), 16 deletions(-)

diff --git a/pages/prize/PrizeDetail/PrizeDetail.vue b/pages/prize/PrizeDetail/PrizeDetail.vue
index 0272909..9b6102e 100644
--- a/pages/prize/PrizeDetail/PrizeDetail.vue
+++ b/pages/prize/PrizeDetail/PrizeDetail.vue
@@ -96,7 +96,6 @@
 					<button class="chance-item" open-type="share">
 						<view class="chance-icon">馃懃</view>
 						<text class="chance-title">鍒嗕韩濂藉弸</text>
-						<text class="chance-subtitle">+1娆℃満浼�</text>
 					</button>
 					<!-- 					<view class="chance-item" @tap="shareToTimeline">
 						<view class="chance-icon">馃寪</view>
@@ -106,17 +105,14 @@
 					<view class="chance-item" @tap="watchVideo">
 						<view class="chance-icon">馃幀</view>
 						<text class="chance-title">娴忚瑙嗛</text>
-						<text class="chance-subtitle">+1娆℃満浼�</text>
 					</view>
 					<view class="chance-item" @tap="browseProduct">
 						<view class="chance-icon">馃泹锔�</view>
 						<text class="chance-title">娴忚鍟嗗搧</text>
-						<text class="chance-subtitle">+1娆℃満浼�</text>
 					</view>
 					<view class="chance-item " @tap="goShopping">
 						<view class="chance-icon">馃洅</view>
 						<text class="chance-title">鍘昏喘鐗�</text>
-						<text class="chance-subtitle">浜彈璐墿涔愯叮</text>
 					</view>
 				</view>
 
@@ -148,13 +144,14 @@
 </template>
 <script>
 	import bgConfig from '@/pages/prize/PrizeDetail/prize-bgConfig.js'
-	import { getSessionId, userAction } from "@/api/userAction.js";
+	import { getSessionId, userAction ,userShare } from "@/api/userAction.js";
 
 	import {
 		prizeInfo,
 		prizeNum,
 		prize,
-		grantRecord
+		grantRecord,
+		addPrizeNum
 	} from '@/api/prize.js'
 	export default {
 		data() {
@@ -224,7 +221,13 @@
 					pageParams:"{}",
 					pageStatus:"JOIN",
 					pageType:"DETAIL"
-				}
+				},
+				shareParam:{
+					pageCode:"PRIZE_DETAIL",
+					shareOption:"{}",
+					pageType:"DETAIL"
+				},
+				shareId:'',
 			};
 		},
 		computed: {
@@ -234,14 +237,14 @@
 			}
 		},
     onUnload() {
-      let	param = this.actionParam;
+      let param = Object.assign({}, this.actionParam);
       if (this.sendOnShow)return
       param.pageStatus = "LEAVE"
       userAction(param)
     },
     onHide() {
       this.startHidenTime = Date.now()
-      let	param = this.actionParam;
+      let	param = Object.assign({}, this.actionParam);
       this.sendOnShow = true;
       param.pageStatus = "LEAVE"
       userAction(param)
@@ -249,14 +252,36 @@
 		onShow() {
 		  getSessionId().then(res=>{
 			this.pageSessionNo = res.data.data
+			this.actionParam.sessionId = res.data.data
 			if(this.pageSessionNo){
-			let	param = this.actionParam;
+			let	param = Object.assign({}, this.actionParam);
 				param.sessionId = this.pageSessionNo
 				userAction(param)
 			}
-		  })	
+		  })
+		  const shareId =   uni.getStorageSync("shareId");
+		  if(shareId){
+		  let param = {
+		  	addType:"SHARE_USER_REGISTRY",
+		  	extend:"",
+		  }
+		  let extend = {shareId:shareId}
+		  param.extend = JSON.stringify(extend)
+		  addPrizeNum(param); 	
+		  
+		  let param2 = {
+		  	addType:"USER_STAY_TIME",
+		  	extend:"",
+		  }
+		  addPrizeNum(param2);
+		  }
 		},
 		async onLoad(option) {
+			if(option.shareId){
+				this.actionParam.shareId = option.shareId;
+				this.actionParam.joinType = 'SHARE'
+				console.log('瑙﹀彂onLoad')
+			}
 			this.actionParam.pageParams = JSON.stringify(option)
 
 			const pages = getCurrentPages()
@@ -303,17 +328,38 @@
 			// this.startAutoScroll()
 		},
 		onShareAppMessage() {
-			return {
+		  // 杩斿洖涓�涓狿romise
+		  return new Promise((resolve) => {
+			this.shareId = '';
+			this.shareParam.shareOption = JSON.stringify({
+				id:this.activityId
+			})
+			userShare(this.shareParam).then(res => {
+			  this.shareId = res.data.data;
+			  console.log('------------------1銆�', this.shareId);
+			  
+			  // 褰撹幏鍙栧埌shareId鍚庯紝鍐峳esolve鍒嗕韩閰嶇疆
+			  resolve({
 				title: this.activityName,
-				path: '/pages/prize/PrizeDetail/PrizeDetail?id=' + this.activityId,
+				path: '/pages/prize/PrizeDetail/PrizeDetail?id=' + this.activityId + '&shareId=' + this.shareId,
 				imageUrl: this.activityCover,
 				success(e) {
-					console.log("鍒嗕韩鎴愬姛", e)
+				  console.log("鍒嗕韩鎴愬姛", e);
 				},
 				fail(e) {
-					console.log('鍒嗕韩澶辫触', e)
+				  console.log('鍒嗕韩澶辫触', e);
 				}
-			}
+			  });
+			}).catch(err => {
+			  // 澶勭悊閿欒鎯呭喌锛屼緥濡備娇鐢ㄩ粯璁ゅ弬鏁�
+			  console.error('鑾峰彇鍒嗕韩ID澶辫触', err);
+			  resolve({
+				title: this.activityName,
+				path: '/pages/prize/PrizeDetail/PrizeDetail?id=' + this.activityId,
+				imageUrl: this.activityCover
+			  });
+			});
+		  });
 		},
 		beforeDestroy() {
 			this.stopAutoScroll()

--
Gitblit v1.8.0