From a387709376961b134da6fb35975663947519e5b2 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期三, 19 八月 2026 17:42:04 +0800
Subject: [PATCH] 天津-阳光彩印 1.公出管理列表详情页「申请部门」当前只展示部门 ID,需替换为部门名称展示 2.同一机台排产多人、多班组生产时,报工支持拆分录入多人产量、分开记录各班组生产时长,生产核算自动汇总全部工时 3.生产工单列表删除「计划开始、计划结束」字段,移除进度条组件,简化页面展示 4.销售台账新增产品弹窗内含税单价小数位数调整为 5 位,匹配合同精准计价需求,避免金额尾差

---
 src/views/safeProduction/safeWorkApproval/index.vue |   21 +++++++++++++++------
 1 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/src/views/safeProduction/safeWorkApproval/index.vue b/src/views/safeProduction/safeWorkApproval/index.vue
index 2d8362e..1fdd4a9 100644
--- a/src/views/safeProduction/safeWorkApproval/index.vue
+++ b/src/views/safeProduction/safeWorkApproval/index.vue
@@ -85,6 +85,11 @@
   const userStore = useUserStore();
   const route = useRoute();
 
+  // 绠$悊鍛樿处鍙凤紙瑙掕壊涓� 鏅��2 / admin / 鏈�楂�1锛夊彲瀹℃壒浠绘剰娴佺▼锛屼笉鍙楀鎵逛汉闄愬埗
+  const isAdminUser = computed(() =>
+    ["admin", "鏅��2", "鏈�楂�1"].some(r => (userStore.roles || []).includes(r))
+  );
+
   // 褰撳墠瀹℃壒绫诲瀷锛屾牴鎹�変腑鐨勬爣绛鹃〉璁$畻
   const currentApproveType = computed(() => {
     return Number(8);
@@ -179,11 +184,11 @@
       }
     );
 
-    // 褰撳墠瀹℃壒浜哄垪
+    // 褰撳墠瀹℃壒浜哄垪锛堟敮鎸佸悓鑺傜偣澶氬鎵逛汉锛�
     baseColumns.push({
       label: "褰撳墠瀹℃壒浜�",
-      prop: "approveUserCurrentName",
-      width: 120,
+      prop: "currentApproverNames",
+      width: 180,
     });
 
     // 鎿嶄綔鍒�
@@ -212,11 +217,10 @@
             openApprovalDia("approval", row);
           },
           disabled: row =>
-            row.approveUserCurrentId == null ||
             row.approveStatus == 2 ||
             row.approveStatus == 3 ||
             row.approveStatus == 4 ||
-            row.approveUserCurrentId !== userStore.id,
+            !row._canApprove,
         },
         {
           name: "璇︽儏",
@@ -273,7 +277,12 @@
     })
       .then(res => {
         tableLoading.value = false;
-        tableData.value = res.data.records;
+        // 瀵屽寲琛屾暟鎹細褰撳墠瀹℃壒浜烘樉绀猴紙澶氬�煎厹搴曟棫鍗曞�硷級+ 褰撳墠鐢ㄦ埛鏄惁鍙鏍�
+        tableData.value = (res.data.records || []).map(r => ({
+          ...r,
+          currentApproverNames: r.approveUserCurrentNames || r.approveUserCurrentName || '-',
+          _canApprove: isAdminUser.value || String(r.approveUserCurrentIds ?? '').split(',').filter(Boolean).includes(String(userStore.id)) || r.approveUserCurrentId === userStore.id
+        }));
         page.total = res.data.total;
       })
       .catch(err => {

--
Gitblit v1.9.3