zoukankan      html  css  js  c++  java
  • activiti6+springboot2 的第三个简单demo 动态设置任务节点处理人(多人并行 无序)

     ${nrOfCompletedInstances/nrOfInstances==1}   ==1表示所有任务实力完成才可以进入下一个节点;  ==0.75 表示 3/4的完成可进入下一节点;以此类推

        @RequestMapping("multi_assignee")
        public void setMultiAssignee() {
            //根据bpmn文件部署流程
            repositoryService.createDeployment().addClasspathResource("processes/multi_assignee.bpmn").deploy();
            // 设置多个处理人变量 这里设置了三个人
            Map<String, Object> variables = new HashMap<>();
            List<String> userList = new ArrayList<>();
            userList.add("user1");
            userList.add("user2");
            userList.add("user3");
            variables.put("userList", userList);
            //采用key来启动流程定义并设置流程变量,返回流程实例
            ProcessInstance pi = runtimeService.startProcessInstanceByKey("multi_assignee", variables);
            String processId = pi.getId();
            System.out.println("流程创建成功,当前流程实例ID:"+processId);
            // 查看user1的任务
            List<Task> list = taskService.createTaskQuery().taskAssignee("user1").list();
            if(list!=null && list.size()>0){
                for(org.activiti.engine.task.Task task:list){
                    System.out.println("任务ID:"+task.getId());
                    System.out.println("任务的办理人:"+task.getAssignee());
                    System.out.println("任务名称:"+task.getName());
                    System.out.println("任务的创建时间:"+task.getCreateTime());
                    System.out.println("流程实例ID:"+task.getProcessInstanceId());
                    System.out.println("#######################################");
                }
            }
            // 查看user2的任务
            List<Task> list2 = taskService.createTaskQuery().taskAssignee("user2").list();
            if(list2!=null && list2.size()>0){
                for(org.activiti.engine.task.Task task:list2){
                    System.out.println("任务ID:"+task.getId());
                    System.out.println("任务的办理人:"+task.getAssignee());
                    System.out.println("任务名称:"+task.getName());
                    System.out.println("任务的创建时间:"+task.getCreateTime());
                    System.out.println("流程实例ID:"+task.getProcessInstanceId());
                    System.out.println("#######################################");
                }
            }
            // 查看user3的任务
            List<Task> list3 = taskService.createTaskQuery().taskAssignee("user3").list();
            if(list3!=null && list3.size()>0){
                for(org.activiti.engine.task.Task task:list3){
                    System.out.println("任务ID:"+task.getId());
                    System.out.println("任务的办理人:"+task.getAssignee());
                    System.out.println("任务名称:"+task.getName());
                    System.out.println("任务的创建时间:"+task.getCreateTime());
                    System.out.println("流程实例ID:"+task.getProcessInstanceId());
                    System.out.println("#######################################");
                }
            }
        }
  • 相关阅读:
    ZJCTF预赛一个.py的逆向题
    if(a)是什么意思
    整理OD一些快捷键和零碎知识点
    NSCTF-Reverse02 超级详细且简单的办法搞定
    CTF实验吧——证明自己吧
    Beat our dice game and get the flag 击败我们的骰子游戏拿到旗子
    CTF-Keylead(ASIS CTF 2015)
    【第三届强网杯】两道杂项题的wp
    【实验吧】该题不简单——writeup
    嵩天老师python网课爬虫实例1的问题和解决方法
  • 原文地址:https://www.cnblogs.com/woshuaile/p/11898576.html
Copyright © 2011-2022 走看看