From 13862edbc722e99f15a2661b72e09a528c7f485a Mon Sep 17 00:00:00 2001 From: yyb <995253665@qq.com> Date: 星期一, 07 七月 2025 17:14:38 +0800 Subject: [PATCH] 车间订单下发确认下发接口逻辑修改 --- pages/product/WorkshopOrderIssued/index.vue | 297 ++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 244 insertions(+), 53 deletions(-) diff --git a/pages/product/WorkshopOrderIssued/index.vue b/pages/product/WorkshopOrderIssued/index.vue index 5f57b50..d9f2b5b 100644 --- a/pages/product/WorkshopOrderIssued/index.vue +++ b/pages/product/WorkshopOrderIssued/index.vue @@ -31,18 +31,69 @@ </view> <view class="packing-registration-param-item param-extra"> <view class="packing-registration-param-item-left"> + <text class="item-one">宸ュ崟</text> + </view> + <view class="packing-registration-param-item-right"> + <text class="item-one item-two" @click="seachWork()">{{ + registerInfo.optaskNo == "" ? "鐐瑰嚮閫夋嫨" : registerInfo.optaskNo + }}</text> + <u-icon + name="arrow-right" + color="#687792" + size="28" + @click="seachWork()" + v-show="registerInfo.optaskNo == ''" + ></u-icon> + </view> + </view> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> + <text class="item-one">鏈哄彴</text> + </view> + <view class="packing-registration-param-item-right"> + <picker + class="item-one item-two" + style="width: 100%; text-align: right" + @change="machineChange($event, machineList)" + :value="machineIndex" + :range="machineList" + range-key="label" + > + <view> + <text + :style="{ + color: machineIndex == null ? '#a5abb4' : '#a5abb4', + }" + >{{ + machineIndex == null + ? "鐐瑰嚮閫夋嫨" + : machineList[machineIndex].label + }}</text + > + </view> + </picker> + <u-icon + v-if="machineIndex == null" + name="arrow-right" + color="#687792" + size="28" + ></u-icon> + </view> + </view> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> <text class="item-one">瀛愪欢</text> </view> <view class="packing-registration-param-item-right"> <text class="item-one item-two" @click="seachComp()">{{ - registerInfo.value2 == "" ? "鐐瑰嚮閫夋嫨" : registerInfo.value2 + registerInfo.partNo == "" ? "鐐瑰嚮閫夋嫨" : registerInfo.partNo }}</text> <u-icon name="arrow-right" color="#687792" size="28" @click="seachComp()" - v-show="registerInfo.value2 == ''" + v-show="registerInfo.partNo == ''" ></u-icon> </view> </view> @@ -51,7 +102,7 @@ <text class="item-one">闆朵欢鎻忚堪</text> </view> <view class="packing-registration-param-item-right"> - <text class="item-one item-two">{{ registerInfo.value3 }}</text> + <text class="item-one item-two">{{ registerInfo.partName }}</text> </view> </view> <view class="packing-registration-param-item param-extra"> @@ -83,7 +134,7 @@ <view class="_label-name">鎵瑰彿锛�</view> </view> <view class="_content"> - {{ item.value0 }} + {{ item.outBatchNo }} </view> </view> <view class="row-list"> @@ -91,7 +142,7 @@ <view class="_label-name">涓嬪彂鏁伴噺锛�</view> </view> <view class="_content"> - {{ item.value1 }} + {{ item.suppliedQuantity }} </view> </view> </view> @@ -116,7 +167,19 @@ <text class="item-one">鎵瑰彿</text> </view> <view class="packing-registration-param-item-right"> - <text class="item-one item-two">{{ modalList.moNO }}</text> + <text class="item-one item-two">{{ + modalList.outBatchNo + }}</text> + </view> + </view> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> + <text class="item-one">搴撲綅</text> + </view> + <view class="packing-registration-param-item-right"> + <text class="item-one item-two">{{ + modalList.locationNo + }}</text> </view> </view> <view class="packing-registration-param-item param-extra"> @@ -124,7 +187,10 @@ <text class="item-one">涓嬪彂鏁伴噺</text> </view> <view class="packing-registration-param-item-right"> - <u-input class="item-one item-two" v-model="modalList.value1" /> + <u-input + class="item-one item-two" + v-model="modalList.suppliedQuantity" + /> </view> </view> </view> @@ -154,84 +220,172 @@ whiteSpace: "nowrap", }, // 寮圭獥鍒楄〃 - modalList: { - partNo: "", - moNo: "", - }, + modalList: {}, // 涓婚〉闈㈠垪琛� registerInfo: { + operationTaskId: "", + id: "", moNo: "", - value2: "", - value3: "", + partNo: "", + partName: "", + optaskNo: "", + workstationId: "", }, // 涓嬪彂璁板綍鍒楄〃 hasScanSnList: [], codeInfoId: "", + showModal: false, + machineIndex: null, + machineList: [], }; }, onShow() { let that = this; uni.$off("scan"); // 姣忔杩涙潵鍏� 绉婚櫎鍏ㄥ眬鑷畾涔変簨浠剁洃鍚櫒 - if (registerInfo.moNO == null) { - uni.showToast({ - icon: "none", - title: "璇峰厛閫夋嫨瀛愪欢锛�", - duration: 2 * 1000, - }); - return; - } uni.$on("scan", function (data) { console.log("onscan"); + if (that.registerInfo.partNo == "") { + uni.showToast({ + icon: "none", + title: "璇峰厛閫夋嫨瀛愪欢锛�", + duration: 2 * 1000, + }); + return; + } + if (that.registerInfo.workstationId == "") { + uni.showToast({ + icon: "none", + title: "璇峰厛閫夋嫨鏈哄彴锛�", + duration: 2 * 1000, + }); + return; + } if (data.code) { + //鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲� + console.log("鎵爜缁撴灉锛�", data.code); let codeInfo = JSON.parse(data.code); - this.codeInfoId = codeInfo.id; - if (codeInfo.moOn) { + that.codeInfoId = codeInfo.id; + if (codeInfo.partNo) { + if (that.registerInfo.partNo != codeInfo.partNo) { + this.$u.toast("褰撳墠瀛愪欢鍜屾壂鐮佸瓙浠朵笉涓�鑷达紒"); + return; + } // 鎵弿鎶ュ伐鍗曚簩缁寸爜 - that.scanHandle(data.code); + that.scanHandle(codeInfo); that.$forceUpdate(); - that.getHandelList(); + // that.getHandelList(); } } - //鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲� - console.log("鎵爜缁撴灉锛�", data.code); }); }, methods: { - getHandelList() { - this.$u.api.workReporting - .getProductMainV1({ - current: 1, - size: -1, - id: this.codeInfoId, - }) - .then((res) => { - this.hasScanSnList = res.data.productOutputList; - }); + //鏈哄彴 + machineChange(e, storage, code) { + this.hasScanSnList = []; + if (storage.length <= 0) { + this.machineIndex = null; + return; + } + this.machineIndex = e.target.value; + this.registerInfo.workstationId = storage[this.machineIndex].value; }, + // getHandelList() { + // this.$u.api.workReporting + // .getProductMainV1({ + // current: 1, + // size: -1, + // id: this.codeInfoId, + // }) + // .then((res) => { + // this.hasScanSnList = res.data.productOutputList; + // }); + // }, // 鐐瑰嚮纭鍚庤幏鍙栦笅鍙戣褰� confirm() { + if (!this.modalList.outBatchNo) { + this.$u.toast("鎵瑰彿涓虹┖涓嶈兘鎻愪氦"); + this.$refs.uModal.clearLoading(); // 娓呴櫎鍔犺浇鐘舵�� + return; + } + if (!this.modalList.locationNo) { + this.$u.toast("搴撲綅涓虹┖涓嶈兘鎻愪氦"); + this.$refs.uModal.clearLoading(); // 娓呴櫎鍔犺浇鐘舵�� + return; + } + if (!this.modalList.suppliedQuantity) { + this.$u.toast("璇疯緭鍏ュ彇娑堜笅鍙戞暟閲�"); + this.$refs.uModal.clearLoading(); // 娓呴櫎鍔犺浇鐘舵�� + return; + } // 澶勭悊纭閫昏緫 - this.$u.api.workReporting._(this.modalList).then((res) => { - console.log("res", res); - this.showModal = false; - - this.getHandelList(); + this.$u.api.WorkshopOrderIssued.feeding({ + feedingFrom: "stocker", + operationTaskId: this.registerInfo.operationTaskId, + feeds: [ + { + ...this.modalList, + }, + ], + }).then((res) => { + console.log("res", res); + if (res.code === 0) { + this.$u.toast("鎻愪氦鎴愬姛"); + this.showModal = false; + const obj = { + suppliedQuantity: this.modalList.suppliedQuantity, + outBatchNo: this.modalList.outBatchNo, + }; + this.hasScanSnList.push(obj); + } }); }, // 妯℃�佹鍙栨秷 cancel() { this.showModal = false; // 鍏抽棴寮圭獥 }, + // 宸ュ崟鍥炴樉 + workNo(val) { + this.machineList = []; + this.machineIndex = null; + this.registerInfo.workstationId = ""; + this.registerInfo.partName = ""; + this.registerInfo.partNo = ""; + this.$u.api.WorkshopOrderIssued.selWorkStation(val).then((res) => { + console.log("111", res); + if (res.code === 0 && res.data.length > 0) { + res.data.forEach((i) => { + const obj = Object.assign({ + label: i.name, + value: i.id, + }); + this.machineList.push(obj); + }); + } + }); + this.registerInfo.optaskNo = val.optaskNo; + this.registerInfo.operationTaskId = val.id; + this.hasScanSnList = []; + }, // 瀛愪欢鍥炴樉 compNo(val) { - this.registerInfo.value2 = val.value2; - this.registerInfo.value3 = val.value2; + this.registerInfo.partNo = val.partNo; + this.registerInfo.partName = val.partName; }, // 璁㈠崟鍙峰洖鏄� setNo(val) { console.log("11111", val); - this.registerInfo.moNo = val.moNo; - this.registerInfo.value2 = val.value2; + (this.registerInfo = { + operationTaskId: "", + id: val.id, + moNo: val.moNo, + partNo: "", + partName: "", + optaskNo: "", + workstationId: "", + }), + (this.machineList = []); + this.machineIndex = null; + this.hasScanSnList = []; }, //璁㈠崟鍙� seachPersonnelNo() { @@ -242,25 +396,62 @@ }, //瀛愪欢 seachComp() { - if (this.registerInfo.moNO == null) { + if (this.registerInfo.optaskNo == "") { + this.$u.toast("璇烽�夋嫨宸ュ崟鍙�"); + return; + } + console.log("瀛愪欢"); + // 浣跨敤uni.navigateTo鏂规硶璺宠浆锛屽苟閫氳繃queryParams浼犻�掑弬鏁� + uni.navigateTo({ + url: + "/pages/product/WorkshopOrderIssued/comp?operationTaskId=" + + encodeURIComponent(JSON.stringify(this.registerInfo.operationTaskId)), + }); + }, + //宸ュ崟 + seachWork() { + if (this.registerInfo.moNo == "") { this.$u.toast("璇烽�夋嫨璁㈠崟鍙�"); return; } console.log("瀛愪欢"); + // 浣跨敤uni.navigateTo鏂规硶璺宠浆锛屽苟閫氳繃queryParams浼犻�掑弬鏁� uni.navigateTo({ - url: "/pages/product/WorkshopOrderIssued/comp", + url: + "/pages/product/WorkshopOrderIssued/WorkOrderList?id=" + + encodeURIComponent(JSON.stringify(this.registerInfo.id)), }); }, // 鎵爜鍚庢暟鎹洖鏄� scanHandle(val) { - let { moNo } = val; - this.modalList.moNo = moNo; - this.showModal = true; + const { outBatchNo } = val; + const { workstationId, operationTaskId } = this.registerInfo; + const obj = { + outBatchNo: outBatchNo, + workstationId: workstationId, + operationTaskId: operationTaskId, + }; + this.$u.api.WorkshopOrderIssued.checkRawPartPDA(obj).then((res) => { + console.log("res", res); + if (res.code === 0) { + (res.data.workstationId = workstationId), (this.modalList = res.data); + this.showModal = true; + } + }); }, }, }; </script> <style lang="scss" scoped> +.popup-content { + width: 600rpx; + height: 350rpx; + background-color: #fff; + border-radius: 8px; + z-index: 10; + /* 纭繚鍐呭鍦ㄨ挋鐗堜箣涓� */ +} + .packing-registration-bg { background-color: #f6f9ff; background-image: url("~@/static/custom/packing/backBg.png"); @@ -293,7 +484,7 @@ } .packing-registration-param-view { - height: 345rpx; + height: 550rpx; background-color: #fff; border-radius: 10rpx; padding: 0rpx 23rpx; @@ -320,7 +511,7 @@ .item-one { font-size: 30rpx; - color: #333333; + color: #060505; margin-right: 6rpx; } -- Gitblit v1.9.3