首先必须说明,获得下一个审批人是有很大局限的,它只适用与少部分情况
image
先看一下这个图,我们如果想知道下一个审批人首先便会遇到排他网管的问题,如果遇到排他网管,我们就要预先知道流程会流向何处(当然,如果排他网管的数据是会更改的就另说了,毕竟获得下一个审批人本来就是有很大局限性的)
==猜想实现过程:==
我们一定要拿到整个流程模型的所有节点(通过流程的key获得模型,然后再获得所有节点)
==关键代码==
//根据流程id获得流程模式id
String processDefinitionId = historyService.createHistoricProcessInstanceQuery()
.processInstanceId(processId).singleResult().getProcessDefinitionId();
//获得流程模型
BpmnModel model = repositoryService.getBpmnModel(processDefinitionId);
//获得模式中所有节点
Collection flowElements = model.getMainProcess().getFlowElements();
还必须知道流程当前所处位置,毕竟这个是支点般的存在(提示一下,有一个表叫做act_ru_task,里面的TASK_DEF_KEY_字段就是节点id)
还要获得流程中的所