工作流
一、工作流是什么?
是工作流程及各操作步骤之间业务规则的抽象、概述和描述。
或者说多个参与者,按照某种预定义的规则,传递业务信息,进行审核的功能框架。
工作流引擎是什么?
所谓工作引擎流是指workflow作为应用系统的一部分,并为之提供对各应用系统有决定作用的根据角色、分工和条件的不同决定信息传递路由、内容等级等核心解决方案。
主要功能
包括流程的节点管理、流向管理、流程样例管理等重要功能。
二、为什么选用activiti
- 工作流引擎有哪些?
- WWF
- NetBPM
- OSWorkFlow
- JBPM
- Activiti
- 对比分析
- Activiti发展史
三、主要知识点
- 支持的数据库类型
- H2
- Oracle
- Db2
- Mysql
- 数据库表
23张表(25) 5大类
- 1. act_re_ : “Repository”(仓库),保存‘静态’信息
- 2. act_ ru_ : “Runtime”(运行时),这些表中保存一些流程实 例、用户任务、变量等的运行时数据
- 3. act_ge_:“General”(通用),用在各种情况下
- 4. act_hi_ :“History”(历史)历史数据
- 5.act_id_ :“Identity”(身份),这些表中保存的都是身份信息
- ……
- 六大服务
1. RepositoryService:
2. RuntimeService:
3. TaskService:
4. IdentityService:
5. HistoryService:
6. ManagementService
- Activiti核心对象
ProcessEngine管理6大服务
四、怎么使用
- 画模型
- 保存部署模型图
- 启动流程
- RuntimeService.start… act_ru_execution
- 1.processDefinitionKey
- 2.processDefinitionId
- 3.message(复杂)
- 4.processInstanceBuilder.processDefinitionKey
(processDefinitionKey值)
4.设置审批人
TaskService act_ru_
-
- Assignee个人任务 setAssignee
- Candidate users组任务 addCandidateUser
5.任务处理
- TaskService act_ru_
- 方式:
- 1.completeTask 办理
- 2.delegateTask 委派
- 3.resolveTask 转办
- 4.claim 签收
- 委托人: taskService.delegateTask
- 被委托人 :taskService.resolveTask
- 流向下一级:taskService.complete
6.查询任务
- TaskService act_ru_task
- 个人任务 taskAssignee
- 组任务 taskCandidateUser
五、遇见的问题
数据一致性