From c7c01d37bc3adfc07f506ca6d2e7629212164406 Mon Sep 17 00:00:00 2001 From: yinq Date: Mon, 10 Nov 2025 10:59:59 +0800 Subject: [PATCH] =?UTF-8?q?1.0.31=20=E9=80=9A=E8=BF=87=E5=8F=91=E8=B5=B7?= =?UTF-8?q?=E4=BA=BA=E9=83=A8=E9=97=A8id=E8=8E=B7=E5=8F=96=E5=88=86?= =?UTF-8?q?=E7=AE=A1=E5=89=AF=E6=80=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/system/api/RemoteDeptService.java | 8 ++++++++ .../dromara/system/dubbo/RemoteDeptServiceImpl.java | 12 ++++++++++++ .../org/dromara/workflow/rule/SpelRuleComponent.java | 11 +++++++++++ 3 files changed, 31 insertions(+) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/org/dromara/system/api/RemoteDeptService.java b/ruoyi-api/ruoyi-api-system/src/main/java/org/dromara/system/api/RemoteDeptService.java index a8ffb5d4..7a852341 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/org/dromara/system/api/RemoteDeptService.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/org/dromara/system/api/RemoteDeptService.java @@ -28,6 +28,14 @@ public interface RemoteDeptService { */ Long selectDeptLeaderById(Long deptId); + /** + * 根据部门ID查询分管副总 + * + * @param deptId 部门ID,用于指定需要查询的部门 + * @return 返回该部门的分管副总ID + */ + Long selectDeptVicePresidentById(Long deptId); + /** * 查询部门 * diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteDeptServiceImpl.java index 148f5f90..2b0bdbe7 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/dubbo/RemoteDeptServiceImpl.java @@ -55,6 +55,18 @@ public class RemoteDeptServiceImpl implements RemoteDeptService { return vo.getLeader(); } + /** + * 根据部门ID查询分管副总 + * + * @param deptId 部门ID,用于指定需要查询的部门 + * @return 返回该部门的分管副总ID + */ + @Override + public Long selectDeptVicePresidentById(Long deptId) { + SysDeptVo vo = deptService.selectDeptById(deptId); + return vo.getVicePresident(); + } + /** * 查询部门 * diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java index f9860ed6..059bbce1 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/rule/SpelRuleComponent.java @@ -35,4 +35,15 @@ public class SpelRuleComponent { return leaderId; } + /** + * 通过发起人部门id获取分管副总 + */ + public Long selectDeptVicePresidentById(Long initiatorDeptId) { + Long vicePresidentId = deptService.selectDeptVicePresidentById(initiatorDeptId); + if (ObjectUtil.isNull(vicePresidentId)) { + throw new ServiceException("当前部门未设置分管副总,请联系管理员操作。"); + } + return vicePresidentId; + } + }