• Camunda 动态增加会签


    先了解一下:会签,或签,加签是什么意思

    会签:几个审批人,要全部同意

    或签:几个审批人,只要有一个同意

    加签:增加审批人

    下面演示动态增加会签

    一 流程图

    我们只使用 审批1和审批2节点  演示

     

    二 设置审批1

    1 设置审批1位并行

    2 填写右边 Multi-instance 和 User assignment

    3 发布流程

     

    三 代码接口

    1 启动实例

    在审批1种,设置了一个admin为审批人

    ProcessDefinitionId 在Camunda界面上看一下。

    1. @ApiOperation("启动实例")
    2. @GetMapping("/start1")
    3. public ResponseEntity start1(processDefinitionId,businessKey){
    4. //添加审批人
    5. Map<String,Object> map = new HashMap<>();
    6. //主管审批
    7. List<String> managerList = new ArrayList<>(4);
    8. managerList.add("admin");
    9. map.put("userList",managerList);
    10. //启动实例,添加业务key
    11. Execution execution = runtimeService.startProcessInstanceById(processDefinitionId,businessKey,map);
    12. return ResponseEntity.ok(execution.getProcessInstanceId());
    13. }

    2 新增一个会签

    processInstanceId  在Camunda界面上看

    activityId 这个需要在编辑器中查看审批1节点的activityId

    1. @ApiOperation("新增一个实例,并设定开始节点")
    2. @GetMapping("/assignBefore")
    3. public ResponseEntity assignBefore(processInstanceId,activityId,user){
    4. runtimeService.createProcessInstanceModification(processInstanceId)
    5. .startBeforeActivity(activityId)
    6. .setVariable("user",user)
    7. .execute();
    8. return ResponseEntity.ok("ok");
    9. }

     可以看到,已经新增了test审批。

    四 或签

     或签的区别,其实和简单

    只是在Multi-instance中增加 ${nrOfCompletedInstances == 1}  代表1人审核通过,就通过。

    nrOfCompletedInstances 是内置变量,无需声明。

     

     

  • 相关阅读:
    Java并发常见面试题(二)
    Rust依赖包下载慢的问题
    pytorch 多分类中的损失函数
    短信拦截转发器----Android
    内存管理_memblock
    如何在Nginx上启用HTTPS
    Kotlin协程之Dispatchers原理
    美术馆预约小程序|基于微信小程序的美术馆预约平台设计与实现(源码+数据库+文档)
    结合实战,浅析GB/T28181(六)——解码上墙
    SpringBoot整合阿里云短信服务
  • 原文地址:https://blog.csdn.net/hanjun0612/article/details/126247938