ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/IWorkflowUserService.java
@@ -21,6 +21,7 @@ * 分页查询工作流选择加签人员 * * @param sysUserMultiBo 参数 * @param pageQuery 分页 * @return 结果 */ TableDataInfo<SysUserVo> getPageByAddMultiInstance(SysUserMultiBo sysUserMultiBo, PageQuery pageQuery); ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/service/impl/WorkflowUserServiceImpl.java
@@ -50,7 +50,8 @@ /** * 分页查询工作流选择加签人员 * * @param bo 参数 * @param bo 参数 * @param pageQuery 分页 */ @Override @SuppressWarnings("unchecked") ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/QueryUtils.java
@@ -1,9 +1,12 @@ package org.dromara.workflow.utils; import cn.hutool.core.bean.BeanUtil; import lombok.AccessLevel; import lombok.NoArgsConstructor; import org.dromara.common.core.utils.SpringUtils; import org.dromara.common.tenant.helper.TenantHelper; import org.dromara.workflow.domain.vo.ParticipantVo; import org.dromara.workflow.domain.vo.TaskVo; import org.flowable.engine.ProcessEngine; import org.flowable.engine.history.HistoricActivityInstanceQuery; import org.flowable.engine.history.HistoricProcessInstanceQuery; @@ -11,6 +14,7 @@ import org.flowable.engine.repository.ModelQuery; import org.flowable.engine.repository.ProcessDefinitionQuery; import org.flowable.engine.runtime.ProcessInstanceQuery; import org.flowable.task.api.Task; import org.flowable.task.api.TaskQuery; import org.flowable.task.api.history.HistoricTaskInstanceQuery; @@ -131,4 +135,20 @@ public static TaskQuery taskQuery(Collection<String> processInstanceIds) { return taskQuery().processInstanceIdIn(processInstanceIds); } /** * 按照任务id查询当前任务 * * @param taskId 任务id */ public static TaskVo getTask(String taskId) { Task task = PROCESS_ENGINE.getTaskService().createTaskQuery().taskId(taskId).singleResult(); if (task == null) { return null; } TaskVo taskVo = BeanUtil.toBean(task, TaskVo.class); ParticipantVo participantVo = WorkflowUtils.getCurrentTaskParticipant(taskId); taskVo.setParticipantVo(participantVo); return taskVo; } } ruoyi-modules/ruoyi-workflow/src/main/java/org/dromara/workflow/utils/WorkflowUtils.java
@@ -155,14 +155,7 @@ } } else { List<HistoricIdentityLink> candidateList = StreamUtils.filter(linksForTask, e -> FlowConstant.CANDIDATE.equals(e.getType())); List<Long> userIdList = new ArrayList<>(); for (HistoricIdentityLink historicIdentityLink : linksForTask) { try { userIdList.add(Long.valueOf(historicIdentityLink.getUserId())); } catch (NumberFormatException ignored) { } } List<Long> userIdList = StreamUtils.toList(linksForTask, e -> Long.valueOf(e.getUserId())); List<SysUserVo> sysUsers = WORKFLOW_USER_SERVICE.getUserListByIds(userIdList); if (CollUtil.isNotEmpty(sysUsers)) { List<Long> userIds = StreamUtils.toList(sysUsers, SysUserVo::getUserId);