表1 工作流中接触到的Id
Id名称 |
获取方式 |
例子 |
频率 |
说明 |
部署Id |
deployment.getId() |
1 |
几乎不用 |
1.非springboot项目手动部署时产生的id,支持bpmn或zip格式 |
流程定义Id |
pi.getProcessDefinitionId() |
helloworld:1:4 |
几乎不用 |
启动流程就可以获得流程定义id和流程实例id,4代表流程启动第4次 |
流程实例Id |
pi.getId() |
101 |
经常用 |
每startProcessInstanceByKey就有一个流程实例id |
执行对象Id |
execution.getId() |
101 |
经常用 |
一个流程,流程实例只有一个,但执行对象可以存在多个(如果存在分支和聚合),如果不存在,流程实例id=执行对象id |
活动Id |
ActivityId |
“managerTask” |
经常用 |
当前活动id,就当前执行对象执行到了哪里 |
任务Id |
task.getId() |
302 |
经常用 |
只有userTask才有任务id |
表2 工作流中接触到的Service
Service | 作用 | 频率 |
RepositoryService | 管理流程定义 | 不太常用 |
RuntimeService | 执行管理,包括启动、推进、删除流程实例等操作 | 最常用 |
TaskService | 任务管理,userTask才能用 | 常用 |
HistoryService | 历史管理(执行完的数据的管理) | 不常用 |
IdentityService | 组织机构管理,如用户组、角色、用户名 | 不常用 |
FormService | 一个可选服务,任务表单管理 | 不常用 |
ManagerService | 不常用 |