会签:指同一个审批节点设置多个人,如ABC三人,三人会同时收到审批,需全部同意之后,审批才可到下一审批节点;
或签:也有叫“竞签”、“串签”:指同一个审批节点设置多个人,如ABC三人,三人会同时收到审批,只要其中任意一人审批即可到下一审批节点
顺签:指同一个审批节点设置多个人,如ABC三人,三人会按顺序A先收到审批,A同意后才通知B审批,以此类推,如果有任意人拒接就结束流程;
多实例内置变量
1:nrOfInstances:实例总数
2:nrOfActiveInstances:当前活动的实例数,对于顺序执行的多实例,值一直为1
3:nrOfCompletedInstances:已经完成实例的数目
说明:
多实例类型(Multi-instance type) : 有两种类型,并行(parallel)和串行(sequntial)
集合(多实例)Collection(Multi-instance): 动态集合,根据变量传入
完成条件(多实例)Completion condition(Multi-instance): 任务结束条件,默认全部完成
元素变量(多实例)Element variable(Multi-instance): 遍历后每一项的别名
基数(多实例)Cardinality(multi-instance) : 手动指定多实例循环几次
1-1:第一种方法:或签设置,完成条件(多实例)设置 ${nrOfCompletedInstances>=1},表示只要其中任意一人审批同意即可到下一审批节点,集合(多实例)中的name为表单或者变量传入,元素变量user为集合name每次遍历的别名,代理 ${user}为获取元素变量user,保持一致
设置对应的节点变量(注意每次设置节点,只能设置一种类型(不然审核异常),例如,当前节点设置了变量,就不要设置直接选择人员或者部门其他的,同理一样)
1-2:第二种方法:或签设置,只需要任意一人审批即可到下一审批节点
输入表单表里:name里面可以是多个用户,类型admin1,admin2,admin3,再根据业务进行处理
2:会签设置,只需要件完成条件设置成默认即空,表示需全部同意之后,审批才可到下一审批节点
3:顺签,设置多实例类型为串行(sequntial),其他设置和会签一样
4:实现监听事件
package org.jeecg.listener;
import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.Expression;
import org.activiti.engine.delegate.JavaDelegate;
import java.io.Serializable;
/**
* @Author xu
* @create 2023/5/12 18
*/
public class RegistEndStatusListener implements JavaDelegate, Serializable {
private Expression status;
@Override
public void execute(DelegateExecution execution) {
System.out.println("==========");
System.out.println("----------");
}
}