做個(gè)簡單記錄,以后寫文章詳解
// 獲取當(dāng)前節(jié)點(diǎn)的activityId,即xml中每個(gè)標(biāo)簽的ID
String currentActivityId = execution.getCurrentActivityId();
List list1 = taskService.createTaskQuery().processInstanceId(processInstance.getProcessInstanceId()).list();
// taskService.addComment(currentTask.getId(), execution.getProcessInstanceId(), body.get("msg").toString());
BpmnModel bpmnModel = repositoryService.getBpmnModel(execution.getProcessDefinitionId());
FlowNode flowNode = (FlowNode)bpmnModel.getFlowElement(currentActivityId);
SequenceFlow sequenceFlow = flowNode.getIncomingFlows().get(0);
// 獲取上一個(gè)節(jié)點(diǎn)的activityId
String sourceRef = sequenceFlow.getSourceRef();
// 流程回退到上一個(gè)節(jié)點(diǎn),審批人繼續(xù)審批
runtimeService.createChangeActivityStateBuilder().processInstanceId(processInstance.getProcessInstanceId())
.moveActivityIdTo(currentActivityId,sourceRef).changeState();