在流程定义中设置任务节点的assignee为固定负责人,则后续需要修改该负责人时需要改动流程定义重新部署,可扩展性差
针对这一情况我们可以设置候选人处理流程任务
1、设置任务候选人
在流程中任务节点的配置中设置candidate-users,多个候选人使用逗号分隔
2、组任务办理
1、查询组任务
在处理任务之前,查询该候选人当前的待办任务
候选人不能立即处理任务,而是需要先认领任务才能处理
TaskQuery queryAssignee = taskQueryHandler.createTaskQuery().active().taskAssignee(userId);
TaskQuery queryCandidate = taskQueryHandler.createTaskQuery().active().taskCandidateUser(userId);
2、签收任务
多个候选人的时候需要将该任务签收后才能进行处理,
而且只能由一人进行签收,候选组任务变成个人任务,
除非归还,否则其他人不能签收