From a1569c557f684e2c77d6c0dabd396d44226ec1f7 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期二, 02 六月 2026 17:05:40 +0800
Subject: [PATCH] feat: 班组成员选择只能在排产人员以及工序人员组里面选择
---
src/views/productionManagement/workOrder/index.vue | 34 ++++++++++++++++++++++++++++------
1 files changed, 28 insertions(+), 6 deletions(-)
diff --git a/src/views/productionManagement/workOrder/index.vue b/src/views/productionManagement/workOrder/index.vue
index 4ee6798..3c9f23f 100644
--- a/src/views/productionManagement/workOrder/index.vue
+++ b/src/views/productionManagement/workOrder/index.vue
@@ -543,6 +543,23 @@
return ids.includes(uid);
};
+// 鍒ゆ柇褰撳墠鐢ㄦ埛鏄惁鍦ㄥ伐搴忔姤宸ヤ汉涓�
+const isCurrentUserInProcessUserIds = (row) => {
+ const uid = String(currentUserId.value || "");
+ if (!uid) return false;
+
+ const ids = normalizeArray(row?.processUserIds)
+ .map(id => String(id))
+ .filter(Boolean);
+
+ return ids.includes(uid);
+};
+
+// 鍒ゆ柇褰撳墠鐢ㄦ埛鏄惁鍙互鎶ュ伐锛堝伐鍗曟姤宸ヤ汉 鎴� 宸ュ簭鎶ュ伐浜猴級
+const canCurrentUserReport = (row) => {
+ return isCurrentUserInUserIds(row) || isCurrentUserInProcessUserIds(row);
+};
+
const canOperateByReportWorker = computed(() => {
return (row) => isCurrentUserReportWorker(row);
});
@@ -1071,9 +1088,9 @@
clickFun: row => {
showReportDialog(row);
},
- // // 鐢ㄦ埛褰撳墠id
+ // 鐢ㄦ埛褰撳墠id鍦ㄥ伐鍗曟姤宸ヤ汉鎴栧伐搴忔姤宸ヤ汉涓�
disabled: row => row.completeQuantity >= row.planQuantity ||
- !isCurrentUserInUserIds(row) || row.hasUnreportedMachine
+ !canCurrentUserReport(row) || row.hasUnreportedMachine
},
{
name: "鐢熶骇鎺掍骇",
@@ -1471,13 +1488,18 @@
reportForm.addQty = 0;
reportForm.userIds = row.userIds || [];
- const ids = (row.userIds || "")
- .split(",")
- .map(id => id.trim())
+ // 鍚堝苟宸ュ崟鎶ュ伐浜哄拰宸ュ簭鎶ュ伐浜猴紝鍘婚噸
+ const workOrderUserIds = normalizeArray(row.userIds)
+ .map(id => String(id).trim())
.filter(Boolean);
+ const processUserIds = normalizeArray(row.processUserIds)
+ .map(id => String(id).trim())
+ .filter(Boolean);
+ const allowedUserIds = [...new Set([...workOrderUserIds, ...processUserIds])];
+ // 鍙厑璁搁�夋嫨宸ュ崟鎶ュ伐浜哄拰宸ュ簭鎶ュ伐浜�
reportForm.userIdsList = userTeamOptions.value
- // .filter(item => ids.includes(String(item.userId)))
+ .filter(item => allowedUserIds.includes(String(item.userId)))
.map(item => ({
userId: item.userId,
nickName: item.nickName
--
Gitblit v1.9.3