From 8263d5a0a133e249a0b14d5d208cef1e69d4a268 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期四, 29 五月 2025 16:05:54 +0800 Subject: [PATCH] 12 --- pages/basics/order.vue | 345 +++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 222 insertions(+), 123 deletions(-) diff --git a/pages/basics/order.vue b/pages/basics/order.vue index 1d23cb3..1da5f29 100644 --- a/pages/basics/order.vue +++ b/pages/basics/order.vue @@ -1,51 +1,59 @@ <template> - <view > + <view> <scroll-view scroll-y catch:touchmove="touchmove"> <view class="square-2"> <view class="square-title"> - <view class="title-sign"><view class="sign"></view></view> + <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"> - <input v-model="barcode" type="text" placeholder="鎵爜 / 杈撳叆" maxlength="10" - :focus="barcodeFocus" @input="barcodeInput" placeholder-style="line-height: 85rpx;"> + <input v-model="barcode" type="text" placeholder="鎵爜 / 杈撳叆" maxlength="10" :focus="barcodeFocus" + @input="barcodeInput" 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-sign"> + <view class="sign"></view> + </view> <view class="title-text"><text>鍗曟嵁缂栧彿</text></view> </view> <view class="square-content"> <view class="content-input"> - <input v-model="order" type="text" placeholder="鎵爜 / 杈撳叆" @input="findOrder()" - :focus="focus" placeholder-style="line-height: 85rpx;"> + <input v-model="order" type="text" placeholder="鎵爜 / 杈撳叆" @input="findOrder()" :focus="focus" + placeholder-style="line-height: 85rpx;"> <uni-icons type="closeempty" size="20" color="#dadada" @click="removeOrder()"></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-sign"> + <view class="sign"></view> + </view> <view class="title-text"><text>鐗╂枡鏉$爜</text></view> </view> <view class="square-content"> <view class="content-input"> - <input v-model="tiaoma" type="text" placeholder="鎵爜 / 杈撳叆" @input="findTiaoMa()" - :focus="tmfocus" placeholder-style="line-height: 85rpx;"> + <input v-model="tiaoma" type="text" placeholder="鎵爜 / 杈撳叆" @input="findTiaoMa()" :focus="tmfocus" + placeholder-style="line-height: 85rpx;"> <uni-icons type="closeempty" size="20" color="#dadada" @click="removeTm()"></uni-icons> </view> </view> </view> - + <view class="square-1"> <view class="square-title"> - <view class="title-sign"><view class="sign"></view></view> + <view class="title-sign"> + <view class="sign"></view> + </view> <view class="title-text"><text>鍟嗗搧鍒楄〃</text></view> <view v-show="matList.length != 0" class="lable"> <!-- <label class="label-btn" style="width: 170rpx;line-height: 95rpx;" > @@ -59,18 +67,19 @@ </label> --> </view> </view> - + </view> <view class="square-none" v-show="matList.length === 0"> <view class="v-show">鏆傛棤鏇村鏁版嵁...</view> </view> - + <checkbox-group @change="checkbox"> - <view v-for="(item,index) in matList" :key="index" class="data-list bg-false" :class="'bg-'+item.checked" > - <label class="left-check-box" > + <view v-for="(item,index) in matList" :key="index" class="data-list bg-false" + :class="'bg-'+item.checked"> + <label class="left-check-box"> <checkbox :value="item.id+''" :checked="true" style="display: block;" /> </label> - <view class="data-list-left" > + <view class="data-list-left"> <view class="matnr"><text style="width: 700rpx;">鍝佸彿锛歿{item.matnr}}</text></view> <view><text style="width: 700rpx;">鍝佸悕锛歿{item.maktx}}</text></view> <view><text style="width: 700rpx;">鎵瑰彿锛歿{item.batch}}</text></view> @@ -82,14 +91,15 @@ </view> </view> <view class="data-list-right"> - <label><uni-icons type="compose" size="20" color="#a5a5a5" @click="revise(item,index)"></uni-icons></label> + <label><uni-icons type="compose" size="20" color="#a5a5a5" + @click="revise(item,index)"></uni-icons></label> <!-- list涓垹闄ら敭 --> <!-- <label><uni-icons type="trash" size="25" color="#a5a5a5" @click="remove(item,index)"></uni-icons></label> --> </view> </view> </checkbox-group> </scroll-view> - + <!-- 搴曢儴鎸夐挳 --> <view class="footer flex justify-around"> <!-- 搴曢儴鍏ㄩ�� 鍙嶉�夋寜閽� --> @@ -99,7 +109,7 @@ <label class="label-btn" style="width: 100rpx;"> <text @click="reChecked()">鍙嶉��</text> </label> --> - + <label class="label-btn" style="width: 150rpx;"> <button class="cu-btn" @click="resst()">閲嶇疆</button> </label> @@ -107,7 +117,7 @@ <button class="cu-btn bg-blue " @click="comb()">缁勬墭</button> </label> </view> - + <view> <!-- 淇敼鏁伴噺 --> <uni-popup ref="revise" background-color="#fff" @change="change"> @@ -121,8 +131,9 @@ </view> <view class="changeBox flex justify-around"> <view class="num-box"> - <uni-number-box v-model="count" :min="minCount" :max="maxCount" color="#747474" @change="changeValue"/> - </view> + <uni-number-box v-model="count" :min="minCount" :max="maxCount" color="#747474" + @change="changeValue" /> + </view> <button class="cu-btn" @click="changeMax">max</button> </view> <view class="revise-box-buttom"> @@ -130,7 +141,7 @@ <button class="cu-btn bg-blue" @click="confirm()">纭</button> </view> </view> - + </view> </uni-popup> </view> @@ -142,31 +153,31 @@ export default { data() { return { - commonUrl:null, + commonUrl: null, barcode: '', - barcodeFocus:true, - tmfocus:false, - focus:false, + barcodeFocus: true, + tmfocus: false, + focus: false, type: 'center', searchBox: 'hide', - pick:'hide', - order:null, - orderNo:null, - tiaoma:null, - tiaomas:[], - matList:[], + pick: 'hide', + order: null, + orderNo: null, + tiaoma: null, + tiaomas: [], + matList: [], result: '', - count:'', - minCount:0, - maxCount:'', - rowNum:'', - enableQty:'', - check:false, - checkText:'鍏ㄩ��', - checkedData:[], + count: '', + minCount: 0, + maxCount: '', + rowNum: '', + enableQty: '', + check: false, + checkText: '鍏ㄩ��', + checkedData: [], } }, - mounted(){ + mounted() { const UIP = uni.getStorageSync('UIP'); this.baseIP = UIP; const UPORT = uni.getStorageSync('UPORT'); @@ -178,13 +189,17 @@ methods: { // 鑾峰彇url getUrl() { - this.commonUrl = this.baseHttp + this.baseIP + ':' +this.basePORT + "/" +this.baseUrl + this.commonUrl = this.baseHttp + this.baseIP + ':' + this.basePORT + "/" + this.baseUrl }, // barcode input 浜嬩欢 barcodeInput() { var len = this.barcode.length if (len != 8) { - uni.showToast({title: '鎵樼洏鐮佹湁璇閲嶈瘯', icon: "none", position: 'top'}); + uni.showToast({ + title: '鎵樼洏鐮佹湁璇閲嶈瘯', + icon: "none", + position: 'top' + }); this.barcodeFocuss() return; } @@ -197,7 +212,7 @@ // #ifdef APP let that = this; that.barcodeFocus = false; - setTimeout(()=>{ + setTimeout(() => { that.barcode = ''; that.barcodeFocus = true; }, 100); @@ -207,7 +222,7 @@ // #ifdef APP let that = this; that.focus = false; - setTimeout(()=>{ + setTimeout(() => { that.matnrId = ''; that.focus = true; }, 100); @@ -255,11 +270,11 @@ } uni.hideLoading(); }, - revise(item,index) { + revise(item, index) { var maxCount = this.matList[index].maxCount - if (maxCount == undefined ) { + if (maxCount == undefined) { this.matList[index]["maxCount"] = item.enableQty - } + } this.enableQty = item.enableQty this.count = this.minCount this.maxCount = item.maxCount @@ -270,17 +285,17 @@ this.count = this.enableQty }, changeValue() { - + }, remove() { - console.log(this.matList.filter(item=> item.checked !== true)) - this.matList = this.matList.filter(item=> item.checked !== true) - + console.log(this.matList.filter(item => item.checked !== true)) + this.matList = this.matList.filter(item => item.checked !== true) + // this.matList.splice(i,1) - + // for (var i = 0; i < this.matList.length; i++) { // if (this.matList[i].checked == true) { - + // } // } this.checkList(); @@ -299,20 +314,36 @@ uni.vibrateShort(); let that = this; if (!that.orderNo) { - uni.showToast({title: '璇锋壂鎻忓崟鎹彿', icon: "none", position: 'top'}); + uni.showToast({ + title: '璇锋壂鎻忓崟鎹彿', + icon: "none", + position: 'top' + }); return; } if (!that.barcode) { - uni.showToast({title: '璇锋壂鎻忔墭鐩樻潯鐮�', icon: "none", position: 'top'}); + uni.showToast({ + title: '璇锋壂鎻忔墭鐩樻潯鐮�', + icon: "none", + position: 'top' + }); return; } if (that.barcode.length !== 8) { - uni.showToast({title: '鎵樼洏鐮佸繀椤讳负8浣�', icon: "none", position: 'top'}); + uni.showToast({ + title: '鎵樼洏鐮佸繀椤讳负8浣�', + icon: "none", + position: 'top' + }); return; } - let mats =that.matList.filter(mat =>mat.anfme>0); + let mats = that.matList.filter(mat => mat.anfme > 0); if (mats.length === 0) { - uni.showToast({title: '璇锋坊鍔犲晢鍝佸垪琛�', icon: "none", position: 'top'}); + uni.showToast({ + title: '璇锋坊鍔犲晢鍝佸垪琛�', + icon: "none", + position: 'top' + }); return; } // for (var i = 0; i < mats.length; i++) { @@ -323,16 +354,16 @@ // } uni.showLoading(); uni.request({ - url: that.commonUrl + '/mobile/comb/auth', - data: JSON.stringify({ + url: that.commonUrl + '/mobile/comb/auth', + data: JSON.stringify({ orderNo: that.orderNo, barcode: that.barcode, combMats: mats }), method: 'POST', - header: { - 'token':uni.getStorageSync('token') - }, + header: { + 'token': uni.getStorageSync('token') + }, success(result) { uni.showLoading(); var res = result.data @@ -344,14 +375,22 @@ }); that.resst() } else if (res.code == 403) { - uni.showToast({title: res.msg, icon: "none", position: 'top'}) + 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'}) + uni.showToast({ + title: res.msg, + icon: "none", + position: 'top' + }) } } }); @@ -359,13 +398,13 @@ findOrder() { let that = this uni.request({ - url: that.commonUrl + '/mobile/order/search/orderNo/auth', - data: { + url: that.commonUrl + '/mobile/order/search/orderNo/auth', + data: { orderNo: that.order - }, - header: { - 'token':uni.getStorageSync('token') - }, + }, + header: { + 'token': uni.getStorageSync('token') + }, success(result) { console.log("result锛�"); console.log(result) @@ -380,19 +419,27 @@ // })); that.matList = res.data.combMats that.initAnfme(); - + console.log("that.matList锛�"); console.log(that.matList) - + } else if (res.code == 403) { - uni.showToast({title: res.msg, icon: "none", position: 'top'}) + 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'}) + uni.showToast({ + title: res.msg, + icon: "none", + position: 'top' + }) } } }); @@ -400,17 +447,21 @@ findTiaoMa() { let that = this if (!that.orderNo) { - uni.showToast({title: '璇锋壂鎻忓崟鎹彿', icon: "none", position: 'top'}); + uni.showToast({ + title: '璇锋壂鎻忓崟鎹彿', + icon: "none", + position: 'top' + }); return; } uni.request({ - url: that.commonUrl + '/mobile/mat/search/auth', - data: { + url: that.commonUrl + '/mobile/mat/search/auth', + data: { matnr: that.tiaoma - }, - header: { - 'token':uni.getStorageSync('token') - }, + }, + header: { + 'token': uni.getStorageSync('token') + }, success(result) { console.log("result锛�"); console.log(result) @@ -419,14 +470,22 @@ that.checkMat(res.data) //this.tiaomas.unshift(that.tiaoma) } else if (res.code == 403) { - uni.showToast({title: res.msg, icon: "none", position: 'top'}) + 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'}) + uni.showToast({ + title: res.msg, + icon: "none", + position: 'top' + }) } } }); @@ -436,28 +495,40 @@ var add = true for (var i = 0; i < len; i++) { if (mat.matnr == this.matList[i].matnr) { - if (mat.batch){ - if(mat.batch == this.matList[i].batch){ - this.matList[i].times +=1 - if (this.matList[i].anfme + mat.anfme <=this.matList[i].count){ + if (mat.batch) { + if (mat.batch == this.matList[i].batch) { + this.matList[i].times += 1 + var num = Number(this.matList[i].anfme) + Number(mat.anfme); + var num2 = this.matList[i].enableQty ? this.matList[i].enableQty : 0 + if (num <= num2) { this.matList[i].anfme += mat.anfme this.$forceUpdate() // 寮哄埗鍒锋柊 add = false + } else { + uni.showToast({ + title: '缁勬墭鏁伴噺瓒呰繃璁㈠崟鏁伴噺', + icon: "none", + position: 'top' + }) } - }else{ - uni.showToast({title: '缁勬墭鏁伴噺瓒呰繃璁㈠崟鏁伴噺', icon: "none",position: 'top'}) } - }else{ - if (this.matList[i].anfme + mat.anfme <=this.matList[i].count){ - this.matList[i].times +=1 + } else { + var num = Number(this.matList[i].anfme) + Number(mat.anfme); + var num2 = this.matList[i].enableQty ? this.matList[i].enableQty : 0 + if (num <= num2) { + this.matList[i].times += 1 this.matList[i].anfme += mat.anfme this.$forceUpdate() // 寮哄埗鍒锋柊 add = false - }else{ - uni.showToast({title: '缁勬墭鏁伴噺瓒呰繃璁㈠崟鏁伴噺', icon: "none",position: 'top'}) + } else { + uni.showToast({ + title: '缁勬墭鏁伴噺瓒呰繃璁㈠崟鏁伴噺', + icon: "none", + position: 'top' + }) } } - + } } this.tiaoma = '' @@ -476,16 +547,16 @@ this.$refs.goodsSearch.open(type) }, // 鍒楄〃閫夋嫨 - checkbox: function (e) { + checkbox: function(e) { var items = this.matList, values = e.detail.value; for (var i = 0, lenI = items.length; i < lenI; ++i) { const item = items[i] item.id = item.id + '' - if(values.indexOf(item.id) >= 0){ - this.$set(item,'checked',true) - }else{ - this.$set(item,'checked',false) + if (values.indexOf(item.id) >= 0) { + this.$set(item, 'checked', true) + } else { + this.$set(item, 'checked', false) } } if (values.length == items.length) { @@ -498,19 +569,19 @@ uni.vibrateShort(); }, // 鍒楄〃鍙嶉�� - reChecked() { + reChecked() { if (this.matList.length == 0) { return; } var checkArr = [] - for (var i = 0; i < this.matList.length;i++) { + for (var i = 0; i < this.matList.length; i++) { if (this.matList[i].checked == true) { - this.$set(this.matList[i],'checked',false) - }else{ - this.$set(this.matList[i],'checked',true) + this.$set(this.matList[i], 'checked', false) + } else { + this.$set(this.matList[i], 'checked', true) } if (this.matList[i].checked == true) { - checkArr.push(this.matList[i].checked) + checkArr.push(this.matList[i].checked) } } if (checkArr.length == this.matList.length) { @@ -523,16 +594,16 @@ uni.vibrateShort(); }, // 鍒楄〃鍏ㄩ�� - allChecked(e){ + allChecked(e) { if (this.check == true) { - for (var i = 0; i < this.matList.length;i++) { - this.$set(this.matList[i],'checked',false) + for (var i = 0; i < this.matList.length; i++) { + this.$set(this.matList[i], 'checked', false) } this.check = false this.checkText = "鍏ㄩ��" } else { - for (var i = 0; i < this.matList.length;i++) { - this.$set(this.matList[i],'checked',true) + for (var i = 0; i < this.matList.length; i++) { + this.$set(this.matList[i], 'checked', true) } this.check = true this.checkText = "鍙栨秷鍏ㄩ��" @@ -560,6 +631,7 @@ height: 100%; width: 400rpx; } + .square-1 .lable label { display: inline-block; float: left; @@ -567,6 +639,7 @@ width: 90rpx; line-height: 100rpx; } + .pak-seach-box { background-color: #FFFFFF; margin: 15rpx 15rpx 0rpx 15rpx; @@ -574,11 +647,13 @@ height: 150rpx; border-radius: 20rpx; } - .box-top{ + + .box-top { display: block; height: 60rpx; width: 720rpx; } + .color-block-blue { background-color: #1E9FFF; display: inline-block; @@ -589,6 +664,7 @@ border: 5rpx solid #1E9FFF; border-radius: 20rpx; } + .title { display: inline-block; float: left; @@ -598,6 +674,7 @@ line-height: 50rpx; margin-top: 10rpx; } + .box-buttom { display: inline-block; background-color: #ededed; @@ -606,18 +683,21 @@ border-radius: 20rpx; margin: 15rpx 15rpx 0rpx 15rpx; } + .box-buttom input { width: 75%; float: left; margin: 8rpx 10rpx 0rpx 25rpx; } - .box-buttom .search-icon{ + + .box-buttom .search-icon { width: 60rpx; height: 60rpx; float: right; margin-top: 5rpx; margin-right: 10rpx; } + .pak-seach-box button { background-color: #1E9FFF; color: #ffffff; @@ -628,9 +708,11 @@ margin: 15rpx 15rpx 0rpx 15rpx; line-height: 60rpx; } + .pakin-btn { background-color: #1E9FFF; } + .pak-data-box { background-color: #F1F1F1; margin: 15rpx 15rpx 0rpx 15rpx; @@ -638,29 +720,36 @@ height: 70rpx; border-radius: 20rpx; } + .pak-data-box .box-top { background-color: #FFFFFF; height: 70rpx; border-radius: 20rpx 20rpx 20rpx 20rpx; } + .bg-false { background-color: #FFFFFF; } + .bg-true { background-color: #ebebeb; } + .data-list { border-bottom: 1px solid #d8d8d8; height: 210rpx; margin: 15rpx auto auto auto; border-radius: 20rpx; } + .data-list:first-child { margin-top: 20rpx; } + .data-list:last-child { margin-bottom: 160rpx; } + /* .data-list-left { display: inline-block; float: left; @@ -668,7 +757,7 @@ width: 100rpx; height: 180rpx; line-height: 180rpx; - } */ + } */ .left-check-box { display: inline-block; /* background-color: #1E9FFF; */ @@ -678,6 +767,7 @@ text-align: center; line-height: 170rpx; } + .data-list-left { /* background-color: #ffff7f; */ display: inline-block; @@ -686,9 +776,11 @@ width: 500rpx; color: #676767; } + .matnr { padding-top: 10rpx; } + .data-list-right { /* background-color: #55ffff; */ display: inline-block; @@ -697,22 +789,26 @@ height: 180rpx; line-height: 180rpx; } + .data-list-right label { display: inline-block; float: left; width: 100rpx; height: 180rpx; } + .revise-box { width: 500rpx; height: 500rpx; } + .revise-box-top { width: 100%; height: 100rpx; background-color: #fff; padding: 10rpx; } + .changeBox { width: 100%; height: 100rpx; @@ -722,6 +818,7 @@ margin-top: 20rpx; border-bottom: 1px solid #e3e3e3; } + .text-box { width: 100%; height: 100rpx; @@ -732,13 +829,16 @@ margin-top: 20rpx; border-bottom: 1px solid #e3e3e3; } + .changeBox .num-box { - display: inline-block; + display: inline-block; float: left; } + .changeBox button { float: left; } + .revise-box-buttom { position: absolute; width: 100%; @@ -748,5 +848,4 @@ bottom: 0; text-align: center; } - -</style> +</style> \ No newline at end of file -- Gitblit v1.9.1