[关闭]
@ruoli 2016-08-28T16:34:11.000000Z 字数 992 阅读 9293

Activiti多人会签的实现

Activiti


1、会签说明

会签,是指多个人员针对同一个事务进行协商处理,共同签署决定一件事情。
在工作流中会签,是指多个人员在同一个环节进行处理,同一环节的有多个处理人并行处理,按照配置规则,固定比例的人员办理完成后即可继续扭转至下一环节。

2、Activiti会签实现

目前Activiti支持自定义配置完成比例,即 一定比例的人员 办理完成之后 即可扭转至下一步,这样就可以实现 多人处理一人审批即可通过和全部人员审批后才可通过,两种处理形式,配置方式如下:

  1. <userTask id="sid-1D9A88B5-D0DC-4056-A5DF-179D7220B76F"
  2. name="生产部领导会签"
  3. activiti:assignee="${assignee}"
  4. activiti:candidateGroups="生产部领导">
  5. <multiInstanceLoopCharacteristics isSequential="false"
  6. activiti:collection="${assignees}" activiti:elementVariable="assignee">
  7. <completionCondition>
  8. ${nrOfCompletedInstances/nrOfInstances>0}
  9. </completionCondition>
  10. </multiInstanceLoopCharacteristics>
  11. </userTask>

说明:
1:此配置依赖外部传入流程参数 assignees,类型为 List<String>,此为所有参与审批的人员集合。
2:activiti:elementVariable="assignee" 为内部处理参数,工作流引擎循环遍历处理这些人员时使用assignee变量来存储每一个人员信息
3:activiti:assignee="${assignee}",执行审批人,此变量不需外部传入,对应上述第二点的内部变量。
4:activiti:candidateGroups="生产部领导",可不用配置,此处有配置是用来解析环节会签人员使用。
5:${nrOfCompletedInstances/nrOfInstances>0} ,配置完成比例,此处配置为>0,代表任意一人处理后即可扭转。
6:isSequential="false" ,代表并行处理。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注