1、injectParallelUserTask --- 给《任务实例》加入《子任务》
2、injectParallelEmbeddedSubProcess --- 给《任务实例》加入《子流程》
3、injectUserTaskInProcessInstance --- 给《流程实例》加入《子任务》
4、injectEmbeddedSubProcessInProcessInstance --- 给《流程实例》加入《子流程》
.
// injectParallelUserTask --- 给《任务实例》加入《子任务》
{
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("oneTaskProcess");
Task task = taskService.createTaskQuery().singleResult();
DynamicUserTaskBuilder taskBuilder = new DynamicUserTaskBuilder();
taskBuilder.id("custom_task")
.name("My injected task")
.assignee("kermit");
/**
* <pre>
* 1、创建新的 DeploymentEntity,并插入到 ACT_RE_DEPLOYMENT 表
* 2、《注入节点》到 BpmnModel 对象中的 process 的节点 --- updateBpmnProcess,【子流程+并行网关】
* 1、查找 UserTask 任务,且只支持 UserTask !!!
* 2、创建子流程 SubProcess
* 3、处理关系
* 1、userTask的前置节点 ---> subProcess
* 2、subProcess ---> userTask的后置节点
* 3、处理subProcess内的关系
* 1、创建 StartEvent
* 2、StartEvent ---> 《fork》并行网关ParallelGateway
* 3、创建 EndEvent
* 4、《fork》ParallelGateway ---> userTask
* 5、《fork》ParallelGateway ---> newUserTask
* 6、userTask ---> 《join》并行网关 ParallelGateway
* 7、ne

本文介绍了如何使用Flowable API动态地在任务实例和流程实例中插入子任务(UserTask和EmbeddedSubProcess),包括`injectParallelUserTask`、`injectParallelEmbeddedSubProcess`、`injectUserTaskInProcessInstance`和`injectEmbeddedSubProcessInProcessInstance`方法,详细展示了如何通过BPMN模型修改并部署新的流程结构。
最低0.47元/天 解锁文章
2687

被折叠的 条评论
为什么被折叠?



