From c6fd16350612b8aef7a04bfbebf6ee3c591a88ae Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期三, 22 十月 2025 17:43:44 +0800
Subject: [PATCH] 调整物料下发和取消下发
---
pages/product/WorkshopOrderCancellationIssued/index.vue | 379 +++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 289 insertions(+), 90 deletions(-)
diff --git a/pages/product/WorkshopOrderCancellationIssued/index.vue b/pages/product/WorkshopOrderCancellationIssued/index.vue
index 5637244..af53612 100644
--- a/pages/product/WorkshopOrderCancellationIssued/index.vue
+++ b/pages/product/WorkshopOrderCancellationIssued/index.vue
@@ -1,4 +1,4 @@
-//杞﹂棿璁㈠崟鍙栨秷涓嬪彂
+// 杞﹂棿璁㈠崟鍙栨秷涓嬪彂
<template>
<view class="page">
<view class="packing-registration-bg" />
@@ -17,18 +17,69 @@
<text class="item-one">璁㈠崟鍙�</text>
</view>
<view class="packing-registration-param-item-right">
- <text class="item-one item-two" @click="seachPersonnelNo()">{{
+ <text class="item-one item-two" @click="searchPersonnelNo()">{{
registerInfo.moNo == "" ? "鐐瑰嚮閫夋嫨" : registerInfo.moNo
}}</text>
<u-icon
name="arrow-right"
color="#687792"
size="28"
- @click="seachPersonnelNo()"
+ @click="searchPersonnelNo()"
v-show="registerInfo.moNo == ''"
></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="searchWork()">{{
+ registerInfo.optaskNo == "" ? "鐐瑰嚮閫夋嫨" : registerInfo.optaskNo
+ }}</text>
+ <u-icon
+ name="arrow-right"
+ color="#687792"
+ size="28"
+ @click="searchWork()"
+ 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>
@@ -55,34 +106,18 @@
<view class="content-body">
<view class="row-list">
<view class="_label">
- <view class="_label-name">鎵瑰彿</view>
+ <view class="_label-name">鎵瑰彿锛�</view>
</view>
<view class="_content">
- {{ item.moOn }}
+ {{ item.outBatchNo }}
</view>
</view>
<view class="row-list">
<view class="_label">
- <view class="_label-name">闆朵欢鍙凤細</view>
+ <view class="_label-name">鍙栨秷鏁伴噺锛�</view>
</view>
<view class="_content">
- {{ item.partNo }}
- </view>
- </view>
- <view class="row-list">
- <view class="_label">
- <view class="_label-name">闆朵欢鎻忚堪锛�</view>
- </view>
- <view class="_content">
- {{ item.partName }}
- </view>
- </view>
- <view class="row-list">
- <view class="_label">
- <view class="_label-name">鍙栨秷涓嬪彂鏁伴噺</view>
- </view>
- <view class="_content">
- {{ item.value3 }}
+ {{ item.stockQuantity }}
</view>
</view>
</view>
@@ -98,6 +133,7 @@
:show-confirm-button="true"
@confirm="confirm"
@cancel="cancel"
+
>
<view class="popup-content">
<view class="packing-registration-param">
@@ -107,31 +143,52 @@
<text class="item-one">鎵瑰彿</text>
</view>
<view class="packing-registration-param-item-right">
- <text class="item-one item-two">{{ modalList.moOn }}</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>
+ <text class="item-one">搴撲綅</text>
</view>
<view class="packing-registration-param-item-right">
- <text class="item-one item-two">{{ modalList.partNo }}</text>
+ <picker
+ class="item-one item-two"
+ style="width: 100%; text-align: right"
+ @change="goSearch($event, locationNoList)"
+ :value="locationIndex"
+ :range="locationNoList"
+ range-key="label"
+ >
+ <view>
+ <text
+ :style="{
+ color: locationIndex == null ? '#a5abb4' : '#a5abb4',
+ }"
+ >{{
+ locationIndex == null ? "鐐瑰嚮閫夋嫨" : locationIndex
+ }}</text
+ >
+ </view>
+ </picker>
+ <u-icon
+ v-if="locationIndex == 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>
+ <text class="item-one">鍙栨秷鏁伴噺</text>
</view>
<view class="packing-registration-param-item-right">
- <text class="item-one item-two">{{ modalList.partName }}</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">
- <u-input class="item-one item-two" v-model="modalList.value3" />
+ <u-input
+ class="item-one item-two"
+ v-model="modalList.stockQuantity"
+ />
</view>
</view>
</view>
@@ -147,9 +204,9 @@
components: {
scan,
},
+
data() {
return {
- showModal: false,
background: {
backgroundImage: `url(${content_bg})`,
backgroundAttachment: "fixed",
@@ -160,98 +217,240 @@
fontSize: "32rpx",
whiteSpace: "nowrap",
},
- //寮圭獥鍒楄〃
+ // 寮圭獥鍒楄〃
modalList: {
- partName: "",
- partNo: "",
- moNo: "",
- num: "",
+ // locationNoName: "",
+ // locationNo: "",
+ // suppliedQuantity: "",
+ // outBatchNo: "",
},
+ // 涓婚〉闈㈠垪琛�
registerInfo: {
+ operationTaskId: "",
+ id: "",
moNo: "",
+ optaskNo: "",
+ workstationId: "",
},
+ // 鍙栨秷涓嬪彂璁板綍鍒楄〃
hasScanSnList: [],
codeInfoId: "",
+ showModal: false,
+ machineIndex: null,
+ machineList: [],
+ locationNoList: [],
+ locationIndex: null,
};
},
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");
- //鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲�
- console.log("鎵爜缁撴灉锛�", data.code);
+ // 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) {
// 鎵弿鎶ュ伐鍗曚簩缁寸爜
- that.scanHandle(data.code);
+ that.scanHandle(codeInfo);
that.$forceUpdate();
- that.getHandelList();
}
}
});
},
methods: {
- getHandelList() {
- this.$u.api.workReporting
- .getProductMainV1({
- current: 1,
- size: -1,
- id: this.codeInfoId,
- })
- .then((res) => {
- this.hasScanSnList = res.data.productOutputList;
- });
+ // 搴撲綅閫夋嫨
+ goSearch(e, storage, code) {
+ if (storage.length <= 0) {
+ this.locationIndex = null;
+ return;
+ }
+ this.locationIndex = e.target.label;
+ this.modalList.locationNo = storage[this.locationIndex].label;
+ this.modalList.locationId = storage[this.locationIndex].label;
},
- // 鎵爜鍚庢暟鎹洖鏄�
- scanHandle(val) {
- let { moNo, partNo, partName } = val;
- this.modalList.moNo = moNo;
- this.modalList.partNo = partNo;
- this.modalList.partName = partName;
-
- this.showModal = true;
+ //鏌ヨ搴撲綅
+ getHandymanItem(obj) {
+ this.locationNoList = [];
+ this.$u.api.WorkshopOrderCancellationIssued.cancelDTAOfWorkApplicationPDA(
+ {
+ workstationId: this.registerInfo.workstationId,
+ }
+ ).then((res) => {
+ this.locationNoList = [];
+ this.locationIndex = null;
+ this.modalList.locationNo = "";
+ if (res.code === 0 && res.data.length > 0) {
+ res.data.forEach((item) => {
+ const obj = Object.assign({
+ label: item.locName,
+ value: item.id,
+ });
+ this.locationNoList.push(obj);
+ });
+ }
+ this.getReturnInfo(obj);
+ });
},
- // 鐐瑰嚮纭鍚庤幏鍙栦笅鍙戣褰�
+ //鏈哄彴
+ 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;
+ },
+ // 鐐瑰嚮纭鍚庤幏鍙栨秷涓嬪彂璁板綍
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.stockQuantity) {
+ this.$u.toast("璇疯緭鍏ュ彇娑堟暟閲�");
+ this.$refs.uModal.clearLoading(); // 娓呴櫎鍔犺浇鐘舵��
+ return;
+ }
// 澶勭悊纭閫昏緫
- this.$u.api.workReporting._(this.modalList).then((res) => {
+ this.$u.api.WorkshopOrderCancellationIssued.rejectPDA(
+ this.modalList
+ ).then((res) => {
console.log("res", res);
- this.showModal = false;
-
- this.getHandelList();
+ if (res.code === 0) {
+ this.$u.toast("鎻愪氦鎴愬姛");
+ this.showModal = false;
+ const obj = {
+ stockQuantity: this.modalList.stockQuantity,
+ outBatchNo: this.modalList.outBatchNo,
+ };
+ this.hasScanSnList.push(obj);
+ }
});
},
// 妯℃�佹鍙栨秷
cancel() {
this.showModal = false; // 鍏抽棴寮圭獥
},
+ // 宸ュ崟鍥炴樉
+ workNo(val) {
+ this.machineList = [];
+ this.machineIndex = null;
+ this.registerInfo.workstationId = "";
+ 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 = [];
+ },
+ // 璁㈠崟鍙峰洖鏄�
setNo(val) {
console.log("11111", val);
- this.registerInfo.moNo = val.moNo;
+ (this.registerInfo = {
+ operationTaskId: "",
+ id: val.id,
+ moNo: val.moNo,
+ optaskNo: "",
+ workstationId: "",
+ }),
+ (this.machineList = []);
+ this.machineIndex = null;
+ this.hasScanSnList = [];
},
//璁㈠崟鍙�
- seachPersonnelNo() {
+ searchPersonnelNo() {
console.log("杞﹂棿璁㈠崟鍙�");
uni.navigateTo({
url: "/pages/product/report/orderList",
});
},
+ //宸ュ崟
+ searchWork() {
+ if (this.registerInfo.moNo == "") {
+ this.$u.toast("璇烽�夋嫨璁㈠崟鍙�");
+ return;
+ }
+ console.log("瀛愪欢");
+ // 浣跨敤uni.navigateTo鏂规硶璺宠浆锛屽苟閫氳繃queryParams浼犻�掑弬鏁�
+ uni.navigateTo({
+ url:
+ "/pages/product/WorkshopOrderIssued/WorkOrderList?id=" +
+ encodeURIComponent(JSON.stringify(this.registerInfo.id)),
+ });
+ },
+ // 鎵爜鍚庢暟鎹洖鏄�
+ scanHandle(val) {
+ const { BN } = val;
+ const { id } = this.registerInfo;
+ const obj = {
+ outBatchNo: BN,
+ moId: id,
+ };
+ this.getReturnInfo(obj);
+ // this.$u.api.WorkshopOrderCancellationIssued.checkReturnPartPDA(obj).then(
+ // (res) => {
+ // console.log("res", res);
+ // if (res.code === 0) {
+ // this.getHandymanItem(obj);
+ // }
+ // }
+ // );
+ },
+ // 鑾峰彇鍩烘湰淇℃伅
+ getReturnInfo(obj) {
+ this.$u.api.WorkshopOrderCancellationIssued.getReturnInfo(obj).then(
+ (res) => {
+ console.log("res1", res);
+ if (res.code === 0) {
+ this.locationIndex = res.data.locationNo;
+ res.data.outBatchNo = res.data.ifsBatchNo;
+ console.log("1", res.data);
+ 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");
@@ -284,7 +483,7 @@
}
.packing-registration-param-view {
- height: 180rpx;
+ height: 200rpx;
background-color: #fff;
border-radius: 10rpx;
padding: 0rpx 23rpx;
@@ -300,8 +499,8 @@
.packing-registration-param-item-left {
.item-one {
- font-size: 30rpx;
- color: #666666;
+ font-size: small;
+ color: #232222;
}
}
@@ -311,12 +510,12 @@
.item-one {
font-size: 30rpx;
- color: #333333;
+ color: #060505;
margin-right: 6rpx;
}
.item-two {
- font-size: 30rpx;
+ font-size: small;
color: #a6b4cc;
margin-right: 6rpx;
}
@@ -336,7 +535,7 @@
}
.wrap .packing-registration-scroll-list {
- height: calc(100vh - var(--window-top) - var(--window-bottom) - 400rpx);
+ height: calc(100vh - var(--window-top) - var(--window-bottom) - 550rpx);
width: 100%;
}
@@ -401,7 +600,7 @@
._label-name {
margin-left: 11rpx;
- font-size: 26rpx;
+ font-size: small;
font-weight: 500;
color: #666666;
}
@@ -411,7 +610,7 @@
flex: 1.5;
text-align: right;
color: #909399;
- font-size: 24rpx;
+ font-size: small;
}
.row-list .s1 {
--
Gitblit v1.9.3