From 62ae01bb0bf26a4efb07e641011225599538b443 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期二, 14 五月 2024 09:54:49 +0800
Subject: [PATCH] Merge branch 'phyzasrs' of http://47.97.1.152:5880/r/wms_app into phyzasrs

---
 pages/phyz/bcp/bcpDbList.vue               |  487 ++++++++++++++++++++++++++++
 pages/phyz/stationManage/stationDetl.vue   |    8 
 pages/home/orderManage.vue                 |   13 
 manifest.json                              |    4 
 pages/phyz/orderOut/bcpOrderOutSelect.vue  |  362 +++++++++++++++++++++
 pages.json                                 |   18 +
 static/css/common/order.css                |    2 
 pages/phyz/bcp/bcpDbOrder.vue              |   43 +-
 pages/phyz/stationManage/pickAgain.vue     |   33 +
 pages/phyz/stationManage/stationManage.vue |    2 
 pages/phyz/bcp/bcpOrder.vue                |    6 
 11 files changed, 944 insertions(+), 34 deletions(-)

diff --git a/manifest.json b/manifest.json
index d1e6e3e..ee1f101 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,8 +2,8 @@
     "name" : "涓壃WMS",
     "appid" : "__UNI__DA5854D",
     "description" : "",
-    "versionName" : "20240428A",
-    "versionCode" : 103,
+    "versionName" : "20240514A",
+    "versionCode" : 106,
     "transformPx" : false,
     /* 5+App鐗规湁鐩稿叧 */
     "app-plus" : {
diff --git a/pages.json b/pages.json
index dba3b33..54b496b 100644
--- a/pages.json
+++ b/pages.json
@@ -704,6 +704,24 @@
         		"enablePullDownRefresh" : false
         	}
         }
+        ,{
+            "path" : "pages/phyz/bcp/bcpDbList",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "璋冩嫧搴撲綅",
+                "enablePullDownRefresh": false
+            }
+            
+        }
+        ,{
+            "path" : "pages/phyz/orderOut/bcpOrderOutSelect",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "鍗婃垚鍝佸嚭搴撳崟",
+                "enablePullDownRefresh": false
+            }
+            
+        }
     ],
 	"globalStyle": {
 		"navigationBarTextStyle": "black",
diff --git a/pages/home/orderManage.vue b/pages/home/orderManage.vue
index 1c7b94c..f061fb2 100644
--- a/pages/home/orderManage.vue
+++ b/pages/home/orderManage.vue
@@ -55,17 +55,24 @@
 					},
 					{
 						title: '鍗婃垚鍝佸叆搴撳崟',
-						name: 'pakin',
+						name: 'bcpOrder',
 						color: 'blue',
 						// cuIcon: 'pullup',
 						url: `/phyz/bcp/bcpOrder`
 					},
 					{
 						title: '鍗婃垚鍝佽皟鎷ㄥ崟',
-						name: 'pakin',
+						name: 'bcpDbOrder',
 						color: 'blue',
 						// cuIcon: 'pullup',
-						url: `/phyz/order/purchaseOrder`
+						url: `/phyz/bcp/bcpDbOrder`
+					},
+					{
+						title: '鍗婃垚鍝佸嚭搴撳崟',
+						name: 'bcpOutOrder',
+						color: 'blue',
+						// cuIcon: 'pullup',
+						url: `/phyz/orderOut/bcpOrderOutSelect`
 					},
 					
 				],
diff --git a/pages/phyz/bcp/bcpDbList.vue b/pages/phyz/bcp/bcpDbList.vue
new file mode 100644
index 0000000..5a4c2be
--- /dev/null
+++ b/pages/phyz/bcp/bcpDbList.vue
@@ -0,0 +1,487 @@
+<template>
+	<view>
+		<view class="station station-wrk" v-if="station">
+			<view class="mt-flex">
+				<view class="station-title" style="flex: 4;">{{station.threeCode}}</view>
+				<view class="station-title" style="flex: 1;">
+					<button size="mini" @click="allChecked()">{{allCheckBtnTitle}}</button>
+				</view>
+			</view>
+			<view>璋冩嫧鍗曞彿锛歿{station.orderNo}}</view>
+			<view>鐗╂枡缂栧彿锛歿{station.matnr}}</view>
+			<view style="width: 100%;white-space: nowrap;text-overflow: ellipsis;overflow: hidden;">鐗╂枡鍚嶇О锛歿{station.maktx}}</view>
+			<view style="display: flex;">
+				<view style="flex: 2;">璋冩嫧鏁伴噺锛歿{station.anfme}}</view>
+				<view style="flex: 3;">搴撳瓨鏁伴噺锛歿{station.stock}}</view>
+			</view>
+			<view style="display: flex;">
+				<view style="flex: 2;">宸茶皟鎷ㄦ暟閲忥細{{station.qty}}</view>
+				<view style="flex: 3;">褰撳墠閫夋嫨璋冩嫧鏁伴噺锛歿{station.count ? station.count : 0}}</view>
+			</view>
+		</view>
+		<!-- 鍨珮 -->
+		<view style="height: 400rpx;text-align: center;color: #b9b9b9;">
+		</view>
+		<view class="list list-font-color" :class="orderDetl.color" v-for="(orderDetl,index) in dataList" :key="index">
+			<view class="list-left" style="display: flex;flex-direction: column;">
+				<!-- 涓� -->
+				<view>
+					<view class="detl-locNo">{{orderDetl.locNo}}</view>
+					<view class="detl-locNo">璐ф灦鐮侊細{{orderDetl.suppCode}}</view>
+				</view>
+				<!-- 涓� -->
+				<view style="display: flex;">
+					<view style="flex: 1;">
+						<view>搴撲綅鐘舵�侊細{{orderDetl.locSts$}}</view>
+						<view>搴撳瓨鏁伴噺锛歿{orderDetl.anfme}}</view>
+					</view>
+				</view>
+				<!-- 涓� -->
+			</view>
+			<view class="list-right" @click="checkboxChange(orderDetl)">
+				<label >
+					<checkbox :value="orderDetl.orderNo" :checked="orderDetl.checked" style="transform:scale(0.7)" /><text></text>
+				</label>
+			</view>
+		</view>
+		
+		<!-- 鍨珮 -->
+		<view style="height: 160rpx;text-align: center;color: #b9b9b9;">
+			- 宸茬粡鍒板簳浜� -
+		</view>
+		<!-- 閫夋嫨妤煎眰寮圭獥 -->
+		<view>
+			<uni-popup ref="filter" type="dialog">
+				<view class="filter-popup">
+					<!-- 鏍囬 -->
+					<view class="title">璋冩嫧妤煎眰</view>
+					<view class="popup-item" style="width: 100%;display: flex;justify-content: center;">
+						<view style="margin-top: 50rpx;width: 60%;">
+							<uni-combox :candidates="floorList" placeholder="璇烽�夋嫨鐩爣妤煎眰" v-model="floor"></uni-combox>
+						</view>
+					</view>
+					<view class="btn filter-btn">
+						<view class="btn-right" @click="filterConfirm()">寮�濮嬭皟鎷�</view>
+					</view>
+				</view>
+			</uni-popup>
+		</view>
+		<!-- 搴曢儴鎿嶄綔鎸夐挳 -->
+		<view class="buttom">
+			<button size="mini" @click="isAuto('unAuto')">鎵嬪姩</button>
+			<button size="mini" type="primary" @click="isAuto('auto')">鑷姩</button>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				baseUrl: '',
+				token: '',
+				dataList: [],
+				dbList: [],
+				count: 0,
+				containerType: '',
+				isOpen: true,
+				option: '',
+				selects: [],
+				orderId: '',
+				station: '',
+				allCheck: false,
+				allCheckBtnTitle: '鍏ㄩ��',
+				floorList: ['2妤�','3妤�'],
+				floor: '',
+				moveType: ''
+			}
+		},
+		onShow() {
+			let _this = this
+			this.baseUrl = uni.getStorageSync('baseUrl');
+			this.token = uni.getStorageSync('token');
+			// const eventChannel = this.$scope.eventChannel; // 鍏煎APP-NVUE
+			const eventChannel = this.getOpenerEventChannel();
+			// 鐩戝惉acceptDataFromOpenerPage浜嬩欢锛岃幏鍙栦笂涓�椤甸潰閫氳繃eventChannel浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹�
+			eventChannel.on('item', function(data) {
+				console.log(data.item);
+				data.item['count'] = 0
+				_this.station = data.item
+				_this.orderId = data.item.id
+				_this.getLocDetl(data.item.orderNo,data.item.threeCode,data.item.matnr,data.item.id)
+			})
+		},
+		methods: {
+			getLocDetl(orderNo,threeCode,matnr,id) {
+				let _this = this
+				uni.request({
+					url: `${_this.baseUrl}/agvMobile/query/locDetl/v1`,
+					header: { 'token': uni.getStorageSync('token') },
+					data: {
+						orderNo: orderNo,
+						threeCode: threeCode ,
+						matnr: matnr,
+						floor: "F1"
+					},
+					method: 'POST',
+					success(res) {
+						res = res.data
+						console.log(res);
+						if (res.code === 200) {
+							for (let k of res.data) {
+								if (k.locSts == "F") {
+									k['color'] = 'order-sts-start'
+								} else if (k.locSts != "F") {
+									k['color'] = 'order-sts-working'
+								} else {
+									k['color'] = 'order-sts-end'
+								}
+								k['id'] = id
+							}
+							_this.dataList = res.data
+						} 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' })
+						}
+					}
+				})
+			},
+			pakoutPrive(item) {
+				let _this = this
+				console.log(item);
+				if (item.locSts != 'F') {
+					uni.showToast({ title: '褰撳墠搴撲綅涓嶆槸鍦ㄥ簱鐘舵�侊紒', icon: "error", position: 'top' })
+					return
+				}
+				uni.navigateTo({
+					url: "./orderCheck",
+					success: function(res) {
+						// 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�   鍚戝彟澶栦竴涓〉闈紶閫掑�肩殑
+						res.eventChannel.emit('mat', {
+							mat: item,
+						})
+					},
+					events: {
+						// 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹�  鍙﹀涓�涓〉闈紶杩囨潵鐨�
+						acceptDataFromOpenedPage: function(data) {
+							// _this.matnr = data.data
+						},
+					},
+				});
+			},
+			pakout(item) {
+				let _this = this
+				let items = [item]
+				uni.request({
+					url: `${_this.baseUrl}/out/pakout/auth`,
+					header: { 'token': uni.getStorageSync('token') },
+					data: items,
+					method: 'POST',
+					success(res) {
+						res = res.data
+						console.log(res);
+						if (res.code === 200) {
+							
+						} 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' })
+						}
+					}
+				})
+			},
+			// 寮�鍚� / 鍏抽棴涓嬫媺妗�
+			toggleDropdown() {
+				this.isOpen = !this.isOpen
+			},
+			// 閫夋嫨璐ф灦绫诲瀷
+			selected(option) {
+				this.containerType = option
+			},
+			checkboxChange(e) {
+				console.log(e);
+				let items = this.dataList,
+				values = e.orderNo;
+				if (e.checked) {
+					this.$set(e,'checked',false)
+				} else {
+					this.$set(e,'checked',true)
+				}
+				let num = 0
+				for (let k of items) {
+					if (k.checked) {
+						num++
+					}
+					if (num == items.length) {
+						this.allCheck = true
+						this.allCheckBtnTitle = '鍙栨秷'
+					} else {
+						this.allCheck = false
+						this.allCheckBtnTitle = '鍏ㄩ��'
+					}
+				}
+				this.upDateCount()
+			},
+			upDateCount() {
+				let num = 0
+				for (let k of this.dataList) {
+					if (k.checked) {
+						num = num + k.anfme
+					} 
+				}
+				this.station.count = num
+			},
+			allChecked() {
+				if (this.allCheck) {
+					this.allCheck = false
+					this.allCheckBtnTitle = '鍏ㄩ��'
+				} else {
+					this.allCheck = true
+					this.allCheckBtnTitle = '鍙栨秷'
+				}
+				for (let item of this.dataList) {
+					if (this.allCheck) {
+						if (item.anfme == item.qty) {
+							this.$set(item,'checked',false)
+						} else {
+							this.$set(item,'checked',true)
+						}
+					} else {
+						this.$set(item,'checked',false)
+					}
+				}
+				this.upDateCount()
+			},
+			isAuto(type) {
+				this.dbList = []
+				for (let k of this.dataList) {
+					if (k.checked) {
+						this.dbList.push(k)
+					}
+				}
+				if (this.dbList.length == 0) {
+					uni.showToast({ title: '璇烽�夋嫨璋冩嫧搴撲綅', icon: "error", position: 'top' })
+					return
+				}
+				this.moveType = type
+				this.$refs.filter.open('bottom')
+			},
+			filterConfirm() {
+				console.log(this.dbList);
+				if (this.floor == '') {
+					uni.showToast({ title: '璇烽�夋嫨璋冩嫧妤煎眰', icon: "error", position: 'top' })
+					return
+				}
+				let _this = this
+				let param = {floor: this.floor,dbList: this.dbList,moveType: this.moveType}
+				uni.request({
+					url: `${_this.baseUrl}/agvMobile/agv/v1/locMove`,
+					data: param,
+					method: 'POST',
+					success(res) {
+						console.log(res);
+						res = res.data
+						if (res.code === 200) {
+							uni.navigateBack({
+								delta: 1
+							});
+						}
+					}
+				})
+				this.$refs.filter.close('bottom')
+			}
+		}
+	}
+</script>
+
+<style>
+	@import url('../../../static/css/common/order.css');
+	
+	.station {
+		position: fixed;
+		top: 85rpx;
+		left: 0;
+		right: 0;
+		font-size: 18px;
+		padding: 24rpx;
+		z-index: 999;
+	}
+	/* #ifdef APP-PLUS */
+	.station {
+		position: fixed;
+		top: 0rpx;
+		left: 0;
+		right: 0;
+		font-size: 18px;
+		padding: 24rpx;
+		z-index: 999;
+	}
+	/* #endif */
+	.station-title {
+		font-size: 32px;
+		font-weight: bold;
+		/* padding: 2rpx 0; */
+	}
+	.station-barcode {
+		font-size: 24px;
+		font-weight: bold;
+		padding: 24rpx 0;
+	}
+	.station-wrk {
+		background-color: #ff7356;
+		color: #fff;
+	}
+	.station-nowrk {
+		background-color: #3eb689;
+		color: #fff;
+	}
+	.list-font-color {
+		color: #fff;
+		/* background-color: #33bb44; */
+	}
+	.order-sts-start {
+		background-color: #3eb689;
+	}
+	.order-sts-working {
+		background-color: #ff9d46;
+	}
+	.order-sts-end {
+		background-color: #ff7356;
+	}
+	.detl-threeCode {
+		font-size: 28px;
+		font-weight: bold;
+	}
+	.detl-locNo {
+		font-size: 20px;
+		font-weight: bold;
+	}
+	.out-btn {
+		background-color: #3e82ff;
+		height: 120rpx;
+		width: 120rpx;
+		line-height: 120rpx;
+		text-align: center;
+		border-radius: 50%;
+		margin-left: 20rpx;
+		margin-right: 20rpx;
+	}
+	.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 {
+		position: relative;
+		display: flex;
+		align-items: center;
+		font-size: 14px;
+	}
+	.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;
+	}
+	
+	.dropdown {
+		position: relative;
+		display: flex;
+		width: 93%;
+		align-items: center;
+		padding: 0rpx 20rpx;
+	}
+	.dropdown-content {
+		position: absolute;
+		top: calc(100% + 15rpx);
+		left: 0;
+		width: calc(100% - 20rpx);
+		max-height: 300rpx;
+		background-color: #fff;
+		box-shadow: 0 0px 6px rgba(0, 0, 0, 0.3);
+		border-radius: 8rpx;
+		z-index: 10;
+	}
+	.dropdown-item {
+		padding: 12rpx;
+		line-height: 1.2;
+		font-size: 22px;
+		color: #3a3a3a;
+	}
+	.filter-popup {
+		width: 100%;
+		height: 40vh;
+		background-color: #FFF;
+		position: relative;
+		border-radius: 30rpx 30rpx 0rpx 0rpx;
+	}
+	.filter-popup-item {
+		height: 100%;
+		width: 100%;
+		background-color: #c9cdd5;
+	}
+	.filter-popup-item-left {
+		width: 30%;
+		height: 100%;
+		background-color: #DCDFE6;
+		
+	}
+	.filter-btn {
+		position: absolute;
+		left: 0;
+		bottom: 0;
+		width: 100%;
+		background-color: #FFF;
+	}
+	
+	
+</style>
diff --git a/pages/phyz/bcp/bcpDbOrder.vue b/pages/phyz/bcp/bcpDbOrder.vue
index b67e620..93207ff 100644
--- a/pages/phyz/bcp/bcpDbOrder.vue
+++ b/pages/phyz/bcp/bcpDbOrder.vue
@@ -18,23 +18,16 @@
 				<view>缂栧彿锛歿{orderDetl.matnr}}</view>
 				<view>鍚嶇О锛歿{orderDetl.maktx}}</view>
 				<view>绫诲瀷锛歿{orderDetl.brand}}</view>
-				<view>鎬绘暟閲忥細{{orderDetl.anfme}}</view>
-				<view>宸插叆鏁伴噺锛歿{orderDetl.qty}}</view>
+				<view>璋冩嫧鎬婚噺锛歿{orderDetl.anfme}}</view>
+				<view>搴撳瓨鏁伴噺锛歿{orderDetl.stock}}</view>
+				<view>宸插畬鎴愭暟閲忥細{{orderDetl.qty}}</view>
 			</view>
-			<view class="list-right" @click="addItem(index)">
-				<uni-icons type="folder-add" size="25"  color="#fff"></uni-icons>
+			<view class="list-right" @click="goToLocDetl(orderDetl)">
+				<uni-icons type="right" size="25"  color="#fff"></uni-icons>
 			</view>
 		</view>
 		
 		
-		<view class="shop-car" @click="orderCar()">
-			<view class="car-left">
-				<uni-icons type="cart-filled" size="35"  color="#fff"></uni-icons>
-			</view>
-			<view class="car-right">
-				<text>{{orderCarList.length}}</text>
-			</view>
-		</view>
 		<!-- 鍨珮 -->
 		<view style="height: 340rpx;text-align: center;color: #b9b9b9;">
 			- 宸茬粡鍒板簳浜� -
@@ -139,7 +132,7 @@
 		onLoad() {
 			this.baseUrl = uni.getStorageSync('baseUrl');
 			this.token = uni.getStorageSync('token');
-			this.searchValue = uni.getStorageSync('threeCode');
+			this.searchValue = uni.getStorageSync('bcpDbThreeCode');
 			this.getOrderDetlList(this.searchValue,10)
 			console.log("onLoad");
 		},
@@ -157,7 +150,7 @@
 				_this.data.three_code = threeCode
 				_this.data.limit = limit
 				uni.request({
-					url: `${_this.baseUrl}/order/bcp/detls/pakin/page/auth`,
+					url: `${_this.baseUrl}/order/bcpDb/detls/pakin/page/auth`,
 					header: {'token': uni.getStorageSync('token')},
 					data: _this.data,
 					method: 'GET',
@@ -192,7 +185,7 @@
 			searchValueInput2() {
 				this.dataList = []
 				this.data.curr = 1
-				uni.setStorageSync('threeCode', this.searchValue);
+				uni.setStorageSync('bcpDbThreeCode', this.searchValue);
 				if (this.searchValue.length == 0) {
 					this.getOrderDetlList(this.searchValue,10)
 				} else {
@@ -257,7 +250,7 @@
 							console.log(data);
 							if (data.data == 1) {
 								_this.orderCarList = []
-								_this.getOrderDetlList(uni.getStorageSync('threeCode'),10)
+								_this.getOrderDetlList(uni.getStorageSync('bcpDbThreeCode'),10)
 							}
 						}
 					}
@@ -289,7 +282,23 @@
 				this.data.brand = ''
 				this.getOrderDetlList(this.searchValue,10)
 				this.$refs.filter.close()
-			}
+			},
+			goToLocDetl(item) {
+				let _this = this
+				uni.navigateTo({
+					url: './bcpDbList',
+					success(res) {
+						res.eventChannel.emit('item', {
+							item: item
+						})
+					},
+					events: {
+						acceptDataFromOpenedPage: function(data) {
+							_this.getOrderDetlList(this.searchValue1,10)
+						}
+					}
+				})
+			},
 			
 		}
 	}
diff --git a/pages/phyz/bcp/bcpOrder.vue b/pages/phyz/bcp/bcpOrder.vue
index b67e620..63d2bd5 100644
--- a/pages/phyz/bcp/bcpOrder.vue
+++ b/pages/phyz/bcp/bcpOrder.vue
@@ -139,7 +139,7 @@
 		onLoad() {
 			this.baseUrl = uni.getStorageSync('baseUrl');
 			this.token = uni.getStorageSync('token');
-			this.searchValue = uni.getStorageSync('threeCode');
+			this.searchValue = uni.getStorageSync('bcpThreeCode');
 			this.getOrderDetlList(this.searchValue,10)
 			console.log("onLoad");
 		},
@@ -192,7 +192,7 @@
 			searchValueInput2() {
 				this.dataList = []
 				this.data.curr = 1
-				uni.setStorageSync('threeCode', this.searchValue);
+				uni.setStorageSync('bcpThreeCode', this.searchValue);
 				if (this.searchValue.length == 0) {
 					this.getOrderDetlList(this.searchValue,10)
 				} else {
@@ -257,7 +257,7 @@
 							console.log(data);
 							if (data.data == 1) {
 								_this.orderCarList = []
-								_this.getOrderDetlList(uni.getStorageSync('threeCode'),10)
+								_this.getOrderDetlList(uni.getStorageSync('bcpThreeCode'),10)
 							}
 						}
 					}
diff --git a/pages/phyz/orderOut/bcpOrderOutSelect.vue b/pages/phyz/orderOut/bcpOrderOutSelect.vue
new file mode 100644
index 0000000..b8d107e
--- /dev/null
+++ b/pages/phyz/orderOut/bcpOrderOutSelect.vue
@@ -0,0 +1,362 @@
+<template>
+	<view>
+		<view class="code">
+			<uni-search-bar  v-model="searchValue1" 
+				maxlength="500" ancel="cancel" @confirm="searchValueInput1()" @clear="clear" placeholder="杈撳叆 / 鎵弿 璁㈠崟鍙�">
+			</uni-search-bar>
+			<view class="code-title">
+				<view></view>
+				<view style="width: 100%;text-align: center;margin: 16rpx 0;">{{searchValue1}} 鎬绘暟閲忥細- {{total}} -</view>
+				<view style="width: 100rpx;margin: 16rpx 0;" @click="filter()">绛涢��</view>
+			</view>
+		</view>
+		
+		<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>
+				<view>缂栧彿锛歿{orderDetl.matnr}}</view>
+				<view>鍚嶇О锛歿{orderDetl.maktx}}</view>
+				<view>绫诲瀷锛歿{orderDetl.brand}}</view>
+				<view>璁㈠崟鏁伴噺锛歿{orderDetl.anfme}}</view>
+				<view>搴撳瓨鏁伴噺锛歿{orderDetl.stock}}</view>
+				<view>宸插嚭鏁伴噺锛歿{orderDetl.qty}}</view>
+			</view>
+			<view class="list-right" @click="goToLocDetl(orderDetl)">
+				<uni-icons type="right" size="25"  color="#fff"></uni-icons>
+			</view>
+		</view>
+		
+		<!-- 鍨珮 -->
+		<view style="height: 340rpx;text-align: center;color: #b9b9b9;">
+			- 宸茬粡鍒板簳浜� -
+		</view>
+		
+		<!-- <view class="buttom">
+			<view style="width: 150rpx;text-align: center;padding-left: 12rpx;">
+				鍚嶇О
+			</view>
+			<uni-search-bar v-model="searchValue2" style="width: 100%;"
+				maxlength="500" ancel="cancel" @confirm="searchValueInput2()" @clear="clear2" placeholder="杈撳叆 / 鎵弿 璁㈠崟鍙�">
+			</uni-search-bar>
+		</view> -->
+		<!-- 绛涢�夊脊绐� -->
+		<view>
+			<uni-popup ref="filter" type="dialog">
+				<view class="filter-popup">
+					<!-- 鏍囬 -->
+					<view class="title">绛涢��</view>
+					<view class="popup-item" style="background-color: #dfdfdf;">
+						<view class="item-cl">
+							<view>閿�鍞鍗曪細</view>
+							<input type="text" v-model="searchValue1">
+						</view>
+					</view>
+					<view class="popup-item" style="background-color: #dfdfdf;">
+						<view class="item-cl">
+							<view>涓昏鍗曞彿锛�</view>
+							<input type="text" v-model="orderNo">
+						</view>
+					</view>
+					<view class="popup-item" style="background-color: #dfdfdf;">
+						<view class="item-cl">
+							<view>鍟嗗搧缂栧彿锛�</view>
+							<input type="text" v-model="matnr">
+						</view>
+					</view>
+					<view class="popup-item" style="background-color: #dfdfdf;">
+						<view class="item-cl">
+							<view>鍟嗗搧鍚嶇О锛�</view>
+							<input type="text" v-model="maktx">
+						</view>
+					</view>
+					<view class="popup-item" style="background-color: #dfdfdf;">
+						<view class="item-cl">
+							<view>鍟嗗搧绉嶇被锛�</view>
+							<input type="text" v-model="brand">
+						</view>
+					</view>
+					<view class="btn filter-btn">
+						<view class="btn-left" @click="filterClose">閲嶇疆</view>
+						<view class="btn-right" @click="filterConfirm()">纭</view>
+					</view>
+				</view>
+			</uni-popup>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				baseUrl: '',
+				token: '',
+				searchValue1: '',
+				searchValue2: '',
+				orderNo: '',
+				matnr: '',
+				maktx: '',
+				brand: '',
+				total: '',
+				dataList: [],
+				orderCarList: [],
+				data: {
+					curr: 1,
+					limit: 100,
+					three_code: '',
+					matnr: '',
+					maktx: '',
+					order_no: '',
+					brand: ''
+				},
+			}
+		},
+		onReachBottom() {
+			this.status = 'more';
+			this.getOrderDetlList(this.searchValue1,10);
+		},
+		onShow() {
+			this.baseUrl = uni.getStorageSync('baseUrl');
+			this.token = uni.getStorageSync('token');
+			this.searchValue1 = uni.getStorageSync('threeCodeOut1');
+			this.searchValue2 = uni.getStorageSync('threeCodeOut2');
+			this.getOrderDetlList(this.searchValue1,10)
+		},
+		methods: {
+			getOrderDetlList(threeCode,limit) {
+				uni.showLoading({})
+				let _this = this
+				_this.mask = true
+				_this.data.three_code = threeCode
+				_this.data.limit = limit
+				uni.request({
+					url: `${_this.baseUrl}/orderDetl/pakout/list/authV4`,
+					header: {'token': uni.getStorageSync('token')},
+					data: _this.data,
+					method: 'GET',
+					success(res) {
+						uni.hideLoading({})
+						res = res.data
+						if (res.code === 200) {
+							for (let k of res.data.records) {
+								if (k.anfme > k.qty && k.qty == 0) {
+									k['color'] = 'order-sts-start'
+								} else if (k.anfme > k.qty && k.qty != 0) {
+									k['color'] = 'order-sts-working'
+								} else {
+									k['color'] = 'order-sts-end'
+								}
+							}
+							let list = res.data.records
+							_this.dataList =  _this.dataList.concat(list);
+							_this.data.curr = _this.data.curr + 1
+							_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' })
+						}
+					}
+				})
+			},
+			searchValueInput1() {
+				this.dataList = []
+				this.data.curr = 1
+				uni.setStorageSync('threeCodeOut1', this.searchValue1);
+				uni.setStorageSync('threeCodeOut2', this.searchValue2);
+				if (this.searchValue1.length == 0) {
+					this.getOrderDetlList(this.searchValue1,10)
+				} else {
+					this.getOrderDetlList(this.searchValue1,10)
+				}
+				
+			},
+			searchValueInput2() {
+				uni.setStorageSync('threeCodeOut1', this.searchValue1);
+				uni.setStorageSync('threeCodeOut2', this.searchValue2);
+				if (this.searchValue1.length == 0) {
+					this.getOrderDetlList(this.searchValue1,10)
+				} else {
+					this.getOrderDetlList(this.searchValue1,10)
+				}
+			},
+			clear() {
+				this.dataList = []
+				this.data.curr = 1
+				setTimeout(()=> {
+					this.getOrderDetlList(this.searchValue,10)
+				},300)
+			},
+			clear2() {
+				setTimeout(()=> {
+					this.searchValue2 = ''
+					this.getOrderDetlList(this.searchValue1,10)
+				},300)
+			},
+			goToLocDetl(item) {
+				let _this = this
+				uni.navigateTo({
+					url: './orderList',
+					success(res) {
+						res.eventChannel.emit('item', {
+							item: item
+						})
+					},
+					events: {
+						acceptDataFromOpenedPage: function(data) {
+							_this.getOrderDetlList(this.searchValue1,10)
+						}
+					}
+				})
+			},
+			// 绛涢��
+			filter() {
+				this.$refs.filter.open('bottom')
+			},
+			filterConfirm() {
+				this.dataList = []
+				this.data.curr = 1
+				this.data.maktx = this.maktx
+				this.data.matnr = this.matnr
+				this.data.order_no = this.order_no
+				this.data.brand = this.brand
+				this.getOrderDetlList(this.searchValue1,10)
+				this.$refs.filter.close()
+			},
+			filterClose() {
+				this.dataList = []
+				this.data.curr = 1
+				this.data.maktx = ''
+				this.data.matnr = ''
+				this.data.order_no = ''
+				this.data.brand = ''
+				this.getOrderDetlList(this.searchValue1,10)
+				this.$refs.filter.close()
+			}
+			
+		}
+	}
+</script>
+
+<style>
+	@import url('../../../static/css/common/order.css');
+	.list-font-color {
+		color: #fff;
+		/* background-color: #33bb44; */
+	}
+	.order-sts-start {
+		background-color: #3eb689;
+	}
+	.order-sts-working {
+		background-color: #ff9d46;
+	}
+	.order-sts-end {
+		background-color: #ff7356;
+	}
+	.detl-threeCode {
+		font-size: 28px;
+		font-weight: bold;
+	}
+	
+	.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;
+	}
+	.filter-popup {
+		width: 100%;
+		height: 80vh;
+		background-color: #FFF;
+		position: relative;
+		border-radius: 30rpx 30rpx 0rpx 0rpx;
+	}
+	.filter-popup-item {
+		height: 100%;
+		width: 100%;
+		background-color: #c9cdd5;
+	}
+	.filter-popup-item-left {
+		width: 30%;
+		height: 100%;
+		background-color: #DCDFE6;
+		
+	}
+	.item-btn {
+		width: 100%;
+		height: 80rpx;
+		line-height: 80rpx;
+		background-color: #c9cdd5;
+		text-align: center;
+	}
+	.item-btn:checked {
+		background-color: #606266;
+	}
+	.filter-btn {
+		position: absolute;
+		left: 0;
+		bottom: 0;
+		width: 100%;
+		background-color: #FFF;
+	}
+	.item-cl {
+		display: flex;align-items: center;
+	}
+	.item-cl input {
+		border-bottom: 1px solid #b9b9b9;
+	}
+</style>
diff --git a/pages/phyz/stationManage/pickAgain.vue b/pages/phyz/stationManage/pickAgain.vue
index dfd1b5c..3c22660 100644
--- a/pages/phyz/stationManage/pickAgain.vue
+++ b/pages/phyz/stationManage/pickAgain.vue
@@ -8,6 +8,7 @@
 				<view>鍚嶇О锛歿{orderDetl.maktx}}</view>
 				<view>搴撳瓨鏁伴噺锛歿{orderDetl.anfme}}</view>
 				<view>璁㈠崟鍙嚭鏁伴噺锛歿{orderDetl.stock}}</view>
+				<view>宸叉嫞鏁伴噺锛歿{orderDetl.pickedAnfme}}</view>
 				<view>鎷f枡鏁伴噺锛歿{orderDetl.count}}</view>
 			</view>
 			<view class="list-right" @click="addItem(index)">
@@ -51,7 +52,8 @@
 				count: 0,
 				maxCount: 0,
 				wrkNo: '',
-				locNo: ''
+				locNo: '',
+				pickedAnfme: 0
 			}
 		},
 		onShow() {
@@ -85,6 +87,8 @@
 						res = res.data
 						console.log(res);
 						if (res.code === 200) {
+							_this.chosed(_this.pickList,res.data.records)
+							return
 							let enbleList = [], isfl;
 							for (let k of res.data.records) {
 								isfl = false;
@@ -120,8 +124,31 @@
 				})
 			},
 			// 宸查�夋嫞鏂欏垪琛�
-			orderCar() {
-				
+			chosed(wrkDetls,locDetls) {
+				let isfl = false, enbleList = []
+				for (let locDetl of locDetls) {
+					locDetl['color'] = 'order-sts-start'
+					locDetl['pickedAnfme'] = 0
+					locDetl['count'] = 0
+					for (let wrkDetl of wrkDetls) {
+						if (wrkDetl.threeCode == locDetl.threeCode && wrkDetl.matnr == locDetl.matnr) {
+							locDetl['pickedAnfme'] = wrkDetl.anfme
+							if (locDetl.stock == -1) {
+								locDetl.stock = 0
+							}
+							if (wrkDetl.anfme < locDetl.anfme) {
+								locDetl['color'] = 'order-sts-working'
+								locDetl['pickedAnfme'] = wrkDetl.anfme
+								locDetl['count'] = 0
+							} else {
+								locDetl['color'] = 'order-sts-end'
+							}
+							break
+						} 
+					}
+					
+				}
+				this.dataList = locDetls
 			},
 			// 娣诲姞鍏ュ簱鍟嗗搧鑷� 寰呯粍鎵樺垪琛�
 			addItem(index) {
diff --git a/pages/phyz/stationManage/stationDetl.vue b/pages/phyz/stationManage/stationDetl.vue
index e966559..a4d6060 100644
--- a/pages/phyz/stationManage/stationDetl.vue
+++ b/pages/phyz/stationManage/stationDetl.vue
@@ -637,13 +637,13 @@
 	@import url('../../../static/css/common/order.css');
 	
 	.station {
-		font-size: 18px;
-		padding: 24rpx;
+		font-size: 15px;
+		padding: 18rpx;
 	}
 	.station-title {
-		font-size: 32px;
+		font-size: 28px;
 		font-weight: bold;
-		padding: 24rpx 0;
+		padding: 18rpx 0;
 	}
 	.station-barcode {
 		font-size: 24px;
diff --git a/pages/phyz/stationManage/stationManage.vue b/pages/phyz/stationManage/stationManage.vue
index d5e07e1..217b386 100644
--- a/pages/phyz/stationManage/stationManage.vue
+++ b/pages/phyz/stationManage/stationManage.vue
@@ -1,5 +1,5 @@
 <template>
-	<view>
+	<view style="font-size: 14px;">
 		<view class="code">
 			<uni-search-bar :focus="searchValueFocus" v-model="searchValue"  @input="searchValueInput()"
 				maxlength="500" ancel="cancel" @clear="clear" placeholder="杈撳叆 / 鎵弿 绔欑偣鍙�">
diff --git a/static/css/common/order.css b/static/css/common/order.css
index 60d37f4..e8ecb55 100644
--- a/static/css/common/order.css
+++ b/static/css/common/order.css
@@ -15,7 +15,7 @@
 	}
 	.list {
 		margin: 20rpx;
-		
+		font-size: 14px;
 		background-color: #fff;
 		border-radius: 20rpx;
 		border: 1px solid #eeeeee;

--
Gitblit v1.9.1