diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/FormTypeEnum.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/FormTypeEnum.java deleted file mode 100644 index ae043bdb6..000000000 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/common/enums/FormTypeEnum.java +++ /dev/null @@ -1,54 +0,0 @@ -package org.dromara.workflow.common.enums; - -import cn.hutool.core.util.StrUtil; -import lombok.AllArgsConstructor; -import lombok.Getter; - -import java.util.Arrays; -import java.util.Map; -import java.util.stream.Collectors; - -/** - * 任务状态枚举 - * - * @author may - */ -@Getter -@AllArgsConstructor -public enum FormTypeEnum { - - /** - * 自定义表单 - */ - STATIC("static", "自定义表单"), - - /** - * 动态表单 - */ - DYNAMIC("dynamic", "动态表单"); - - /** - * 类型 - */ - private final String type; - - /** - * 描述 - */ - private final String desc; - - private static final Map TYPE_DESC_MAP = Arrays.stream(values()) - .collect(Collectors.toConcurrentMap(FormTypeEnum::getType, FormTypeEnum::getDesc)); - - /** - * 表单类型 - * - * @param formType 表单类型 - */ - public static String findByType(String formType) { - // 从缓存中直接获取描述 - return TYPE_DESC_MAP.getOrDefault(formType, StrUtil.EMPTY); - } - -} - diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java index 9ed9f9b55..d9c889f89 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwDefinitionController.java @@ -32,6 +32,7 @@ import java.util.List; @RestController @RequestMapping("/workflow/definition") public class FlwDefinitionController extends BaseController { + private final IFlwDefinitionService flwDefinitionService; private final DefService defService; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java index 2da037378..cb65f2158 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/controller/FlwInstanceController.java @@ -30,6 +30,7 @@ import java.util.Map; @RestController @RequestMapping("/workflow/instance") public class FlwInstanceController extends BaseController { + private final IFlwInstanceService flwInstanceService; private final InsService insService; diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java index 950778c2b..9bac6bcd2 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/handler/FlowProcessEventHandler.java @@ -5,7 +5,7 @@ import org.dromara.common.core.domain.event.ProcessDeleteEvent; import org.dromara.common.core.domain.event.ProcessEvent; import org.dromara.common.core.domain.event.ProcessTaskEvent; import org.dromara.common.core.utils.SpringUtils; -import org.dromara.common.satoken.utils.LoginHelper; +import org.dromara.common.tenant.helper.TenantHelper; import org.springframework.stereotype.Component; /** @@ -27,7 +27,7 @@ public class FlowProcessEventHandler { * @param submit 当为true时为申请人节点办理 */ public void processHandler(String flowCode, String businessId, String status, boolean submit) { - String tenantId = LoginHelper.getTenantId(); + String tenantId = TenantHelper.getTenantId(); log.info("发布流程事件,租户ID: {}, 流程状态: {}, 流程编码: {}, 业务ID: {}, 是否申请人节点办理: {}", tenantId, status, flowCode, businessId, submit); ProcessEvent processEvent = new ProcessEvent(); processEvent.setTenantId(tenantId); @@ -47,7 +47,7 @@ public class FlowProcessEventHandler { * @param businessId 业务id */ public void processTaskHandler(String flowCode, String nodeCode, Long taskId, String businessId) { - String tenantId = LoginHelper.getTenantId(); + String tenantId = TenantHelper.getTenantId(); log.info("发布流程任务事件, 租户ID: {}, 流程编码: {}, 节点编码: {}, 任务ID: {}, 业务ID: {}", tenantId, flowCode, nodeCode, taskId, businessId); ProcessTaskEvent processTaskEvent = new ProcessTaskEvent(); processTaskEvent.setTenantId(tenantId); @@ -65,7 +65,7 @@ public class FlowProcessEventHandler { * @param businessId 业务ID */ public void processDeleteHandler(String flowCode, String businessId) { - String tenantId = LoginHelper.getTenantId(); + String tenantId = TenantHelper.getTenantId(); log.info("发布删除流程事件, 租户ID: {}, 流程编码: {}, 业务ID: {}", tenantId, flowCode, businessId); ProcessDeleteEvent processDeleteEvent = new ProcessDeleteEvent(); processDeleteEvent.setTenantId(tenantId); diff --git a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java index 9042ed1a5..8cf9b6c0c 100644 --- a/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java +++ b/ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java @@ -14,7 +14,6 @@ import org.dromara.common.sse.dto.SseMessageDto; import org.dromara.common.sse.utils.SseMessageUtils; import org.dromara.warm.flow.core.constant.ExceptionCons; import org.dromara.warm.flow.core.dto.FlowParams; -import org.dromara.warm.flow.core.entity.Instance; import org.dromara.warm.flow.core.entity.Node; import org.dromara.warm.flow.core.entity.Task; import org.dromara.warm.flow.core.entity.User; @@ -47,19 +46,19 @@ import java.util.Set; @NoArgsConstructor(access = AccessLevel.PRIVATE) public class WorkflowUtils { - private static final IFlwTaskAssigneeService taskAssigneeService = SpringUtils.getBean(IFlwTaskAssigneeService.class); - private static final IFlwTaskService flwTaskService = SpringUtils.getBean(IFlwTaskService.class); - private static final UserService userService = SpringUtils.getBean(UserService.class); - private static final TaskService taskService = SpringUtils.getBean(TaskService.class); + private static final IFlwTaskAssigneeService TASK_ASSIGNEE_SERVICE = SpringUtils.getBean(IFlwTaskAssigneeService.class); + private static final IFlwTaskService FLW_TASK_SERVICE = SpringUtils.getBean(IFlwTaskService.class); private static final FlowNodeMapper FLOW_NODE_MAPPER = SpringUtils.getBean(FlowNodeMapper.class); - private static final NodeService nodeService = SpringUtils.getBean(NodeService.class); private static final FlowTaskMapper FLOW_TASK_MAPPER = SpringUtils.getBean(FlowTaskMapper.class); + private static final UserService USER_SERVICE = SpringUtils.getBean(UserService.class); + private static final TaskService TASK_SERVICE = SpringUtils.getBean(TaskService.class); + private static final NodeService NODE_SERVICE = SpringUtils.getBean(NodeService.class); /** * 获取工作流用户service */ public static UserService getFlowUserService() { - return userService; + return USER_SERVICE; } /** @@ -77,7 +76,7 @@ public class WorkflowUtils { Set processedBySet = new HashSet<>(); for (User user : userList) { // 根据 processedBy 前缀判断处理人类型,分别获取用户列表 - List users = taskAssigneeService.fetchUsersByStorageId(user.getProcessedBy()); + List users = TASK_ASSIGNEE_SERVICE.fetchUsersByStorageId(user.getProcessedBy()); // 转换为 FlowUser 并添加到结果集合 if (CollUtil.isNotEmpty(users)) { users.forEach(dto -> { @@ -105,12 +104,12 @@ public class WorkflowUtils { */ public static void sendMessage(String flowName, Long instId, List messageType, String message) { List userList = new ArrayList<>(); - List list = flwTaskService.selectByInstId(instId); + List list = FLW_TASK_SERVICE.selectByInstId(instId); if (StringUtils.isBlank(message)) { message = "有新的【" + flowName + "】单据已经提交至您,请您及时处理。"; } for (Task task : list) { - List users = flwTaskService.currentTaskAllUser(task.getId()); + List users = FLW_TASK_SERVICE.currentTaskAllUser(task.getId()); if (CollUtil.isNotEmpty(users)) { userList.addAll(users); } @@ -150,7 +149,7 @@ public class WorkflowUtils { * @param flowHisStatus 节点操作状态 */ public static void backTask(String message, Long instanceId, String targetNodeCode, String flowStatus, String flowHisStatus) { - List list = flwTaskService.selectByInstId(instanceId); + List list = FLW_TASK_SERVICE.selectByInstId(instanceId); if (CollUtil.isNotEmpty(list)) { List tasks = StreamUtils.filter(list, e -> e.getNodeCode().equals(targetNodeCode)); if (list.size() == tasks.size()) { @@ -158,7 +157,7 @@ public class WorkflowUtils { } } for (FlowTask task : list) { - List userList = flwTaskService.currentTaskAllUser(task.getId()); + List userList = FLW_TASK_SERVICE.currentTaskAllUser(task.getId()); FlowParams flowParams = FlowParams.build(); flowParams.nodeCode(targetNodeCode); flowParams.message(message); @@ -169,7 +168,7 @@ public class WorkflowUtils { if (CollUtil.isNotEmpty(userList)) { flowParams.handler(userList.get(0).getUserId().toString()); } - taskService.skip(task.getId(), flowParams); + TASK_SERVICE.skip(task.getId(), flowParams); } //解决会签多人审批问题 backTask(message, instanceId, targetNodeCode, flowStatus, flowHisStatus); @@ -187,7 +186,7 @@ public class WorkflowUtils { AssertUtil.isTrue(CollUtil.isEmpty(flowNodes), ExceptionCons.NOT_PUBLISH_NODE); Node startNode = flowNodes.stream().filter(t -> NodeType.isStart(t.getNodeType())).findFirst().orElse(null); AssertUtil.isNull(startNode, ExceptionCons.LOST_START_NODE); - Node nextNode = nodeService.getNextNode(definitionId, startNode.getNodeCode(), null, SkipType.NONE.getKey()); + Node nextNode = NODE_SERVICE.getNextNode(definitionId, startNode.getNodeCode(), null, SkipType.NONE.getKey()); return nextNode.getNodeCode(); } @@ -200,7 +199,7 @@ public class WorkflowUtils { if (CollUtil.isEmpty(taskIds)) { return; } - userService.deleteByTaskIds(taskIds); + USER_SERVICE.deleteByTaskIds(taskIds); FLOW_TASK_MAPPER.deleteByIds(taskIds); } }