先了解一下:会签,或签,加签是什么意思
会签:几个审批人,要全部同意
或签:几个审批人,只要有一个同意
加签:增加审批人
我们只使用 审批1和审批2节点 演示


在审批1种,设置了一个admin为审批人
ProcessDefinitionId 在Camunda界面上看一下。
- @ApiOperation("启动实例")
- @GetMapping("/start1")
- public ResponseEntity start1(processDefinitionId,businessKey){
- //添加审批人
- Map<String,Object> map = new HashMap<>();
- //主管审批
- List<String> managerList = new ArrayList<>(4);
- managerList.add("admin");
- map.put("userList",managerList);
-
- //启动实例,添加业务key
- Execution execution = runtimeService.startProcessInstanceById(processDefinitionId,businessKey,map);
- return ResponseEntity.ok(execution.getProcessInstanceId());
- }

processInstanceId 在Camunda界面上看
activityId 这个需要在编辑器中查看审批1节点的activityId,
- @ApiOperation("新增一个实例,并设定开始节点")
- @GetMapping("/assignBefore")
- public ResponseEntity assignBefore(processInstanceId,activityId,user){
-
- runtimeService.createProcessInstanceModification(processInstanceId)
- .startBeforeActivity(activityId)
- .setVariable("user",user)
- .execute();
-
- return ResponseEntity.ok("ok");
- }

可以看到,已经新增了test审批。
或签的区别,其实和简单
只是在Multi-instance中增加 ${nrOfCompletedInstances == 1} 代表1人审核通过,就通过。
nrOfCompletedInstances 是内置变量,无需声明。
