From 76efd0535e0592b32d843a6f56abe7e5e1f5da43 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E4=BD=95=E7=BE=8E=E8=8D=A3?=
<10755671+mei-rong-he@user.noreply.gitee.com>
Date: Tue, 16 Dec 2025 17:35:06 +0800
Subject: [PATCH] =?UTF-8?q?=E5=AE=A1=E6=89=B9=E6=89=BE=E4=BA=BA=E6=96=B0?=
=?UTF-8?q?=E6=96=B9=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Services/FM/FMFlowPermitService.cs | 45 ++++++++++++++++++-
1 file changed, 44 insertions(+), 1 deletion(-)
diff --git a/APT.BaseData.Services/Services/FM/FMFlowPermitService.cs b/APT.BaseData.Services/Services/FM/FMFlowPermitService.cs
index a7af507..d6dd698 100644
--- a/APT.BaseData.Services/Services/FM/FMFlowPermitService.cs
+++ b/APT.BaseData.Services/Services/FM/FMFlowPermitService.cs
@@ -1572,7 +1572,50 @@ namespace APT.BaseData.Services.Services.FM
}
}
}
-
+ ///
+ /// 根据部门树查找审核人(新)去除层级
+ ///
+ ///
+ ///
+ ///
+ private Guid? GetApproveUserNew(T_PF_APPROVE_TEMP_DETAIL approveTempDetail, List users, List departs, Guid loginUserId)
+ {
+ Guid? approveId = null;
+ var user = users.FirstOrDefault(t => t.ID == loginUserId);
+ var approveIds = users.Where(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID).Select(t => t.ID).ToList();
+ if (approveIds.Count() == 0)
+ {
+ //当前审批节点未配人员,返回Null
+ return approveId;
+ }
+ else if (approveIds.Count() == 1)
+ {
+ //当前节点只有一个人
+ approveId = approveIds.FirstOrDefault();
+ }
+ else
+ {
+ //当前节点很多人,按当前登录人的层级及上级组织,只会取到一个
+ if (user.DEPARTMENT_ID != null)
+ {
+ List departmentIds = new List();
+ GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
+ if (departmentIds.Any())
+ {
+ var userTemp = users.FirstOrDefault(x => x.DEPARTMENT_ID!=null && x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID) && approveIds.Contains(x.ID));
+ if (userTemp != null)
+ {
+ approveId = userTemp.ID;
+ }
+ else
+ {
+ return approveId;
+ }
+ }
+ }
+ }
+ return approveId;
+ }
///
/// 根据部门树查找审核人
///