From df7f282e411e3ae7ab9ba0cbf615bdf523c8d17e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Wed, 2 Jul 2025 13:47:54 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B7=A5?= =?UTF-8?q?=E4=BD=9C=E6=B5=81=E4=BB=A3=E7=A0=81=E5=B0=8F=E6=94=B9=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../handler/WorkflowPermissionHandler.java | 16 +++++++++++----- .../dromara/workflow/mapper/FlwTaskMapper.java | 10 ---------- .../workflow/service/IFlwCommonService.java | 8 -------- .../service/impl/FlwCommonServiceImpl.java | 18 ------------------ 4 files changed, 11 insertions(+), 41 deletions(-) diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java index f9ede15c..c62069b4 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/WorkflowPermissionHandler.java @@ -3,11 +3,14 @@ package org.dromara.workflow.handler; import cn.hutool.core.collection.CollUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.dromara.common.core.utils.StreamUtils; +import org.dromara.common.core.utils.StringUtils; import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.system.api.domain.vo.RemoteUserVo; import org.dromara.warm.flow.core.dto.FlowParams; import org.dromara.warm.flow.core.handler.PermissionHandler; import org.dromara.workflow.common.ConditionalOnEnable; -import org.dromara.workflow.service.IFlwCommonService; +import org.dromara.workflow.service.IFlwTaskAssigneeService; import org.springframework.stereotype.Component; import java.util.Collections; @@ -24,7 +27,7 @@ import java.util.List; @Slf4j public class WorkflowPermissionHandler implements PermissionHandler { - private final IFlwCommonService flwCommonService; + private final IFlwTaskAssigneeService flwTaskAssigneeService; /** * 办理人权限标识,比如用户,角色,部门等,用于校验是否有权限办理任务 @@ -51,9 +54,12 @@ public class WorkflowPermissionHandler implements PermissionHandler { */ @Override public List convertPermissions(List permissions) { - if (CollUtil.isNotEmpty(permissions)) { - permissions = flwCommonService.buildUser(permissions); + if (CollUtil.isEmpty(permissions)) { + return permissions; } - return permissions; + String storageIds = CollUtil.join(permissions, StringUtils.SEPARATOR); + List users = flwTaskAssigneeService.fetchUsersByStorageIds(storageIds); + return StreamUtils.toList(users, userDTO -> String.valueOf(userDTO.getUserId())); } + } diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java index fd86c82d..0d0422d5 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/mapper/FlwTaskMapper.java @@ -9,8 +9,6 @@ import org.dromara.workflow.domain.bo.FlowTaskBo; import org.dromara.workflow.domain.vo.FlowHisTaskVo; import org.dromara.workflow.domain.vo.FlowTaskVo; -import java.util.List; - /** * 任务信息Mapper接口 @@ -29,14 +27,6 @@ public interface FlwTaskMapper { */ Page getListRunTask(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); - /** - * 获取待办信息 - * - * @param queryWrapper 条件 - * @return 结果 - */ - List getListRunTask(@Param(Constants.WRAPPER) Wrapper queryWrapper); - /** * 获取已办 * diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCommonService.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCommonService.java index 5314b6f6..2390c43e 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCommonService.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IFlwCommonService.java @@ -9,14 +9,6 @@ import java.util.List; */ public interface IFlwCommonService { - /** - * 构建工作流用户 - * - * @param permissionList 办理用户 - * @return 用户 - */ - List buildUser(List permissionList); - /** * 发送消息 * diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java index 5bf8acb2..839e617a 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/FlwCommonServiceImpl.java @@ -52,24 +52,6 @@ public class FlwCommonServiceImpl implements IFlwCommonService { @DubboReference private RemoteMailService remoteMailService; - /** - * 构建工作流用户 - * - * @param permissionList 办理用户 - * @return 用户 - */ - @Override - public List buildUser(List permissionList) { - if (CollUtil.isEmpty(permissionList)) { - return List.of(); - } - IFlwTaskAssigneeService taskAssigneeService = SpringUtils.getBean(IFlwTaskAssigneeService.class); - String processedBys = CollUtil.join(permissionList, StringUtils.SEPARATOR); - // 根据 processedBy 前缀判断处理人类型,分别获取用户列表 - List users = taskAssigneeService.fetchUsersByStorageIds(processedBys); - return StreamUtils.toList(users, userDTO -> String.valueOf(userDTO.getUserId())); - } - /** * 发送消息 *