From 3f2fffcb6e1b4966b36492118409f562d3c7ce28 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期五, 02 十二月 2022 08:31:41 +0800
Subject: [PATCH] #

---
 pages/basics/stockCheck.vue |  209 ++++++++++++++++++++++++++++++++-------------------
 1 files changed, 131 insertions(+), 78 deletions(-)

diff --git a/pages/basics/stockCheck.vue b/pages/basics/stockCheck.vue
index 2fa1509..390b5b2 100644
--- a/pages/basics/stockCheck.vue
+++ b/pages/basics/stockCheck.vue
@@ -1,7 +1,7 @@
 <template>
 	<view>
 		<scroll-view scroll-y>
-			<view class="pak-seach-box">
+			<!-- <view class="pak-seach-box">
 				<view class="box-top">
 					<view class="color-block-blue"></view>
 					<text class="title">閫夋嫨绔欏彴</text>
@@ -12,7 +12,7 @@
 						<uni-combox @input="getCheckDetl" emptyTips="鏆傛棤鏁版嵁" :candidates="staNoList" v-model="staNo" placeholder="璇烽�夋嫨"></uni-combox>
 					</view>
 				</view>
-			</view>
+			</view> -->
 			
 			<view class="square-2">
 				<view class="square-title">
@@ -21,8 +21,24 @@
 				</view>
 				<view class="square-content">
 					<view class="content-input">
-						<input v-model="barcode" type="text" placeholder="鎵爜 / 杈撳叆" maxlength="8"placeholder-style="line-height:  85rpx;">
+						<input v-model="barcode" @input="search" type="text" placeholder="鎵爜 / 杈撳叆" maxlength="8"placeholder-style="line-height:  85rpx;">
 						<uni-icons type="closeempty" size="20" color="#dadada" @click="removeBarcode" ></uni-icons>
+					</view>
+				</view>
+			</view>
+			<view class="square-2">
+				<view class="square-title">
+					<view class="title-sign"><view class="sign"></view></view>
+					<view class="title-text"><text>娣诲姞鍟嗗搧</text></view>
+				</view>
+				<view class="square-content">
+					<view class="content-input-btn">
+						<input v-model="matnr" type="text" placeholder="鎵爜 / 杈撳叆" @input="findMat()"
+						:focus="focus" placeholder-style="line-height:  85rpx;">
+						<uni-icons type="closeempty" size="20" color="#dadada" @click="removeMatnr()"></uni-icons>
+					</view>
+					<view class="content-btn">
+						<button class="cu-btn bg-blue pda-btn" @click="selectMat()">+鎻愬彇</button>
 					</view>
 				</view>
 			</view>
@@ -40,6 +56,7 @@
 				<view v-for="(item,index) in matList" :key="index" class="data-list bg-false" :class="'bg-'+item.checked" >
 					<view class="data-list-left">
 						<view class="matnr"><text style="width: 400rpx;">缂栫爜锛歿{item.matnr}}</text></view>
+						<view><text style="width: 400rpx;">瑙勬牸锛歿{item.specs}}</text></view>
 						<view><text style="width: 400rpx;">鍝佸悕锛歿{item.maktx}}</text></view>
 						<view><text style="width: 400rpx;">鎵瑰彿锛歿{item.batch}}</text></view>
 						<view>
@@ -61,22 +78,26 @@
 				</view>
 			</view>
 		</scroll-view>
+		<!-- <y-pop v-model="count" title="淇敼" :max="9999999" :show="show"></y-pop> -->
 		<view>
 			<!-- 淇敼鏁伴噺 -->
-			<uni-popup ref="revise" background-color="#fff" @change="change">
+			<uni-popup ref="revise" @change="change">
 				<view class="revise-box">
 					<view class="revise-box-top">
 						<view class="color-block-blue"></view>
-						<text class="title">缁勬墭鏁伴噺</text>
+						<text class="title">淇敼</text>
 					</view>
-					<view class="text-box">
-						<text>鍙粍鏁伴噺锛歿{enableQty}}</text>
+					<view class="change">
+						<view class="text-box">
+							<text>鏁伴噺锛歿{enableQty}}</text>
+						</view>
+						<view class="changeBox">
+							<view class="num-box">
+								<uni-number-box v-model="count" :min="minCount" :max="99999999" color="#747474"  @change="changeValue"/>
+							</view> 
+						</view>
 					</view>
-					<view class="changeBox">
-						<view class="num-box">
-							<uni-number-box v-model="count" :min="minCount" :max="maxCount" color="#747474"  @change="changeValue"/>
-						</view> 
-					</view>
+					
 					<view class="revise-box-buttom">
 						<view>
 							<button class="cu-btn bg-blue" @click="confirm()">纭</button>
@@ -99,10 +120,13 @@
 				staNo:'',
 				matnr:'',
 				enableQty:'',
-				count:'',
+				count:15,
 				maxCount:'',
 				minCount:0,
-				rowNum:''
+				rowNum:'',
+				show: false,
+				focus: false,
+				
 			}
 		},
 		mounted(){
@@ -113,25 +137,28 @@
 			const PROJ = uni.getStorageSync('UPROJ');
 			this.baseUrl = PROJ
 			this.getUrl()
-			this.getOutBound();
 		},
 		methods: {
 			// 鑾峰彇url
 			getUrl() {
 				this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePORT + "/" +this.baseUrl
 			},
-			getOutBound() {         // 鑾峰彇鍑哄簱鍙�
+			// 鏍规嵁鎵樼洏鐮佹悳绱�
+			search() {
 				let that = this
 				uni.request({
-					url: that.commonUrl + '/available/take/check/site',
-					method: 'POST',
+					url: that.commonUrl + '/mobile/checkDetl/auth2',
 					header: {
 						'token':uni.getStorageSync('token')
 					},
+					data: {barcode: that.barcode},
+					method:'GET',
 					success(result) {
-						var res = result.data
-						if (res.code === 200) {
-							that.staNoList = res.data
+						let res = result.data
+						if(res.code === 200){
+							for(var i = 0; i < res.data.length;i++){
+								that.matList.push(res.data[i])
+							}
 						} else if (res.code == 403) {
 							uni.showToast({title: res.msg, icon: "none", position: 'top'})
 							setTimeout(() => {
@@ -142,56 +169,30 @@
 						} else {
 							uni.showToast({title: res.msg, icon: "none",position: 'top'})
 						}
-					},
-				});
-			}, // getOutBound
-			getCheckDetl() {   // 鑾峰彇鍑哄簱鍙h揣鐗╀俊鎭�
-				let that = this
-				uni.request({
-					url: that.commonUrl + '/mobile/checkDetl/auth',
-					method: 'POST',
-					data: {
-						staNo:that.staNo
-					},
-					header: {
-						'token':uni.getStorageSync('token')
-					},
-					success(result) {
-						var res = result.data
-						console.log(result)
-						if (res.code === 200) {
-							console.log(res.data)
-						} else if (res.code == 403) {
-							uni.showToast({title: res.msg, icon: "none", position: 'top'})
-							setTimeout(() => {
-								uni.reLaunch({
-									url: '../login/login'
-								});
-							}, 1000);
-						} else {
-							uni.showToast({title: res.msg, icon: "none",position: 'top'})
-						}
-					},
-				});
-			}, // getCheckDetl
+					}
+					
+				})
+			},
 			selectMat() {  // 閫夋嫨鍟嗗搧
 				let that = this
 				uni.vibrateShort();
 				uni.navigateTo({
 					url: "matSelect",
 					events: {
-					    // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹�
+					    // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹�  鍙﹀涓�涓〉闈紶杩囨潵鐨�
 					    acceptDataFromOpenedPage: function(data) {
 							that.matnr = data.data
 							that.findMat(that.matnr)
+							that.matnr = ''
 					    },
-					  },
-					  success: function(res) {
-					    // 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�
-					    res.eventChannel.emit('acceptDataFromOpenerPage', {baseIP:that.baseIP, basePORT:that.basePORT })
-					  }
+					},
+					success: function(res) {
+					    // 閫氳繃eventChannel鍚戣鎵撳紑椤甸潰浼犻�佹暟鎹�   鍚戝彟澶栦竴涓〉闈紶閫掑�肩殑
+					    res.eventChannel.emit('commonUrl', {commonUrl:that.commonUrl })
+					},
+					
 				});
-				that.matnr = ''
+				
 			}, // selectMat
 			findMat() {
 				let that = this
@@ -213,7 +214,7 @@
 								events: {
 								    // 涓烘寚瀹氫簨浠舵坊鍔犱竴涓洃鍚櫒锛岃幏鍙栬鎵撳紑椤甸潰浼犻�佸埌褰撳墠椤甸潰鐨勬暟鎹�
 								    matList: function(data) {
-										that.matList.push(data.data)
+										that.checkMat(data.data)
 								    },
 								  },
 								  success: function(res) {
@@ -226,20 +227,31 @@
 					}
 				});
 			}, // findMat
+			removeMatnr() {
+				this.matnr = ''
+				uni.vibrateShort();
+				this.focus = false;
+				this.$nextTick(function() {
+					this.focus = true;
+				});
+			},
 			revise(item,index) {
-				var maxCount = this.matList[index].maxCount
-				if (maxCount == undefined ) {
-					this.matList[index]["maxCount"] = item.enableQty
-				} 
-				this.enableQty = item.enableQty
-				this.count = this.minCount
-				this.maxCount = item.maxCount
+				// var maxCount = this.matList[index].maxCount
+				// if (maxCount == undefined ) {
+				// 	this.matList[index]["maxCount"] = item.enableQty
+				// } 
+				// this.enableQty = item.enableQty
+				// this.count = this.minCount
+				// this.maxCount = item.maxCount
+				this.count = this.matList[index].anfme
 				this.rowNum = index
 				this.eject()
+				// this.show = true
 			}, 
 			remove(item,index) {
-				this.matList.splice(index,1)
+				this.matList[index].anfme = 0
 				uni.vibrateShort();
+				this.$forceUpdate() // 寮哄埗鍒锋柊
 			},
 			eject(type) {
 				this.type = type
@@ -255,27 +267,49 @@
 			confirm() {
 				this.matList[this.rowNum].anfme = this.count
 				this.$refs.revise.close()
+				this.$forceUpdate() // 寮哄埗鍒锋柊
 			},
 			resst() {
 				this.matList = []
 				this.staNo = ''
 			},
+			// 娣诲姞鍟嗗搧
+			addMat(mat) {
+				this.matList.unshift(mat)
+			},
+			checkMat(mat) {
+				var len = this.matList.length
+				var add = true
+				for (var i = 0; i < len; i++) {
+					if (mat.matnr == this.matList[i].matnr) {
+						this.matList[i].anfme += mat.anfme 
+						this.$forceUpdate() // 寮哄埗鍒锋柊
+						add = false
+					}
+				}
+				if (add) {
+					this.matList.unshift(mat)
+				}
+			},
 			adjust() {
 				let that = this
+				var combMats = []
+				var combParam = {}
+				combParam['barcode'] = that.barcode
+				combParam['wrkDetls'] = that.matList
 				uni.request({
-					url: that.commonUrl + '/adjust/auth',
+					url: that.commonUrl + '/mobile/adjustNew/auth',
 					method: 'POST',
-					data: {
-						combParam: that.matList
-					},
+					data: JSON.stringify(combParam),
 					header: {
 						'token':uni.getStorageSync('token')
 					},
 					success(result) {
 						var res = result.data
-							console.log(result)
 						if (res.code === 200) {
-					
+							that.matList = []
+							that.barcode = ''
+							uni.showToast({title: res.msg, icon: "none", position: 'top'})
 						} else if (res.code == 403) {
 							uni.showToast({title: res.msg, icon: "none", position: 'top'})
 							setTimeout(() => {
@@ -296,6 +330,25 @@
 	} // exprot
 </script>
 <style>
+	.revise-box {
+		width: 500rpx;
+		height: 300rpx;
+		display: flex;
+		flex-direction: column;
+		border-radius: 20rpx;
+		background-color: #F1F1F1;
+	}
+	.change {
+		height: 150rpx;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+	}
+	.revise-box-buttom {
+		display: flex;
+		align-items: center;
+		justify-content: center;
+	}
 	.pak-seach-box {
 		background-color: #FFFFFF;
 		margin: 15rpx 15rpx 0rpx 15rpx;
@@ -373,7 +426,7 @@
 	}
 	.data-list {
 		border-bottom: 1px solid #d8d8d8;
-		height: 180rpx;
+		height: 230rpx;
 		margin: 15rpx;
 		border-radius: 20rpx;
 	}
@@ -397,8 +450,8 @@
 		display: inline-block;
 		float: right;
 		width: 200rpx;
-		height: 180rpx;
-		line-height: 180rpx;
+		height: 230rpx;
+		line-height: 230rpx;
 	}
 	.data-list-right label {
 		display: inline-block;

--
Gitblit v1.9.1