From 0acbf8ba7a6214c85154319acf220d9464af2779 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期日, 04 八月 2024 16:13:43 +0800
Subject: [PATCH] update 商品详情分享的id

---
 pages/login/supplier-login.vue        |    2 
 pages/order/order-delivery-detail.vue |   17 +++++
 pages/login/supplier-reg.vue          |   16 +++++
 pages/order/order-delivery.vue        |   18 +++++
 store/index.js                        |   25 ++++++++
 sub_pages/customer/trade/detail.vue   |   49 ++++++++++++---
 6 files changed, 113 insertions(+), 14 deletions(-)

diff --git a/pages/login/supplier-login.vue b/pages/login/supplier-login.vue
index d184e05..d1d069f 100644
--- a/pages/login/supplier-login.vue
+++ b/pages/login/supplier-login.vue
@@ -525,7 +525,7 @@
 					// 	uni.navigateBack();
 					// }, 1000);
 
-					//todo 登录后可能需要进行绑定
+					
 
 				} else {
 					// uni.showToast({
diff --git a/pages/login/supplier-reg.vue b/pages/login/supplier-reg.vue
index 19649a0..fdcce4a 100644
--- a/pages/login/supplier-reg.vue
+++ b/pages/login/supplier-reg.vue
@@ -154,6 +154,8 @@
 				if (options.partnerUserName) {
 					this.partnerName = options.partnerUserName || '佚名'
 				}
+				//扫码过来的,自然要清除分享商品的id
+				this.$storage.removeItem('cache_sharePartnerUserId')
 			}
 			// #endif
 
@@ -395,6 +397,20 @@
 					// #ifdef PUB_CUSTOMER
 					var dto = {}
 					dto.partnerUserId = this.partnerId || undefined
+					//如果没有绑定,有商品详情的分享合伙人id的话缓存的话,尝试用这个
+					if(!dto.partnerUserId){
+						try {
+							var sharePartnerUserId = this.$storage.getItem('cache_sharePartnerUserId')
+							if (sharePartnerUserId) {
+								//试图绑定
+								this.$storage.removeItem('cache_sharePartnerUserId')
+								dto.partnerUserId = sharePartnerUserId						
+							}
+						} catch (e) {
+							console.error('reg bind ', e)
+						}
+					}
+										
 					dto.name = this.regCustomerName || ''
 					post.dto = dto
 					// #endif
diff --git a/pages/order/order-delivery-detail.vue b/pages/order/order-delivery-detail.vue
index 4afbf9d..af33b10 100644
--- a/pages/order/order-delivery-detail.vue
+++ b/pages/order/order-delivery-detail.vue
@@ -110,7 +110,8 @@
 						</image>
 						<view class="flex1">
 							<view class=" flex">
-								<view class="title">{{item.flowerName }}
+								<view class="title"><span class="level">{{ item.flowerCategory || ''}}</span><span
+								class="level">{{ item.flowerLevelStr || ''}}</span>{{item.flowerName }}
 								</view>
 							</view>
 							<view class="each-list ">
@@ -264,6 +265,13 @@
 					font-size: 28rpx;
 					color: #000000;
 					line-height: 40rpx;
+					.level {
+						font-weight: 400;
+						font-size: 28rpx;
+						color: #20613D;
+						line-height: 40rpx;
+						margin-right: 20rpx;
+					}
 				}
 
 				.status {
@@ -293,6 +301,13 @@
 						font-size: 28rpx;
 						color: #000000;
 						line-height: 40rpx;
+						.level {
+							font-weight: 400;
+							font-size: 28rpx;
+							color: #20613D;
+							line-height: 40rpx;
+							margin-right: 20rpx;
+						}
 					}
 
 					.desc {}
diff --git a/pages/order/order-delivery.vue b/pages/order/order-delivery.vue
index af63691..d94e390 100644
--- a/pages/order/order-delivery.vue
+++ b/pages/order/order-delivery.vue
@@ -35,7 +35,9 @@
 								</image>
 								<view class="flex1">
 									<view class=" flex">
-										<view class="title">{{item.flowerName }}
+										<view class="title"><span
+												class="level">{{ item.flowerCategory || ''}}</span><span
+												class="level">{{ item.flowerLevelStr || ''}}</span>{{item.flowerName }}
 										</view>
 									</view>
 									<view class="each-list">
@@ -240,6 +242,13 @@
 				font-size: 28rpx;
 				color: #000000;
 				line-height: 40rpx;
+				.level {
+					font-weight: 400;
+					font-size: 28rpx;
+					color: #20613D;
+					line-height: 40rpx;
+					margin-right: 20rpx;
+				}
 			}
 
 			.status {
@@ -269,6 +278,13 @@
 					font-size: 28rpx;
 					color: #000000;
 					line-height: 40rpx;
+					.level {
+						font-weight: 400;
+						font-size: 28rpx;
+						color: #20613D;
+						line-height: 40rpx;
+						margin-right: 20rpx;
+					}
 				}
 
 				.desc {}
diff --git a/store/index.js b/store/index.js
index 69d8cd8..a12972b 100644
--- a/store/index.js
+++ b/store/index.js
@@ -392,6 +392,31 @@
 					storage.setItem('token', resp.data.access_token)
 					commit("updateLogin", true)
 					await dispatch('getCurrentInfo')
+					//todo 登录后可能需要进行绑定
+					try {
+						var sharePartnerUserId = storage.getItem('cache_sharePartnerUserId')
+						if (sharePartnerUserId) {
+							//试图绑定
+							storage.removeItem('cache_sharePartnerUserId')
+							if (state.currentInfo.customerDTO && !state.currentInfo.customerDTO.partnerId) {
+								message.showLoading()
+								const bindres = await http.request('post', '/api/customer/bind/partner', {
+									data: {
+										partnerUserId: sharePartnerUserId
+									}
+								})
+								message.hideLoading()
+								if (bindres.code == 0) {
+									message.showToast(`绑定合伙人成功`)
+									await dispatch('getCurrentInfo')
+								}
+							}
+
+						}
+					} catch (e) {
+						console.error('login ', e)
+					}
+
 					uni.reLaunch({
 						url: '/pages/home/home'
 					})
diff --git a/sub_pages/customer/trade/detail.vue b/sub_pages/customer/trade/detail.vue
index 4542c80..992bfe2 100644
--- a/sub_pages/customer/trade/detail.vue
+++ b/sub_pages/customer/trade/detail.vue
@@ -162,21 +162,31 @@
 				this.getDetail()
 			}
 			this.refreshShopNum()
+			// #ifdef PUB_CUSTOMER
 			if (options.partnerUserId) {
-				//合伙人绑定的,判断当前用户,是否有登录
-				this.sharePartnerUserId = options.partnerUserId
-				// let tmp = this
-				// setTimeout(() => {
-				// 	if (!tmp.currentInfo.id) {
-				// 		//前往登录,,但是带上
-				// 	}
-				// }, 500)
+				//合伙人绑定的,判断当前用户,是否有登录,登录没绑定,没登录先缓存合伙人id,等注册和登录时候再弄
+				let tmp = this
+				setTimeout(() => {
+					if (tmp.currentInfo.id) {
+						tmp.bindPartnerUser(tmp.currentInfo.id, '')
+					} else {
+						tmp.sharePartnerUserId = options.partnerUserId
+						//没有登录到话设置到缓存
+						if (tmp.sharePartnerUserId) {
+							tmp.$storage.setItem('cache_sharePartnerUserId', tmp.sharePartnerUserId)
+						}
+					}
+
+				}, 1000)
 			}
+			// #endif
+
 		},
 		// #ifdef PUB_CUSTOMER
 		onShareAppMessage() {
 			let that = this;
-			var name = that.currentInfo.customerDTO&&that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO&&that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO&&that.currentInfo.partnerDTO.name || ''
+			var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
+				that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
 			//如果是合伙人的id,那么分享出去,需要附加id了
 			console.log('onShareAppMessage', this.currentInfo)
 
@@ -195,8 +205,8 @@
 		},
 		onShareTimeline() {
 			let that = this;
-			var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
-				currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
+			var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
+				currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
 			//如果是合伙人的id,那么分享出去,需要附加id了
 			var partnerUserId = ''
 			if (that.currentInfo.partnerDTO && currentInfo.partnerDTO.id) {
@@ -212,6 +222,23 @@
 		},
 		// #endif
 		methods: {
+			async bindPartnerUser(userId, name) {
+				//调用接口绑定
+				this.$message.showLoading()
+				const {
+					code,
+					data
+				} = await this.$http.request('post', '/api/customer/bind/partner', {
+					data: {
+						partnerUserId: userId
+					}
+				})
+				this.$message.hideLoading()
+				if (code == 0) {
+					this.$message.showToast(`绑定合伙人${name}成功`)
+					await this.$store.dispatch('getCurrentInfo')
+				}
+			},
 			async updateItemNum(item) {
 				const res = await this.$message.confirm('', {
 					editable: true,

--
Gitblit v1.9.3