From a14c5ce07d20e9f28058f6942dbc00197fac47f1 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期四, 13 八月 2026 10:19:19 +0800
Subject: [PATCH] fix: 领料功能修改,移除订单领料,添加工序领料功能,支持按工序查询物料与已领料记录
---
src/views/productionManagement/workOrderManagement/index.vue | 47 +++++++++++++++++++++++++++--------------------
1 files changed, 27 insertions(+), 20 deletions(-)
diff --git a/src/views/productionManagement/workOrderManagement/index.vue b/src/views/productionManagement/workOrderManagement/index.vue
index b2ac432..16731c9 100644
--- a/src/views/productionManagement/workOrderManagement/index.vue
+++ b/src/views/productionManagement/workOrderManagement/index.vue
@@ -270,8 +270,8 @@
productWorkOrderPage,
addProductMain,
downProductWorkOrder,
+ checkWorkOrderMaterialPicked,
} from "@/api/productionManagement/workOrder.js";
- import { listMaterialPickingDetail } from "@/api/productionManagement/productionOrder.js";
import { findProcessParamListOrder } from "@/api/productionManagement/productProcessRoute.js";
import { getUserProfile, userListNoPageByTenantId } from "@/api/system/user.js";
import { getDicts } from "@/api/system/dict/data";
@@ -376,12 +376,13 @@
openWorkOrderFiles(row);
},
},
- // {
- // name: "鐗╂枡",
- // clickFun: row => {
- // openMaterialDialog(row);
- // },
- // },
+ {
+ name: "棰嗘枡",
+ clickFun: row => {
+ openMaterialDialog(row);
+ },
+ showHide: row => !row.endOrder,
+ },
{
name: "鎶ュ伐",
clickFun: row => {
@@ -643,20 +644,26 @@
fileDialogVisible.value = true;
};
- const showReportDialog = async row => {
- if (row.productionOrderId) {
- try {
- const res = await listMaterialPickingDetail(row.productionOrderId);
- const records = Array.isArray(res.data)
- ? res.data
- : res.data?.records || [];
- if (res.code === 200 && records.length === 0) {
- proxy.$modal.msgError("鏈鏂欐棤娉曟姤宸�");
- return;
- }
- } catch (error) {
- console.error("鏌ヨ棰嗘枡璇︽儏澶辫触:", error);
+ // 浠呯敤浜庡嵆鏃舵彁绀猴細鎶ュ伐鏉冮檺鏈�缁堢敱鍚庣鍦ㄦ姤宸ヤ簨鍔″唴鏍¢獙褰撳墠宸ュ簭鏄惁宸查鏂�
+ const checkCurrentProcessPicked = async row => {
+ try {
+ const res = await checkWorkOrderMaterialPicked(row.id);
+ if (res.code === 200 && res.data !== true) {
+ proxy.$modal.msgError("褰撳墠宸ュ簭鏈鏂欙紝鏃犳硶鎶ュ伐");
+ return false;
}
+ return true;
+ } catch (error) {
+ console.error("鏌ヨ褰撳墠宸ュ簭棰嗘枡澶辫触:", error);
+ proxy.$modal.msgError("鏌ヨ褰撳墠宸ュ簭棰嗘枡澶辫触");
+ return false;
+ }
+ };
+
+ const showReportDialog = async row => {
+ const picked = await checkCurrentProcessPicked(row);
+ if (!picked) {
+ return;
}
currentReportRowData.value = row;
reportForm.planQuantity = subtractQuantity(
--
Gitblit v1.9.3