Activiti7
概念
流程定义与流程实例
processDefinition
processInstance
使用步骤
- 部署activiti:引入activiti,把业务系统和activiti集成到一起。
- 定义流程:建模工具定义业务流程.bpmn文件。
- 部署流程:保存业务流程。activici是通过数据库将流程持久化的。
- 启动流程实例:开始一次业务流程。
- 用户查询待办任务:所有业务流程都交由activiti管理,使用activiti提供的api方法可以查询当前流程执行到哪一步了。
- 用户处理待办任务:用户处理完待办任务后,activiti会自动推进工作流。
- 流程结束:待办任务处理完成,且没有下一个任务节点后,流程实例执行完成。
挂起与激活
只有流程与流程实例可以被挂起或激活,任务不能。
挂起后任务不可再被完成。
流程变量
Global变量
作用域是整个流程实例(public)。变量名称不可重复
Local变量
作用域只针对一个任务或一个实例的某些范围(private)。变量名称在不同作用域中可以重复。
网关
排他网关
根据条件判断,只会走一条分支。如果条件都不满足,会报错;如果条件都满足,会走id小的一条分支。
并行网关
不会解析条件,所有分支都会走,且所有分支都走完之后,才会进行接下来的流程节点。
包含网关
根据条件判断,所有满足条件的分支都会走,所有分支走完后,才会进行接卸来的流程节点。
事件网关
略
组任务分配
- 流程节点设置候选人组
- 候选人领取任务,候选人变成责任人
- 责任人处理任务
- 进行接下来的流程