From d4314be4b57bd246d336b25c6ac78c66742e1eea Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期五, 26 九月 2025 17:34:23 +0800
Subject: [PATCH] 用户绑定商店

---
 api/members.js           |    8 ++++
 pages/tabbar/user/my.vue |   68 +++++++++++++++++++++++++++++++++-
 2 files changed, 74 insertions(+), 2 deletions(-)

diff --git a/api/members.js b/api/members.js
index 9fde8be..c113d61 100644
--- a/api/members.js
+++ b/api/members.js
@@ -481,3 +481,11 @@
 		data:params
 	});
 }
+
+export function bindMemberAndStore(params){
+	return http.request({
+		url: '/lmk/member/bindMemberAndStore',
+		method: Method.PUT,
+		data:params
+	});
+}
diff --git a/pages/tabbar/user/my.vue b/pages/tabbar/user/my.vue
index 6552fd3..20ff12d 100644
--- a/pages/tabbar/user/my.vue
+++ b/pages/tabbar/user/my.vue
@@ -140,7 +140,7 @@
 import '@/pages/subComponents/uview-components/uview-ui';
 import tool from "@/pages/tabbar/user/utils/tool.vue";
 import { getSTSToken } from "@/api/common.js";
-import { getCouponsNum, getFootprintNum } from "@/api/members.js";
+import { getCouponsNum, getFootprintNum,bindMemberAndStore } from "@/api/members.js";
 import { getUserWallet } from "@/api/members";
 import configs from '@/config/config'
 import storage from '@/utils/storage.js'
@@ -162,7 +162,50 @@
       walletNum: "",
     };
   },
-  onLoad() {
+  onLoad(option) {
+	  console.log('-----------鍒嗕韩鍑虹殑鏁版嵁---------->', option)
+	  let shareStoreId = null;
+	  let shareTime = null;
+	  // 妫�鏌ユ槸鍚﹀瓨鍦╭鍙傛暟
+	  if (option.q) {
+	  	// 鍙岄噸瑙g爜锛氬井淇″URL杩涜浜嗕袱娆$紪鐮�
+	  	const decodedUrl = decodeURIComponent(decodeURIComponent(option.q));
+	  	console.log('鍘熷URL:', decodedUrl);
+	  
+	  	// 瑙f瀽URL涓殑鏌ヨ鍙傛暟
+	  	const params = this.parseUrlParams(decodedUrl);
+	  	shareStoreId = params.shareStoreId;
+		try {
+		// 灏嗘暟鎹瓨鍌ㄥ埌鏈湴缂撳瓨
+		uni.setStorageSync('shareStoreId', shareStoreId);
+		//鍒涘缓涓�涓壂鐮佺殑鏃堕棿
+		// 鑾峰彇褰撳墠鏃堕棿骞舵牸寮忓寲涓� yyyy-MM-dd HH:mm:ss
+		const now = new Date();
+		const year = now.getFullYear();
+		const month = String(now.getMonth() + 1).padStart(2, '0'); // 鏈堜唤浠�0寮�濮嬶紝闇�瑕�+1
+		const day = String(now.getDate()).padStart(2, '0');
+		const hours = String(now.getHours()).padStart(2, '0');
+		const minutes = String(now.getMinutes()).padStart(2, '0');
+		const seconds = String(now.getSeconds()).padStart(2, '0');
+		
+	    shareTime = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; 
+		uni.setStorageSync('shareTime', shareTime);
+		console.log('鏁版嵁瀛樺偍鎴愬姛');
+		} catch (e) {
+		console.error('瀛樺偍澶辫触锛�', e);
+		}
+	  }else{
+		shareStoreId = uni.getStorageSync('shareStoreId');
+		shareStoreId = uni.getStorageSync('shareTime');
+		console.log('浠庣紦瀛樿鍙栧弬鏁�:', { shareStoreId, shareTime });
+		 // this.bindMemberAndStore(shareStoreId, shareTime)
+		if (shareStoreId && shareTime) {
+		    console.log('妫�娴嬪埌鏈夋晥鍙傛暟锛岃皟鐢ㄥ悗绔帴鍙�');
+		    this.bindMemberAndStore(shareStoreId, shareTime);
+		  } else {
+		    console.log('鏃犳湁鏁堝弬鏁帮紝鎵ц姝e父閫昏緫');
+		  }
+	  }
 	  this.initCOS()
   },
   onShow() {
@@ -190,6 +233,27 @@
 
   mounted() { },
   methods: {
+	   async bindMemberAndStore(shareStoreId, shareTime){
+		  let form ={
+			  shareStoreId: shareStoreId,
+			  shareTime: shareTime
+		  }
+		  // let form ={
+		  // 			  shareStoreId: "1376433565247471616",
+		  // 			  shareTime: "2025-09-26 16:18:00"
+		  // }
+		  try {
+			  const res = await bindMemberAndStore(form);
+			  if(res.statusCode === 200){
+							//娓呴櫎缂撳瓨
+				uni.removeStorageSync('shareStoreId');
+				uni.removeStorageSync('shareTime'); 
+			  }
+		  }
+		  catch(error) {
+				console.error('鍑洪敊:', error);
+			};
+		},
 	  // goTOSuccess(){
 	  // 		 uni.redirectTo({
 	  // 		    url:"/pages/cart/payment/success?paymentMethod=WECHAT" +

--
Gitblit v1.8.0