From 95b1de396f55cdf7a6a13bf0339d955aef807957 Mon Sep 17 00:00:00 2001 From: "han\\hanst" Date: Wed, 4 Mar 2026 16:00:14 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E4=B9=9F=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E7=BB=8F=E7=90=86=E5=AE=A1=E6=89=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ErfExpApplyServiceImpl.java | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/xujie/sys/modules/erf/service/impl/ErfExpApplyServiceImpl.java b/src/main/java/com/xujie/sys/modules/erf/service/impl/ErfExpApplyServiceImpl.java index f17a68f7..43a9e3ac 100644 --- a/src/main/java/com/xujie/sys/modules/erf/service/impl/ErfExpApplyServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/erf/service/impl/ErfExpApplyServiceImpl.java @@ -794,7 +794,27 @@ public class ErfExpApplyServiceImpl extends ServiceImpl adminRoles = + sysUserDao.getUserRolesByRoleNames(currentUserId, List.of("工程实验申请管理员")); + if (!adminRoles.isEmpty()) { + QueryWrapper adminNodeQuery = new QueryWrapper<>(); + adminNodeQuery.eq("apply_no", applyNo) + .eq("status", "待审核") + .in("node_code", "生产经理审批", "质量经理审批") + .orderByAsc("node_code") + .last("OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY"); + ErfFlowNodeInstance adminNodeInstance = erfFlowNodeInstanceMapper.selectOne(adminNodeQuery); + if (adminNodeInstance != null) { + log.info("管理员用户{}代理审批,实际节点: {}", currentUserId, adminNodeInstance.getNodeCode()); + return adminNodeInstance.getNodeCode(); + } + throw new XJException("未找到待审核的并发审批节点"); + } + } + + // 普通用户:查询当前用户在该申请单中待审核的节点 QueryWrapper nodeQuery = new QueryWrapper<>(); nodeQuery.eq("apply_no", applyNo) .eq("assignee_user_id", currentUserId)