一个task只能有一个处理人assignee,可以有多个候选人candidate users。
处理人assignee保存于task表中的一个字段,候选人则保存于identityLink表。
如果设置task为candidate users,则待办到了这个task后,所有的候选人都会收到待办,
其中任何一人可以通过claim方法将任务签收,后再进行处理,签收后任务将从其他候选人的待办中删除。
也可以签收和办理同时进行,即先调claim方法,再complate。
测试候选人功能
1、配置测试流程
登录http://127.0.0.1:8080/activiti-app,配置如下流程:
主要是candidate users指定了两个候选人fozzie、gonzo。
此时数据库表的数据如下:
act_hi_taskinst、act_ru_task两个表的处理人assignee_字段为空,act_ru_identitylink表保存候选人。
2、候选人fozzie登录activiti-app后,收到待办如下
3、候选人gonzo登录activiti-app后,收到待办如下
4、其中一个候选人如fozzie先签收
点击Claim按钮进行签收,Claim按钮变成Complete。
签收后,其他候选人gonzo则不能操作了,Claim消失。
此时数据库字段如下:
因为已经签收Claim,所以act_hi_taskinst、act_ru_task两个表的处理人assignee已经有值。