From 3693de3a743f774c81727a35f4b5ee9d28013a16 Mon Sep 17 00:00:00 2001
From: whycq0520 <91384184@qq.com>
Date: 星期六, 26 三月 2022 18:19:37 +0800
Subject: [PATCH] # 上架货位 多选

---
 pages/basics/combPro.vue |  181 +++++++++++++++++++++++++++++---------------
 1 files changed, 118 insertions(+), 63 deletions(-)

diff --git a/pages/basics/combPro.vue b/pages/basics/combPro.vue
index d0de175..b74495a 100644
--- a/pages/basics/combPro.vue
+++ b/pages/basics/combPro.vue
@@ -3,11 +3,11 @@
 		<form>
 			<view class="cu-form-group margin-top">
 				<view class="title">鍗曞彿</view>
-				<input v-model="billNo" placeholder="鎵爜 / 杈撳叆" name="input" autocomplete="off" focus @input="find()">
+				<input v-model="billNo" placeholder="鎵爜 / 杈撳叆" name="input" autocomplete="off" @confirm="firstConfirm" :focus="firstFocus"  @input="find()">
 			</view>
 			<view class="cu-form-group margin-top">
 				<view class="title">鎵樼洏鐮�</view>
-				<input v-model="code" placeholder="鎵爜 / 杈撳叆" name="input">
+				<input v-model="code" placeholder="鎵爜 / 杈撳叆" name="input" @confirm="secondConfirm" :focus="secondFocus" >
 			</view>
 		</form>
 		
@@ -18,15 +18,20 @@
 					<input :adjust-position="false" type="text" placeholder="浜у搧浠e彿" confirm-type="search" v-model="size" @input="searchSize()"></input>
 				</view>
 			</view>
+			<view class="flex solid-bottom  padding justify-start bg-gray" style="height: 110rpx;padding: 5rpx;">
+				<button class ="cu-btn bg-red lg margin-xs" @click="delTable">鎵归噺鍒犻櫎</button>
+				<button class ="cu-btn bg-cyan lg margin-xs" @click="clearSel">娓呯┖閫夋嫨</button>
+				<button class ="cu-btn bg-olive lg margin-xs" @click="reSelection">鍙嶉��</button>
+			</view>
 			<uni-table ref="table" border stripe emptyText="鏆傛棤鏇村鏁版嵁" type="selection" @selection-change="selectionChange">
 				<uni-tr>
-					<uni-th align="center" width="90">鏁伴噺</uni-th>
-					<uni-th align="center" width="90">缁勬墭鏁伴噺</uni-th>
-					<uni-th align="center" width="90">浜у搧浠e彿</uni-th>
-					<uni-th align="center" width="90">浜у搧缂栫爜</uni-th>
-					<uni-th align="center" width="90">浜у搧鍚嶇О</uni-th>
-					<uni-th align="center" width="90">搴忓彿</uni-th>
-					<uni-th align="center" width="90">鎵瑰彿</uni-th>
+					<uni-th align="center" width="50">鏁伴噺</uni-th>
+					<uni-th align="center" width="70">缁勬墭鏁伴噺</uni-th>
+					<uni-th align="center" width="80">浜у搧浠e彿</uni-th>
+					<uni-th align="center" width="70">浜у搧缂栫爜</uni-th>
+					<uni-th align="center" width="150">浜у搧鍚嶇О</uni-th>
+					<uni-th align="center" width="50">搴忓彿</uni-th>
+					<uni-th align="center" width="70">鎵瑰彿</uni-th>
 					
 					
 				</uni-tr>
@@ -45,18 +50,14 @@
 				</uni-tr>
 			</uni-table>
 		</view>
-		<view class="flex solid-bottom  padding justify-start">
-			<button class ="cu-btn bg-red margin-xs" @click="delTable">鎵归噺鍒犻櫎</button>
-			<button class ="cu-btn bg-cyan margin-xs" @click="clearSel">娓呯┖閫夋嫨</button>
-			<button class ="cu-btn bg-olive margin-xs" @click="reSelection">鍙嶉��</button>
-		</view>
+		
 		<view style="height: 200rpx;">
 			 <!-- 绌虹櫧灞� -->
 		</view>
-		<view class="cu-bar foot input">
+		<view class="cu-bar foot input" style="height: 130rpx;">
 			<view class="flex solid-bottom padding justify-start">
-				<button class="cu-btn bg-yellow  lg margin-xs" style="width: 250rpx;" @click="comb()">缁� 鎵�</button>
-				<button class="cu-btn bg-grey lg margin-xs" @click="reset">閲� 缃�</button>
+				<button class="cu-btn bg-yellow main-btn margin-xs" style="width: 430rpx;" @click="comb()">缁� 鎵�</button>
+				<button class="cu-btn bg-grey main-btn margin-xs" @click="reset">閲� 缃�</button>
 			</view>
 		</view>
 		
@@ -77,7 +78,7 @@
 		<view>
 			<!-- 鎻愮ず绐楃ず渚� -->
 			<uni-popup ref="alertDialog" type="dialog">
-				<uni-popup-dialog :type="msgType" title="璀﹀憡" :content="message" @confirm="dialogConfirm"
+				<uni-popup-dialog :type="msgType" title="璀﹀憡" :content="message" @confirm="dialogConfirm('error')"
 					@close="dialogClose"></uni-popup-dialog>
 			</uni-popup>
 		</view>
@@ -104,8 +105,9 @@
 				selectArr : [],
 				selectedIndexs:[],
 				size:'',
-				message:'123'
-				
+				message:'123',
+				firstFocus:true,   // 鎺у埗绗竴涓劍鐐癸紝榛樿鑱氱劍
+				secondFocus:false,  // 鎺у埗绗簩涓劍鐐�
 			}
 		},
 		mounted(){
@@ -115,6 +117,23 @@
 			this.basePORT = UPORT
 		},
 		methods: {
+			// 璺冲埌绗簩涓�
+			firstConfirm(){
+				this.getFocus('secondFocus')		
+			},
+			// 璺冲埌绗竴涓�
+			secondConfirm(){
+				
+			},
+		
+			// 鑾峰彇鐒︾偣
+			getFocus(nextfocus){
+				this[nextfocus] = false     // 涓嶈兘浣跨敤鐐硅娉�
+				this.$nextTick(()=>{
+					this[nextfocus] = true
+				})
+			},
+			
 			// 澶氶��
 			selectionChange(e) {
 				// 鑾峰彇閫変腑鐘舵��
@@ -157,7 +176,7 @@
 				let size = this.size;
 				let that = this
 				uni.request({
-					url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/bill/query/auth",
+					url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/bill/query1/auth",
 					header: {
 						'content-type':'application/x-www-form-urlencoded',
 						'token':uni.getStorageSync('token')},
@@ -171,45 +190,32 @@
 							if(res.data.data != null){
 								that.addTableData(res.data.data)
 							}else if(res.data.code === 403){
-								
+								uni.navigateBack({
+								    delta: 1
+								})
 							}else {
-								
+								that.messageToggle('error')
+								that.messageText = res.data.msg
 							}
 						}
 					}
 				})
-				// var str = ''
-				// var tempData = []
-				// str = val.detail.value;
-				// tempData = this.tableData
-				// for (var i = 0; i < tempData.length; i++) {
-				// 	var size = tempData[i].size
-				// 	if (str != '') {
-				// 		if (str === size) {
-				// 			tempData =[]
-				// 			tempData.push(this.matData[i])
-				// 			break	
-				// 		}
-				// 	}
-				// }
-				// this.tableData = tempData
-				// this.matData = tempData
-			}, //SA290475 SH3102081
+
+			}, 
 			// 閲嶇疆
 			reset:function() {
 				this.billNo = '';
 				this.code = '';
 				this.matData = [];
-				
 				this.size = '';
-				this.toggleSelection()
+				this.toggleSelection();
+				this.getFocus('firstFocus')
 			},
 			messageToggle(type) {
 				this.msgType = type
 				this.messageText = '鎻愬彇澶辫触'
 				this.$refs.message.open()
 			},
-			
 			// 鏍规嵁閫氱煡鍗曞彿鏌ヨ鐗╂枡璇︽儏
 			find(){
 				let billNo = this.billNo
@@ -226,7 +232,7 @@
 				}
 				this.matData = []
 				uni.request({
-					url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/bill/query/auth",
+					url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/bill/query1/auth",
 					header: {
 						'content-type':'application/x-www-form-urlencoded',
 						'token':uni.getStorageSync('token')},
@@ -236,14 +242,16 @@
 					},
 					method: 'POST',
 					success(res){
-						console.log(res)
 						if(res.data.code === 200){
 							if(res.data.data != null){
 								that.addTableData(res.data.data)
 							}else if(res.data.code === 403){
-								
+								uni.navigateBack({
+								    delta: 1
+								})
 							}else {
-								
+								that.messageToggle('error')
+								that.messageText = res.data.msg
 							}
 						}
 					}
@@ -252,18 +260,16 @@
 			},
 			addTableData(data){
 				this.matData=[];
-				
 				for(var i=0;i<data.length;i++){
 					var toPush = true;
 					for(var j=0;j<this.matData.length;j++){
-						if(data[i].matNo ===this.matData[j].matNo ){
+						if(data[i].matNo ===this.matData[j].matNo && data[i].itemBatch === this.matData[j].itemBatch && data[i].specs === this.matData[j].specs){
 							this.matData[j].count = Number(this.matData[j].count) + Number(data[i].count);
 							toPush = false;
 						}
 					}
 					if(toPush) {
-						this.matData.push(data[i]);
-						
+						this.matData.push(data[i]);	
 					}
 				}
 			},
@@ -313,15 +319,19 @@
 					that.messageText = '璇峰厛纭鍏ュ簱鏁伴噺'
 					return;
 				}
+				for (var i = 0; i < that.matData.length; i++){
+					if (that.matData[i].count === 0) {
+						that.messageToggle('error')
+						that.messageText = '缁勬墭鏁伴噺涓嶈兘涓�0'
+						return;
+					}
+				}
 				
 				for (var i = 0; i < that.matData.length; i++) {
-					console.log(that.value)
-					console.log(that.matData[i].qty)
 					var sad = that.matData[i].qty - that.value
-					console.log(sad)
 					if (sad <= 5 && sad > 0) {
 						this.$refs.alertDialog.open()
-						that.message = '浜у搧浠e彿' + that.matData[i].size + '鍓╀綑寰呯粍鎵樻暟閲忓皯浜�5锛屾槸鍚︾户缁粍鎵�'
+						that.message = '浜у搧浠e彿' + that.matData[i].size + '鍓╀綑寰呯粍鎵樻暟閲忓皯浜�5锛屾槸鍚﹀畬缁撴鍗�'
 						return
 					} else {
 						uni.request({
@@ -334,12 +344,20 @@
 							},
 							method:'POST',
 							success(res) {
-								
 								if(res.data.code === 200){
 									that.reset()
 									that.matData = []
+									that.couChange=true
 									that.messageToggle('success')
 									that.messageText = '缁勬墭鎴愬姛'
+									this.getFocus('firstFocus')
+								} else if(res.data.code === 403){
+									uni.navigateBack({
+										delta: 1
+									})
+								} else {
+									that.messageToggle('error')
+									that.messageText = res.data.msg
 								}
 							}
 						})
@@ -347,17 +365,14 @@
 				}
 				
 			},
-			// 纭畾缁勬墭
+			// 鏄惁
 			dialogConfirm() {
-				console.log(1)
 				let that = this
 				let barcode = that.code
 				let billNo = this.billNo
-				console.log(that.matData)
 				for (var i = 0; i < that.matData.length; i++) {
 					that.matData[i].oveFlag = 1
 				}
-				console.log(that.matData)
 				uni.request({
 					url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/comb/auth",
 					header: {'token':uni.getStorageSync('token')},
@@ -368,19 +383,59 @@
 					},
 					method:'POST',
 					success(res) {
-						
 						if(res.data.code === 200){
 							that.reset()
 							that.matData = []
+							that.couChange=true
 							that.messageToggle('success')
 							that.messageText = '缁勬墭鎴愬姛'
+							this.getFocus('firstFocus')
+						} else if(res.data.code === 403){
+								uni.navigateBack({
+								    delta: 1
+								})
+						} else {
+							that.messageToggle('error')
+							that.messageText = res.data.msg
 						}
 					}
 				})
 			},
-			// 鍙栨秷缁勬墭
+			// 鍚�
 			dialogClose() {
-				console.log('鍙栨秷缁勬墭浜�')
+				let that = this
+				let barcode = that.code
+				let billNo = this.billNo
+				for (var i = 0; i < that.matData.length; i++) {
+					that.matData[i].oveFlag = 0
+				}
+				uni.request({
+					url: that.baseHttp + that.baseIP + ':' +that.basePORT + that.baseUrl + "/mobile/comb/auth",
+					header: {'token':uni.getStorageSync('token')},
+					data:{
+						barcode:barcode,
+						combMats:that.matData,
+						billNo: billNo,
+					},
+					method:'POST',
+					success(res) {
+						if(res.data.code === 200){
+							that.reset()
+							that.matData = []
+							that.couChange=true
+							that.messageToggle('success')
+							that.messageText = '缁勬墭鎴愬姛'
+							this.getFocus('firstFocus')
+						} else if(res.data.code === 403){
+								uni.navigateBack({
+								    delta: 1
+								})
+						} else {
+							that.messageToggle('error')
+							that.messageText = res.data.msg
+						}
+					}
+				})
 			}
 		},
 		onShow() {

--
Gitblit v1.9.1