flowable流程回退到上一節點

作個簡單記錄,之後寫文章詳解markdown

// 獲取當前節點的activityId,即xml中每一個標籤的ID
                String currentActivityId = execution.getCurrentActivityId();

                List<Task> 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);
                // 獲取上一個節點的activityId
                String sourceRef = sequenceFlow.getSourceRef();

                // 流程回退到上一個節點,審批人繼續審批
                runtimeService.createChangeActivityStateBuilder().processInstanceId(processInstance.getProcessInstanceId())
                        .moveActivityIdTo(currentActivityId,sourceRef).changeState();
相關文章
相關標籤/搜索