

${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("#######################################");
}
}
}
