From b09b821ef36fd1ea979e9a5daa98e95732ac81d5 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 16 七月 2025 18:16:00 +0800
Subject: [PATCH] 2025-07-16

---
 src/tabviews/zshare/actionList/normalbutton/index.jsx |   18 ++++++++++++++----
 src/utils/utils.js                                    |   18 ++++++++++++++----
 2 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/src/tabviews/zshare/actionList/normalbutton/index.jsx b/src/tabviews/zshare/actionList/normalbutton/index.jsx
index 4e4f1b3..495c04b 100644
--- a/src/tabviews/zshare/actionList/normalbutton/index.jsx
+++ b/src/tabviews/zshare/actionList/normalbutton/index.jsx
@@ -1063,12 +1063,17 @@
           statusName = line.mkdata.statusName
           sign = line.mkdata.seniorSign || ''
           target = flow.cells.filter(cell => cell.id === line.target.cell)[0]
+          let departs = []
   
           line.mkdata.members && line.mkdata.members.forEach(item => {
             if (line.mkdata.approver === 'departmentManager') {
-              if (item.job_type === 'manage' && departmentcode === item.parentIds[1]) {
-                checkIds.push(item.worker_id)
-                checkUsers.push(item)
+              if (item.job_type === 'manage') {
+                if (departmentcode === item.parentIds[1]) {
+                  checkIds.push(item.worker_id)
+                  checkUsers.push(item)
+                } else if (item.parentNames[1]) {
+                  departs.push(item.parentNames[1])
+                }
               }
             } else if (line.mkdata.approver === 'directManager') {
               if (departmentcode === item.parentIds[1] && item.work_grade > work_grade) {
@@ -1087,7 +1092,12 @@
           if (!target) {
             error = '鏈煡璇㈠埌宸ヤ綔娴佺洰鏍囪妭鐐�'
           } else if (checkIds.length === 0 && !['startEdge', 'endEdge', 'throughEdge'].includes(line.mknode)) {
-            error = '鏈幏鍙栧埌涓嬩竴姝ュ鎵逛汉'
+            if (departs.length) {
+              departs = Array.from(new Set(departs))
+              error = '鏈幏鍙栧埌涓嬩竴姝ュ鎵逛汉锛岄渶瑕�' + departs.join('銆�') + '鎵嶅彲浠ユ搷浣滃綋鍓嶅姛鑳姐��'
+            } else {
+              error = '鏈幏鍙栧埌涓嬩竴姝ュ鎵逛汉'
+            }
           } else if (line.approvalMethod === 'countersign' && (!node.checkIds || !node.checkIds.includes(userid))) {
             error = '褰撳墠鐢ㄦ埛涓嶅湪瀹℃壒浜哄垪琛ㄤ腑'
           }
diff --git a/src/utils/utils.js b/src/utils/utils.js
index 1c6771e..f80ad44 100644
--- a/src/utils/utils.js
+++ b/src/utils/utils.js
@@ -2671,12 +2671,17 @@
         statusName = line.mkdata.statusName
         sign = line.mkdata.seniorSign || ''
         target = flow.cells.filter(cell => cell.id === line.target.cell)[0]
+        let departs = []
 
         line.mkdata.members && line.mkdata.members.forEach(item => {
           if (line.mkdata.approver === 'departmentManager') {
-            if (item.job_type === 'manage' && departmentcode === item.parentIds[1]) {
-              checkIds.push(item.worker_id)
-              checkUsers.push(item)
+            if (item.job_type === 'manage') {
+              if (departmentcode === item.parentIds[1]) {
+                checkIds.push(item.worker_id)
+                checkUsers.push(item)
+              } else if (item.parentNames[1]) {
+                departs.push(item.parentNames[1])
+              }
             }
           } else if (line.mkdata.approver === 'directManager') {
             if (departmentcode === item.parentIds[1] && item.work_grade > work_grade) {
@@ -2695,7 +2700,12 @@
         if (!target) {
           error = '鏈煡璇㈠埌宸ヤ綔娴佺洰鏍囪妭鐐�'
         } else if (checkIds.length === 0 && !['startEdge', 'endEdge', 'throughEdge'].includes(line.mknode)) {
-          error = '鏈幏鍙栧埌涓嬩竴姝ュ鎵逛汉'
+          if (departs.length) {
+            departs = Array.from(new Set(departs))
+            error = '鏈幏鍙栧埌涓嬩竴姝ュ鎵逛汉锛岄渶瑕�' + departs.join('銆�') + '鎵嶅彲浠ユ搷浣滃綋鍓嶅姛鑳姐��'
+          } else {
+            error = '鏈幏鍙栧埌涓嬩竴姝ュ鎵逛汉'
+          }
         } else if (line.approvalMethod === 'countersign' && (!node.checkIds || !node.checkIds.includes(userid))) {
           error = '褰撳墠鐢ㄦ埛涓嶅湪瀹℃壒浜哄垪琛ㄤ腑'
         }

--
Gitblit v1.8.0