From dc06f58d8ed537555fd529551180f43a0586ec3f Mon Sep 17 00:00:00 2001 From: helongyang <647556386@qq.com> Date: 星期日, 22 六月 2025 11:44:43 +0800 Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn --- 代码管理/淮安PDA/pages/stash/InspectIn.vue | 612 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 612 insertions(+), 0 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages/stash/InspectIn.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages/stash/InspectIn.vue" new file mode 100644 index 0000000..ae655d0 --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/\346\267\256\345\256\211PDA/pages/stash/InspectIn.vue" @@ -0,0 +1,612 @@ +<template> + <view> + <uni-segmented-control style="margin-top: 15rpx;" :current="current" :values="items" @clickItem="onClickItem"> + </uni-segmented-control> + <view class="content"> + <!-- <view v-if="current === 0" class="headerstyle"> + <view class="itemstyle"> + <uni-forms label-width="180"> + <uni-forms-item label="鎵樼洏鏉$爜:"> + <uni-easyinput type="text" placeholder="璇锋壂鎻忔墭鐩樻潯鐮�" ref='midInput' :focus="!focus" + v-model="barcode" @input="barcodeInput" /> + </uni-forms-item> + <uni-forms-item label="鍐呯鏍囩:"> + <uni-easyinput type="text" placeholder="璇锋壂鎻忓唴绠辨爣绛�" ref='midInput' :focus="focus" + v-model="materSn" @input="snInput" /> + </uni-forms-item> + <uni-forms-item :label="Testlabel" v-if="Test"> + <uni-easyinput type="text" :placeholder="Testplaceholder" ref='midInput' + v-model="Initiallife" /> + </uni-forms-item> + + <uni-forms-item> + <button @click="submit" type="primary" size="default" style="margin-top: 2%;">缁勭洏</button> + </uni-forms-item> + </uni-forms> + <uni-list> + + <uni-list-item direction="column" v-for="(item,index) in matInfos" :key="index"> + <template v-slot:body> + <view class="uni-list-box"> + <uni-icons type="trash" size="22" style="position: absolute;right: 5%;" + @click="deleteList(index)"> + </uni-icons> + <view class="uni-content"> + <view class="uni-title-sub uni-ellipsis-2">閲囪喘鍗曞彿锛歿{item.purchaseOrderNo}}</view> + <view class="uni-note">鐗╂枡缂栫爜锛歿{item.materielCode}}</view> + <view class="uni-note">鎵规鍙凤細{{item.lotNo}}</view> + <view class="uni-note">鏁伴噺锛歿{item.quantity}}</view> + <view class="uni-note">鐢熶骇鏃ユ湡锛歿{item.productionDate}}</view> + <view class="uni-note">鏈夋晥鏈燂細{{item.effectiveDate}}</view> + </view> + </view> + </template> + </uni-list-item> + </uni-list> + </view> + </view> --> + <view v-if="current === 0" class="headerstyle"> + <view class="itemstyle"> + <uni-forms label-width="120"> + <uni-forms-item label="鎵樼洏鏉$爜"> + <uni-easyinput type="text" :focus="!addressFocus" v-model="inboundBarcode" + placeholder="璇锋壂鎻忔墭鐩樻潯鐮�" ref='midInput' @confirm="inputChangebarcode" /> + </uni-forms-item> + <uni-forms-item label="鍦板潃鏉$爜"> + <uni-easyinput type="text" v-model="address" :disabled="addressdisabled" + placeholder="璇锋壂鎻忓湴鍧�鏉$爜" ref='midInput' :focus="addressFocus" /> + </uni-forms-item> + <uni-forms-item> + <button @click="inbound" type="primary" size="default" style="margin-top: 2%;">鍏ュ簱纭</button> + </uni-forms-item> + </uni-forms> + </view> + <view> + <view class="uni-content" v-if="checkStockInfo" style="width: 500rpx; margin: 0px auto;"> + <view class="uni-title-sub uni-ellipsis-2" style="font-size: 16px;">鐗╂枡缂栧彿锛歿{checkStockInfo.materielCode}}</view> + <view class="uni-note" style="font-size: 16px;">妫�楠屾暟閲忥細{{checkStockInfo.receivedQuantity}}</view> + <view class="uni-note" style="font-size: 16px;">鎶ュ簾鏁伴噺锛歿{checkStockInfo.scrappedQuantity}}</view> + <view class="uni-note" style="font-size: 16px;">鐗归噰鏁伴噺锛歿{checkStockInfo.defectedQuantity}}</view> + <view class="uni-note" style="font-size: 16px;">鍚堟牸鏁伴噺锛歿{checkStockInfo.qualifiedQuantity}}</view> + <view class="uni-note" style="font-size: 16px;">搴撳瓨鏁伴噺锛歿{checkStockInfo.stockQuantity}}</view> + </view> + </view> + </view> + <view v-if="current === 1" class="headerstyle"> + <view class="itemstyle"> + <uni-forms label-width="180"> + <uni-forms-item label="鍐呯鏍囩:"> + <uni-easyinput type="text" placeholder="璇锋壂鎻忓唴绠辨爣绛�" ref='midInput' :focus="pkfocus" + v-model="pkmaterSn" @input="pksnInput" /> + </uni-forms-item> + <uni-forms-item> + <button @click="pksubmit" type="primary" size="default" style="margin-top: 2%;">鍏ュ钩搴�</button> + </uni-forms-item> + </uni-forms> + <uni-list> + <uni-list-item direction="column" v-for="(item,index) in pkmatInfos" :key="index"> + <template v-slot:body> + <view class="uni-list-box"> + <uni-icons type="trash" size="22" style="position: absolute;right: 5%;" + @click="pkdeleteList(index)"> + </uni-icons> + <view class="uni-content"> + <view class="uni-title-sub uni-ellipsis-2">閲囪喘鍗曞彿锛歿{item.purchaseOrderNo}}</view> + <view class="uni-note">鐗╂枡缂栫爜锛歿{item.materielCode}}</view> + <view class="uni-note">鎵规鍙凤細{{item.lotNo}}</view> + <view class="uni-note">鏁伴噺锛歿{item.quantity}}</view> + <view class="uni-note">鐢熶骇鏃ユ湡锛歿{item.productionDate}}</view> + <view class="uni-note">鏈夋晥鏈燂細{{item.effectiveDate}}</view> + </view> + </view> + </template> + </uni-list-item> + </uni-list> + </view> + </view> + </view> + <u-toast ref="uToast" /> + </view> +</template> + +<script> + const innerAudioContext = uni.createInnerAudioContext(); + export default { + data() { + return { + items: ['鍏ュ簱'], //, '鍗曟嵁淇℃伅', '瑙g洏' + current: 0, + matTotal: [], + matInfos: [], + orderNo: "", + label: "", + orderInfo: [], + focus: false, + pkfocus: false, + barcode: "", + materSn: "", + Initiallife: 1000, + sns: [], + sn: "", + addressFocus: false, + inboundBarcode: "", + address: "", + check: true, + value: "", + matInfo: [], + value2: "", + matTotals: [], + warehouseId: "", + Test: false, + Testlabel: "", + Testplaceholder: "", + Testcheck: false, + Summmary: 0, + stockInfoDetail: [], + addressdisabled: false, + pksns: [], + pkmaterSn: "", + pkmatInfos: [], + checkStockInfo:null + } + }, + onShow() {}, + onLoad(res) { + this.focus = false; + this.addressFocus = false; + this.orderNo = res.orderNo; + this.warehouseId = res.warehouseId; + if (this.warehouseId == 6) { //娴嬭瘯鏋朵粨搴撳尯ID + this.Test = true; + this.Testlabel = "鍒濆瀵垮懡:"; + this.Testplaceholder = "璇疯緭鍏ュ垵濮嬪鍛�"; + } else if (this.warehouseId == 2) { //娌瑰ⅷ浠撳簱鍖篒D + this.Test = true; + this.Testlabel = "鏁伴噺:"; + this.Testplaceholder = "璇疯緭鍏ユ暟閲�"; + this.Initiallife = 16; + } else if (this.warehouseId == 5) { //杈呮枡浠撳簱鍖篒D + this.address = "8005"; + this.items.push("鍏ュ钩搴�"); + this.items[1] = "鍏ョ珛搴�"; + this.address = "8005"; + } else if (this.warehouseId == 3) { //杈呮枡浠撳簱鍖篒D + this.address = "1011"; + this.addressdisabled = true; + } + this.label = "鍗曟嵁缂栧彿锛�" + this.orderNo; + this.getData(); + }, + methods: { + // voiceSpeech(src) { + // innerAudioContext.src = src; // '../../static/success.mp3'; + // innerAudioContext.play(); + // }, + //wms鍏ュ钩搴� + pksubmit() { + if (this.pkmatInfos.length == 0) { + this.$refs.uToast.show({ + title: "璇锋壂鎻忓唴绠辨爣绛�", + type: 'error' + }) + return; + } + this.$u.post('/api/InboundOrder/WMSInPinKu?warehouseId=' + this.warehouseId, this + .pksns).then(res => { + debugger + if (res.status) { + this.$refs.uToast.show({ + title: "鍏ュ簱鎴愬姛", + type: "success" + }) + this.focus = false; + this.pkmatInfos = []; + this.pksns = []; + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + } + }) + }, + pksnInput() { + this.$nextTick(() => { + if (this.pkmaterSn != "") { + this.focus = false; + var matSn = this.pkmaterSn; + setTimeout(() => { + this.pkmaterSn = ""; + }, 10); + this.$u.post('/api/MaterielInfo/CodeAnalysis?serNum=' + matSn, {}).then((res) => { + if (res.status) { + this.pksns.push(res.data.serialNumber); + this.pkmatInfos.push(res.data); + if (!res.status) { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + // setTimeout(() => { + // this.voiceSpeech('../../static/fail.mp3'); + // }, 100); + return; + } + // setTimeout(() => { + // this.voiceSpeech('../../static/success.mp3'); + // }, 100); + return; + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + // setTimeout(() => { + // this.voiceSpeech('../../static/fail.mp3'); + // }, 100); + } + }) + } + }) + }, + //瑙g洏 + releasebox() { + if (this.value.length == 0) { + this.$refs.uToast.show({ + title: "璇锋壂鐮�", + type: "error" + }) + return; + } + var param; + var matInfo = this.value.split('|'); + if (matInfo.length == 7) { + param = { + MainData: { + "innerCode": this.value + } + } + } else { + param = { + MainData: { + "barcode": this.value + } + } + } + this.$u.post('/api/StockOperate/ReleaseAllBox', param).then(resdt => { + if (resdt.status) { + uni.$showMsg('瑙g洏鎴愬姛!') + this.value = ""; + this.matInfo = []; + this.matTotals = []; + this.value2 = ""; + } else { + this.$refs.uToast.show({ + title: resdt.message, + type: "error" + }) + } + }) + }, + releaseboxInput() { + this.$nextTick(() => { + if (this.value.length == 0) { + return; + } + var matInfo = this.value.split('|'); + this.matInfo = []; + if (matInfo.length == 7) { + this.$u.post('/api/StockOperate/GetStockInfoByInnerCode', { + MainData: { + "innerCode": this.value + } + }).then(res => { + if (res.status) { + this.matInfo = res.data.stockInfo; + this.matTotals = res.data.stockTotal; + this.value2 = res.data.barcode; + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + } + }) + } else { + this.$u.post('/api/StockOperate/GetStockInfoByBarcode', { + MainData: { + "barcode": this.value + } + }).then(res => { + if (res.status) { + this.matInfo = res.data.stockInfo; + this.matTotals = res.data.stockTotal; + this.value2 = res.data.barcode; + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + } + }) + } + }) + }, + + updateFocus() { + debugger + this.$nextTick(() => { + this.materSn = ''; + if (!this.focus) { + this.focus = true; + } + }); + }, + barcodeFocus() { + debugger + this.barcode = ''; + if (this.focus) { + this.focus = false; + } + }, + getData() { + var postData = { + MainData: { + orderNo: this.orderNo + }, + } + this.$u.post('/api/InboundOrderDetail/GetInboundOrderDetails', postData).then((res) => { + if (res.status) { + this.orderInfo = res.data; + if (this.orderInfo.length > 3) { + this.loadVisible = true; + } + } + }) + }, + onClickItem(e) { + this.focus = false; + this.addressFocus = false; + if (this.current !== e.currentIndex) { + this.current = e.currentIndex; + if (this.current == 2) { + this.getData(); + } + } + }, + barcodeInput() { + this.$nextTick(function(x) { + if (this.barcode.length > 0) { + // if (this.barcode.substring(0, 1) == 'A' || this.barcode.substring(0, 2) == 'TP') { + this.focus = true; + // } else { + // this.$refs.uToast.show({ + // title: "鎵爜閿欒,璇锋壂鎻忔墭鐩樼爜", + // type: "error" + // }) + // } + } + }) + }, + snInput() { + this.$nextTick(() => { + if (this.warehouseId == 6 || this.warehouseId == 2 || this.warehouseId == 3) { + if (this.sns.length > 0) { + this.sns = []; + } + } + if (this.materSn != "") { + this.focus = false; + if (this.warehouseId == 11) { + this.materSn = this.materSn.replace(/,SC.*/, ''); + } + if (this.materSn.split(',').length != 6) { + this.materSn = ""; + return; + } + var matSn = this.materSn; + //setTimeout(() => { + this.materSn = ""; + //}, 10); + this.$u.post('/api/MaterielInfo/CodeAnalysis?serNum=' + matSn, {}).then((res) => { + this.Testcheck = false; + if (res.status) { + this.sns.push(res.data.serialNumber); + if (this.warehouseId == 6 || this.warehouseId == 2 || this.warehouseId == + 3) { + if (this.matInfos.length > 0) { + this.matInfos = []; + } + } + this.matInfos.push(res.data); + if (!res.status) { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + // setTimeout(() => { + // this.voiceSpeech('../../static/fail.mp3'); + // }, 100); + return; + } + // setTimeout(() => { + // this.voiceSpeech('../../static/success.mp3'); + // }, 100); + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + // setTimeout(() => { + // this.voiceSpeech('../../static/fail.mp3'); + // }, 100); + } + }) + } + }) + }, + inbound() { + if (this.inboundBarcode == "") { + this.$refs.uToast.show({ + title: "璇锋壂鎻忔墭鐩樻潯鐮�", + type: "error" + }) + return; + } + if (this.address == "") { + this.$refs.uToast.show({ + title: "璇锋壂鎻忓湴鍧�鏉$爜", + type: "error" + }) + return; + } + var postData = { + MainData: { + "barcode": this.inboundBarcode, + "startPoint": this.address, + "warehouseId": this.warehouseId + } + } + this.$u.post('/api/Task/RequestInboundTask', postData).then(res => { + if (res.status) { + this.inboundBarcode = ""; + if (this.warehouseId != 5 && this.warehouseId != 3) this.address = ""; + this.checkStockInfo=null; + setTimeout(() => { + this.addressFocus = false; + this.$refs.uToast.show({ + title: "鎴愬姛", + type: "success" + }) + }, 200); + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + } + }).catch(err => { + this.$refs.uToast.show({ + title: err.message, + type: "error" + }) + }) + }, + inputChangebarcode() { + this.addressFocus = false; + this.$nextTick(function(x) { + if (this.inboundBarcode != '') { + this.addressFocus = true; + } + }) + this.$nextTick(function(x) { + if (this.inboundBarcode != '') { + this.$u.post('/api/Task/InQualityConfirm?palletCode='+this.inboundBarcode, {}).then(res => { + // this.stockInfo = []; + this.checkStockInfo=null; + if (res.status) { + // this.stockInfo = res.data, + this.checkStockInfo = res.data; + } else { + this.inboundBarcode=''; + this.$refs.uToast.show({ + // title: "鏈壘鍒版墭鐩樹俊鎭�", + title: res.message, + type: "error" + }) + } + }) + } + }) + }, + deleteList(res) { + this.matInfos.splice(res, 1); + this.sns.splice(res, 1); + }, + submit() { + if (this.barcode == "") { + this.$refs.uToast.show({ + title: "璇锋壂鎻忔墭鐩樻潯鐮�", + type: 'error' + }) + return; + } + if (this.matInfos.length == 0) { + this.$refs.uToast.show({ + title: "璇锋壂鎻忓唴绠辨爣绛�", + type: 'error' + }) + return; + } + if (this.Test) { + if (!this.Testcheck) { + this.Testcheck = true; + if (this.warehouseId == 2) { + this.$refs.uToast.show({ + title: "璇风‘璁ゆ暟閲�", + type: 'error' + }) + } else if (this.warehouseId == 6) { + this.$refs.uToast.show({ + title: "璇风‘璁ゅ垵濮嬪鍛�", + type: 'error' + }) + } + return; + } + } + if (this.warehouseId == 2) { //娌瑰ⅷ浠撳簱鍖篒D + this.sn = this.sns[0]; + for (var i = 0; i < this.Initiallife - 1; i++) { + this.sns.push(this.sn); + } + } + let url = 'palletCode=' + this.barcode + '&initiallife=' + this.Initiallife + '&warehouseId=' + this + .warehouseId; + + this.$u.post('/api/InboundOrder/ManualMaterielGroup?' + url, this.sns).then(res => { + this.Testcheck = false; + if (res.status) { + this.$refs.uToast.show({ + title: "缁勭洏鎴愬姛", + type: "success" + }) + this.focus = false; + this.barcode = ""; + this.matInfos = []; + this.sns = []; + this.matTotal = []; + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + } + }) + } + } + } +</script> + +<style lang="scss"> + @import '@/common/uni-ui.scss'; + + .content { + display: flex; + height: 150px; + } + + .content-text { + font-size: 14px; + color: #666; + } + + .itemstyle { + margin-top: 30px; + margin-left: 5%; + } + + .headerstyle { + width: 90%; + } +</style> \ No newline at end of file -- Gitblit v1.9.3