一、需求
用户发起审批后,需要经过 总经理 以及 财务部长 两人同时审批。两人通过极为通过,一人拒绝即为拒绝。拒绝后用户修改重新审批或者放弃申请。
二、用到的东西
1 单一网关
2 用户任务(多实例)
三、使用
1.流程图
2. 设置②用户任务
多实例类型:设置为并行,生成的多条任务同时存在
集合:是指需要接收任务的人员的集合(使用表达式获取流程的参数)
元素的变量:自己随意设置,但是设置的值与下面的 任务派遣 相对应
完成条件:使用表达式 up指 通过人数 ,down指驳回人数
任务派遣:使用表达式 表达式的值与上面的 元素的变量值相同
3.设置流程参数
在①处使用执行监听器设置参数:部分代码如下
@Override
public void notify(DelegateExecution delegateExecution) throws Exception {
List<String> contractManagers = new ArrayList<String>();
contractManagers.add(allDeputyDirector);
contractManagers.add(financeDepartmentManager);
delegateExecution.setVariable("contractManagers",contractManagers);
delegateExecution.setVariable("down",0);
delegateExecution.setVariable("up",0);
}
四、③和④的地方要使用单一网关,如果直接连线会出现一直走一条线的错误,希望有人解答一下