Activiti 开发案例之数据库表 ACT_HI_IDENTITYLINK


前言

用工作流API用的贼溜,那么问题来了,指派的任务和人都去哪了?

表结构

如果大家开发中用到了以下两个API会涉及到:

  • taskService.addCandidateUser(taskId,userId)
  • taskService.addCandidateGroup(taskId,groupId)

ACT_HI_IDENTITYLINK:任务参与者历史数据表,主要存储历史节点参与者的信息。

1. ID_:
2. GROUP_ID_: 对应 act_id_group 中的ID_
4. TYPE_:类型
5. USER_ID_:对应 act_id_user 中的ID_
6. TASK_ID_:对应 act_ru_task 中的ID_
7. PROC_INST_ID_: 流程实例ID

ACT_RU_IDENTITYLINK:任务参与者数据表,主要存储当前节点参与者的信息。

1. ID_:
2. REV_:版本号
3. GROUP_ID_: 对应 act_id_group 中的ID_
4. TYPE_:类型
5. USER_ID_:对应 act_id_user 中的ID_
6. TASK_ID_:对应 act_ru_task 中的ID_
7. PROC_INST_ID_: 流程实例ID
8. PROC_DEF_ID_:部署流程版本号

ACT_HI_IDENTITYLINKACT_RU_IDENTITYLINK 两个表的数据字段看似差不多,其实还是有很大不同的。

  • ACT_HI_IDENTITYLINK,所有的历史以及当前指派数据都存在这个表中。
  • ACT_RU_IDENTITYLINK,流程结束以后,此流程对应的指派数据将清空。
  • ACT_RU_IDENTITYLINK,多了两个字段 REV_:版本号,PROC_DEF_ID_:部署流程版本号,因为在运行过程中,任务需要知道发起是使用的是那一个流程版本。
  • ACT_HI_IDENTITYLINK,中没有以上两个字段,是因为已经到历史库了,记录也没啥子意义了。
  • ACT_RU_IDENTITYLINK,运行中的任务,TASK_ID_字段不为空,PROC_INST_ID_ 为空。
  • ACT_RU_IDENTITYLINK,结束的任务,TASK_ID_ 字段为空,PROC_INST_ID_ 不为空。

最后,再来看看比较重要的TYPE_字段:

  • starterUSER_IDPROC_INST_ID_,记录流程的发起者
  • candidateUSER_ID_GROUP_ID_ 其中一个必须有值、TASK_ID_有值,记录当前任务的指派人与指派组。
  • participantUSER_IDPROC_INST_ID_有值,记录流程任务的参与者。
爪哇笔记
爪哇笔记

作者: 小柒

出处: https://blog.52itstyle.vip

分享是快乐的,也见证了个人成长历程,文章大多都是工作经验总结以及平时学习积累,基于自身认知不足之处在所难免,也请大家指正,共同进步。

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 如有问题, 可邮件(345849402@qq.com)咨询。