From f2637cb037aa709c8a42b24a760e3223378bcc1d Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期二, 23 四月 2024 00:17:37 +0800
Subject: [PATCH] #

---
 pages/phyz/order/pakinOrderSelect.vue |  188 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 178 insertions(+), 10 deletions(-)

diff --git a/pages/phyz/order/pakinOrderSelect.vue b/pages/phyz/order/pakinOrderSelect.vue
index 4acf3c6..c3bba06 100644
--- a/pages/phyz/order/pakinOrderSelect.vue
+++ b/pages/phyz/order/pakinOrderSelect.vue
@@ -11,7 +11,7 @@
 			</view>
 		</view>
 		
-		<view class="list list-font-color" :class="orderDetl.color" v-for="orderDetl in dataList" >
+		<view class="list list-font-color" :class="orderDetl.color" v-for="(orderDetl,index) in dataList" :key="index">
 			<view class="list-left">
 				<view class="detl-threeCode">{{orderDetl.threeCode}}</view>
 				<view>涓诲崟鍙凤細{{orderDetl.orderNo}}</view>
@@ -20,7 +20,7 @@
 				<view>鎬绘暟閲忥細{{orderDetl.anfme}}</view>
 				<view>宸插叆鏁伴噺锛歿{orderDetl.qty}}</view>
 			</view>
-			<view class="list-right" @click="addItem(orderDetl)">
+			<view class="list-right" @click="addItem(index)">
 				<uni-icons type="folder-add" size="25"  color="#fff"></uni-icons>
 			</view>
 		</view>
@@ -34,7 +34,35 @@
 				<text>{{orderCarList.length}}</text>
 			</view>
 		</view>
-		<view style="height: 50rpx;"></view>
+		<!-- 鍨珮 -->
+		<view style="height: 340rpx;text-align: center;color: #b9b9b9;">
+			- 宸茬粡鍒板簳浜� -
+		</view>
+		<!-- 寮圭獥 -->
+		<view>
+			<uni-popup ref="addItem" type="dialog">
+				<view class="popup">
+					<!-- 鏍囬 -->
+					<view class="title">鍏ュ簱鏁伴噺</view>
+					<view class="popup-item">
+						<uni-number-box :value="count" :step='1' :max="9999999" color="#747474" @change="changeValue" />
+					</view>
+					<view class="btn">
+						<view class="btn-left" @click="addClose">鍙栨秷</view>
+						<view class="btn-right" @click="addConfirm()">娣诲姞</view>
+					</view>
+				</view>
+			</uni-popup>
+		</view>
+		<!-- 閬僵灞� -->
+		<view class="mask" v-if="mask">
+			鍔犺浇涓�傘�傘��
+		</view>
+		<!-- <view class="buttom">
+			<uni-search-bar :focus="searchValueFocus" v-model="searchValue" style="width: 100%;"
+				maxlength="500" ancel="cancel" @confirm="searchValueInput2()" @clear="clear" placeholder="杈撳叆 / 鎵弿 璁㈠崟鍙�">
+			</uni-search-bar>
+		</view> -->
 	</view>
 </template>
 
@@ -53,7 +81,10 @@
 					curr: 1,
 					limit: 100,
 					three_code: '',
-				}
+				},
+				index: 0,
+				count: 0,
+				mask: false
 				
 			}
 		},
@@ -62,10 +93,23 @@
 			this.token = uni.getStorageSync('token');
 			this.searchValue = uni.getStorageSync('threeCode');
 			this.getOrderDetlList(this.searchValue,30)
+			console.log("onLoad");
+		},
+		onShow() {
+			console.log(uni.getStorageSync('pakinOrderCar'));
+			// if (uni.getStorageSync('pakinOrderCar')) {
+			// 	this.orderCarList = uni.getStorageSync('pakinOrderCar');
+			// } else {
+			// 	this.orderCarList = []
+			// }
+		},
+		onHide() {
+			uni.setStorageSync('pakinOrderCar', this.orderCarList);
 		},
 		methods: {
 			getOrderDetlList(threeCode,limit) {
 				let _this = this
+				_this.mask = true
 				_this.data.three_code = threeCode
 				_this.data.limit = limit
 				uni.request({
@@ -87,7 +131,13 @@
 							}
 							_this.dataList = res.data.records
 							_this.total = res.data.total
-						} 
+							_this.mask = false
+						} else if (res.code == 403) {
+							uni.showToast({ title: res.msg, icon: "error", position: 'top' })
+							setTimeout(() => { uni.reLaunch({ url: '../../login/login' }); }, 1000);
+						} else {
+							uni.showToast({ title: res.msg, icon: "error", position: 'top' })
+						}
 					}
 				})
 			},
@@ -104,12 +154,43 @@
 				this.getOrderDetlList(this.searchValue,30)
 			},
 			// 娣诲姞鍏ュ簱鍟嗗搧鑷� 寰呯粍鎵樺垪琛�
-			addItem(orderDetl) {
-				this.orderCarList.push(orderDetl)
+			addItem(index) {
+				// 鍒ゆ柇娣诲姞鐨勫晢鍝佹槸鍚﹀拰宸茬粡娣诲姞鐨勯噸澶�
+				let dataList = this.dataList
+				for (let k of this.orderCarList) {
+					if (k.orderNo == dataList[index].orderNo 
+						&& k.threeCode == dataList[index].threeCode 
+						&& k.matnr == dataList[index].matnr) {
+							uni.showToast({ title: '璇峰嬁閲嶅娣诲姞鍟嗗搧锛�', icon: "none", position: 'top' })
+							return
+					}
+				}
+				this.index = index
+				this.$refs.addItem.open()
+			},
+			addClose() {
+				this.$refs.addItem.close()
+				this.count = 0
+			},
+			addConfirm() {
+				// if (this.count == 0) {
+				// 	uni.showToast({ title: '鍏ュ簱鏁伴噺涓嶅悎娉曪紒', icon: "none", position: 'top' })
+				// 	return
+				// }
+				this.dataList[this.index]['used'] = true
+				this.dataList[this.index]['pakinQty'] = this.count
+				this.orderCarList.push(this.dataList[this.index])
+				this.index = 0
+				this.count = 0
+				this.$refs.addItem.close()
 			},
 			// 鐐瑰嚮鍓嶅線 寰呯粍鎵樺垪琛�
 			orderCar() {
 				let _this = this
+				if (_this.orderCarList.length === 0) {
+					uni.showToast({ title: '璇锋坊鍔犲叆搴撳晢鍝侊紒', icon: "none", position: 'top' })
+					return
+				}
 				uni.navigateTo({
 					url: './orderCar',
 					success(res) {
@@ -120,10 +201,17 @@
 					events: {
 						acceptDataFromOpenedPage: function(data) {
 							console.log(data);
+							if (data.data == 1) {
+								_this.orderCarList = []
+								_this.getOrderDetlList(uni.getStorageSync('threeCode'),999999)
+							}
 						}
 					}
 				})
-			}
+			},
+			changeValue(value) {
+				this.count = value
+			},
 		}
 	}
 	
@@ -150,8 +238,8 @@
 	}
 	.shop-car {
 		position: fixed;
-		left: 60rpx;
-		bottom: 80rpx;
+		left: 22rpx;
+		bottom: 150rpx;
 		background-color: #2299ff;
 		width: 260rpx;
 		height: 90rpx;
@@ -170,4 +258,84 @@
 	.car-right {
 		flex: 4;
 	}
+	
+	.mask {
+		position: absolute;
+		width: 100%;
+		height: 100vh;
+		z-index: 999;
+		top: 0;
+		left: 0;
+		background-color: rgba(0, 0, 0, .4);
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		font-size: 16px;
+		color: #fff;
+	}
+	
+	.popup {
+		width: 80vw;
+		min-height: 100rpx;
+		background-color: #FFF;
+		border-radius: 25rpx;
+		position: relative;
+	}
+	.title {
+		height: 100rpx;
+		line-height: 100rpx;
+		width: 100%;
+		color: #606266;
+		text-align: center;
+		font-size: 16px;
+	}
+	.popup-item {
+		height: 80rpx;
+		line-height: 80rpx;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+	}
+	.popup-item-left {
+		width: 16vw;
+		padding-right: 20rpx;
+		text-align: right;
+		color: #606266;
+	}
+	.popup-item-right {
+		display: flex;
+		align-items: center;
+		width: 50vw;
+		height: 50rpx;
+		padding: 2px 5px;
+		border: 1px solid #E4E7ED;
+		border-radius: 5rpx;
+	}
+	.popup-item-right input{
+		color: #606266;
+	}
+	.btn {
+		display: flex;
+		height: 90rpx;
+		margin-top: 20rpx;
+		border-top: 1px solid #DCDFE6;
+		justify-content: center;
+		align-items: center;
+	}
+	.btn-left {
+		display: flex;
+		flex: 1;
+		height: 100%;
+		justify-content: center;
+		align-items: center;
+		color: #606266;
+		border-right: 1px solid #DCDFE6;
+	}
+	.btn-right {
+		display: flex;
+		flex: 1;
+		justify-content: center;
+		align-items: center;
+		color: #409EFF;
+	}
 </style>
\ No newline at end of file

--
Gitblit v1.9.1