【Activiti】会签 这回事

会签场景:

一个公文涉及到多个部门或者多人共同签署才可以通过

问题点:

1. 表现在流程中是一个任务节点还是多个 ?

  • -- 一个,原因:业务上处理流程节点是一个,只不过需要多个人签字而已。
  • -- 只不过这个节点不同于其他UserTask, 需要多次complete才可以完成,专业点成为:多实例

2. 怎么设置不同多实例

  • -- Multi Instance . Sequential = true

3. 实例个数 以及 处理人

  • -- Multi Instance. Collection 设置 数量
  • -- 处理人,需要设置候选人,不能设置签收人。MainConfig.CandidateUser = List
  • -- 个数 处理人 都可以使用UEL表达式 来设定

4. 结束条件

  • -- 设置位置:Muti Instance.Completion Condition
  • -- 内置变量, 实例数量,已complete数量 等
  • -- 如果需要判断 complete 是通过还是拒绝,就需要自定义变量,在complete前setVariable
  • -- 然后使用 内置变量 和 自定义变量 共同控制 结束

5. 注意事项

  • -- 内置变量的设置需要 注意分布式数据一致性,可以用分布式锁控制
  • -- 公文需要注意有可合并,AB一块签字,数据模型要可以支持,否则必须保证一致性
  • -- 任务结束条件 和 后续的走向(即:网关条件) 没有交集,只有任务完成了,才会判断以后怎么走
  • -- 任务只有complete一说,没有通过和驳回说法, 通过和驳回需要业务自定义控制

6. 扩展自己按照上述方法做demo测试把

  • -- 加签:已经生成的实例中在添加一个人
  • -- 减签:某个人不签可以通过

猜你喜欢

转载自blog.csdn.net/weixin_42754896/article/details/112507127