From 0ea4a390d09679425cf3ad217a38a9e717641c95 Mon Sep 17 00:00:00 2001 From: wankeda <Administrator@DESKTOP-HAU3ST3> Date: 星期一, 14 四月 2025 16:23:12 +0800 Subject: [PATCH] 增加串行库位任务下发机制防呆 --- 代码管理/AGVjiaoliaoPDA/pages/materielGroup/OutboundTask.vue | 432 +++++++++++++++++++++-------------------------------- 1 files changed, 169 insertions(+), 263 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/AGVjiaoliaoPDA/pages/materielGroup/OutboundTask.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/AGVjiaoliaoPDA/pages/materielGroup/OutboundTask.vue" index 7276309..e27abef 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/AGVjiaoliaoPDA/pages/materielGroup/OutboundTask.vue" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/AGVjiaoliaoPDA/pages/materielGroup/OutboundTask.vue" @@ -1,286 +1,192 @@ -<template> - <view> - <uni-segmented-control :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="label"> - </uni-forms-item> - <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> - <checkbox checked="check">鏄惁婊$洏</checkbox> - </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 in matTotal" :key="item.matCode"> - <template v-slot:body> - <view class="uni-list-box"> - <view class="uni-content"> - <view class="uni-title-sub uni-ellipsis-2">鐗╂枡缂栫爜锛歿{item.matCode}}</view> - <view class="uni-title-sub uni-ellipsis-2">鏁伴噺锛歿{item.matQuantity}}</view> - </view> - </view> - </template> - </uni-list-item> - <uni-list-item direction="column" v-for="(item,index) in matInfos" :key="item.sn"> - <template v-slot:body> - <view class="uni-list-box"> - <uni-icons type="trash" size="22" style="position: absolute;right: 5%;" - @click="deleteList(item.sn)"> - </uni-icons> - <view class="uni-content"> - <view class="uni-title-sub uni-ellipsis-2">璁㈠崟鍙凤細{{item.orderNo}}</view> - <view class="uni-note">鐗╂枡缂栫爜锛歿{item.matCode}}</view> - <view class="uni-note">鏁伴噺锛歿{item.matQty}}</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" v-model="stationcode" placeholder="璇锋壂鐬勭紦瀛樻灦缂栧彿" ref='midInput':focus="addressFocus"/> - </uni-forms-item> -<!-- <uni-forms-item label="鎵樼洏鏉$爜"> - <uni-easyinput type="text" :focus="!addressFocus" v-model="inboundBarcode" - placeholder="璇锋壂鎻忔墭鐩樻潯鐮�" ref='midInput' @input="inputChangebarcode" /> - </uni-forms-item> --> - <uni-forms-item label="鎵樼洏缂栧彿"> - <uni-easyinput type="text" v-model="PalletCode" 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> + <template> + <view> + <uni-segmented-control :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="120"> + <uni-forms-item label="缂撳瓨鏋剁紪鍙�"> + <uni-easyinput type="text" :focus="!addressFocus" v-model="stationcode" + placeholder="璇锋壂鐬勭紦瀛樻灦缂栧彿" ref='midInput' @input="inputChangebarcode" /> + </uni-forms-item> + <uni-forms-item label="鐗╂枡绫诲瀷"> + <uni-easyinput type="text" :focus="!addressFocus" v-model="PalletCode" + placeholder="璇锋壂鎻忕墿鏂欑被鍨�" ref='midInput' @input="inputChangebarcode" /> + </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> - </view> - <u-toast ref="uToast" /> - </view> -</template> + <u-toast ref="uToast" /> + </view> + </template> -<script> - const innerAudioContext = uni.createInnerAudioContext(); - export default { - data() { - return { - // items: ['缁勭洏', '鍏ュ簱', '鍗曟嵁淇℃伅', '瑙g洏'], - items: ['鍑哄簱'], - current: 0, - matTotal: [], - matInfos: [], - orderNo: "", - label: "", - orderDetail: [], - focus: false, - barcode: "", - materSn: "", - sns: [], - addressFocus: false, - materialtype:"", - stationcode: "", - address: "", - check: true, - value: "", - matInfo: [], - value2: "", - matTotals: [] - } - }, - onShow() {}, - onLoad(res) { - this.focus = false; - this.addressFocus = false; - this.orderNo = res.orderNo; - this.label = "鍗曟嵁缂栧彿锛�" + this.orderNo; - this.getData(); - }, - methods: { - voiceSpeech(src) { - innerAudioContext.src = src; // '../../static/success.mp3'; - innerAudioContext.play(); - }, - - updateFocus() { - this.$nextTick(() => { - this.materSn = ''; - if (!this.focus) { - this.focus = true; - } - }); - }, - barcodeFocus() { - this.barcode = ''; - if (this.focus) { - this.focus = false; + <script> + const innerAudioContext = uni.createInnerAudioContext(); + export default { + data() { + return { + items: ['鍑哄簱'], + current: 0, + matTotal: [], + matInfos: [], + orderNo: "", + label: "", + orderDetail: [], + focus: false, + barcode: "", + materSn: "", + sns: [], + addressFocus: false, + materialtype: "", + stationcode: "", + address: "", + check: true, + value: "", + matInfo: [], + value2: "", + matTotals: [], + rangs: [] // 瀛樺偍鐗╂枡绫诲瀷鏁版嵁 } }, - getData() { - var postData = this.orderNo - - this.$u.post('/api/InboundOrder/GetInboundOrderDetail', postData).then((res) => { - if (res.status) { - this.orderDetail = res.data; - if (this.orderDetail.length > 3) { - this.loadVisible = true; - } - } - }) + onShow() { + this.getMaterialTypes(); // 椤甸潰鏄剧ず鏃惰幏鍙栫墿鏂欑被鍨嬫暟鎹� }, - onClickItem(e) { + onLoad(res) { this.focus = false; this.addressFocus = false; - if (this.current !== e.currentIndex) { - this.current = e.currentIndex; - if (this.current == 2) { - this.getData(); - } - } + this.orderNo = res.orderNo; + this.label = "鍗曟嵁缂栧彿锛�" + this.orderNo; + this.getData(); }, - barcodeInput() { - this.$nextTick(function(x) { - if (this.barcode.length > 0) { - this.focus = true; - } - }) - }, - inbound() { - var postData = { - MainData: { - "stationcode": this.stationcode, - "PalletCode": this.PalletCode, - } - } - this.$u.post('/api/Task/OutboundTasks', postData).then(res => { - if (res.status) { - uni.$showMsg("浠诲姟娣诲姞鎴愬姛"); - this.stationcode = ""; - this.PalletCode = ""; - // setTimeout(() => { - // this.materialtype = false; - // }, 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.stationcode != '') { - this.addressFocus = true; - } - }) - }, - deleteList(res) { - var sn = ''; - this.matInfos.map((item, index) => { - if (item.sn == res) { - this.matInfos.splice(index, 1); - sn = item.sn; - var tmp = this.matTotal.find(x => x.matCode == item.matCode); - if (tmp) { - tmp.matQuantity -= parseInt(item.matQty); - } else { + methods: { + voiceSpeech(src) { + innerAudioContext.src = src; + innerAudioContext.play(); + }, + updateFocus() { + this.$nextTick(() => { + this.materSn = ''; + if (!this.focus) { + this.focus = true; + } + }); + }, + barcodeFocus() { + this.barcode = ''; + if (this.focus) { + this.focus = false; + } + }, + getData() { + var postData = this.orderNo; + + this.$u.post('/api/InboundOrder/GetInboundOrderDetail', postData).then((res) => { + if (res.status) { + this.orderDetail = res.data; + if (this.orderDetail.length > 3) { + this.loadVisible = true; + } + } + }) + }, + getMaterialTypes() { + this.$u.post('/api/MaterielInfo/GetMaterialTypes').then((res) => { + if (res.status) { + console.log(res.data); + this.rangs = res.data.map(item => { + return { + value: item.number, // 鍋囪鍚庣杩斿洖鐨勬暟鎹腑鏈� id 鍜� name 瀛楁 + text: item.number + }; + }); + } + }).catch(err => { + this.$refs.uToast.show({ + title: err.message, + type: "error" + }); + }); + }, + onClickItem(e) { + this.focus = false; + this.addressFocus = false; + if (this.current !== e.currentIndex) { + this.current = e.currentIndex; + if (this.current == 2) { + this.getData(); } } - }) - this.sns.map((item, index) => { - if (item == res) { - this.sns.splice(index, 1); + }, + barcodeInput() { + this.$nextTick(function(x) { + if (this.barcode.length > 0) { + this.focus = true; + } + }) + }, + inbound() { + var postData = { + MainData: { + "stationcode": this.stationcode, + "PalletCode": this.PalletCode, + } } - }) - }, - submit() { - if (this.barcode == "") { - this.$refs.uToast.show({ - title: "璇锋壂鎻忔墭鐩樻潯鐮�", - type: 'error' - }) - return; - } - if (this.sns.length == 0) { - this.$refs.uToast.show({ - title: "璇锋壂鎻忓唴绠辨爣绛�", - type: 'error' - }) - return; - } - this.$u.post('/api/Bill_group_stock/PDA_ScanInStock', { - MainData: { - "pallet_barcode": this.barcode, - "orderNo": this.orderNo, - "isFull": this.check - }, - DelKeys: this.sns - }).then(res => { - if (res.status) { + this.$u.post('/api/Task/OutboundTasks', postData).then(res => { + if (res.status) { + uni.$showMsg("浠诲姟娣诲姞鎴愬姛"); + this.stationcode = ""; // 娓呯┖缂撳瓨鏋剁紪鍙� + this.PalletCode = ""; // 娓呯┖鐗╂枡绫诲瀷 + } else { + this.$refs.uToast.show({ + title: res.message, + type: "error" + }) + } + }).catch(err => { 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, + title: err.message, type: "error" }) - } - }) + }) + }, + inputChangebarcode() { + this.addressFocus = false; + this.$nextTick(function(x) { + if (this.stationcode != '') { + this.addressFocus = true; + } + }) + }, } } - } -</script> + </script> -<style lang="scss"> - @import '@/common/uni-ui.scss'; + <style lang="scss"> + @import '@/common/uni-ui.scss'; - .content { - display: flex; - height: 150px; - } + .content { + display: flex; + height: 150px; + } - .content-text { - font-size: 14px; - color: #666; - } + .content-text { + font-size: 14px; + color: #666; + } - .itemstyle { - margin-top: 30px; - margin-left: 5%; - } + .itemstyle { + margin-top: 30px; + margin-left: 5%; + } - .headerstyle { - width: 90%; - } -</style> \ No newline at end of file + .headerstyle { + width: 90%; + } + </style> \ No newline at end of file -- Gitblit v1.9.3