上一篇博客我们讲到了排他网管,这篇博文简单介绍一下他的兄弟,并行网关。
一、流程图
图一 并行网关网购流程图
在这里,我们模拟网上购物流程,四个用户任务,分别是付款、发货、收款、收货,其中付款和收货的办理人是买家,发货和收款的办理人是卖家。
二、部署和启动流程
/**部署流程定义+启动流程实例*/
@Test
public void deployementAndStartProcess(){
InputStream inputStreamBpmn = this.getClass().getResourceAsStream("parallelGateWay.bpmn");
InputStream inputStreampng = this.getClass().getResourceAsStream("parallelGateWay.png");
//部署流程定义
Deployment deployment = processEngine.getRepositoryService()//
.createDeployment()//创建部署对象
.addInputStream("parallelGateWay.bpmn", inputStreamBpmn)//部署加载资源文件
.addInputStream("parallelGateWay.png", inputStreampng)//
.name("并行网关演示")
.deploy();
System.out.println("部署ID:"+deployment.getId());
//启动流程实例
ProcessInstance pi = processEngine.getRuntimeService()//
.startProcessInstanceByKey("parallelGateWay");//使用流程定义的key的最新版本启动流程
System.out.println("流程实例ID:"+pi.getId());
System.out.println("流程定义的ID:"+pi.getProcessDefinitionId());
}
对应数据库表:
1.act_ru_execution