Activiti获取下一个节点信息
在实际的工作流业务开发中, 当用户完成当前用户任务时, 需要指定下一个用户任务的审核人。此时我们需要获取下一个节点的一些信息, 来确定下一个用户任务的审核人有哪些。
在实际工作流程中, 当前用户任务后的节点可能为用户任务, 也可能为网关。如果下一个节点为网关我们需要判断流程线路。
- /**
- * 获取下一个用户任务用户组信息
- * @param String taskId 任务Id信息
- * @return 下一个用户任务用户组信息
- * @throws Exception
- */
- public Set<Expression> getNextTaskGroup(String taskId) throws Exception {
- ProcessDefinitionEntity processDefinitionEntity = null;
- String id = null;
- TaskDefinition task = null;
- //获取流程实例Id信息
- String processInstanceId = taskService.createTaskQuery().taskId(taskId).singleResult().getProcessInstanceId();
- //获取流程发布Id信息
- String definitionId = runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceId).singleResult().getProcessDefinitionId();
- processDefinitionEntity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService)
- .getDeployedProcessDefinition(definitionId);
- ExecutionEntity execution = (ExecutionEntity) runtimeService.createProcessInstanceQuery(