Parcourir la source

activiti工作流整合

wangliang il y a 4 ans
Parent
commit
d902c9f9c7

+ 2 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/activiti/MyTask1Listener.java

@@ -6,6 +6,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -22,9 +23,6 @@ public class MyTask1Listener implements TaskListener {
     public void notify(DelegateTask delegateTask) {
         log.info("delegateTask.getEventName():{}", delegateTask.getEventName());
         //添加会签的人员,所有的都审批通过才可进入下一环节
-        List<String> assigneeIdsList = new ArrayList<String>();
-        assigneeIdsList.add("张三");
-        assigneeIdsList.add("李四");
-        delegateTask.setVariable("assigneeIds", assigneeIdsList);
+        delegateTask.setVariable("assigneeList", Arrays.asList("张三", "李四"));
     }
 }

+ 1 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/activiti/MyTask2Listener.java

@@ -23,7 +23,6 @@ public class MyTask2Listener implements TaskListener {
     public void notify(DelegateTask delegateTask) {
         log.info("delegateTask.getEventName():{}", delegateTask.getEventName());
         //添加会签的人员,一人通过即可进入下一环节
-        String[] empLoyees = {"王总", "赵总"};
-        delegateTask.addCandidateUsers(Arrays.asList(empLoyees));
+        delegateTask.addCandidateUsers(Arrays.asList("王总", "赵总"));
     }
 }

+ 16 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ActivitiServiceImpl.java

@@ -75,6 +75,22 @@ public class ActivitiServiceImpl implements ActivitiService {
 //        List<Task> tasks = taskService.createTaskQuery().taskAssignee("test123").orderByTaskCreateTime().desc().list();
         List<Task> tasks = taskService.createTaskQuery().list();
 //        Task task1 = taskService.createTaskQuery().processInstanceId("22531").singleResult();
+//        Task task1 = taskService.createTaskQuery()
+//                .processDefinitionKey("myProcess3")
+//                .taskCandidateUser("赵总")//设置候选用户
+//                .singleResult();
+//        Task task2 = taskService.createTaskQuery()
+//                .processDefinitionKey("myProcess3")
+//                .taskCandidateUser("王总")//设置候选用户
+//                .singleResult();
+//        Task task3 = taskService.createTaskQuery()
+//                .processDefinitionKey("myProcess3")
+//                .taskCandidateUser("王总1")//设置候选用户
+//                .singleResult();
+//        Task task4 = taskService.createTaskQuery()
+//                .processDefinitionKey("myProcess3")
+//                .taskCandidateUser("赵总1")//设置候选用户
+//                .singleResult();
         for (Task t : tasks) {
             log.info("assignee:{},createTime:{},id:{},getProcessDefinitionId:{},name:{},processInstanceId:{},taskDefinitionKey:{},parentTaskId:{}", t.getAssignee(), t.getCreateTime(), t.getId(), t.getProcessDefinitionId(), t.getName(), t.getProcessInstanceId(), t.getTaskDefinitionKey(), t.getParentTaskId());
         }

+ 1 - 1
distributed-print/src/main/resources/processes/MyProcess3.bpmn

@@ -15,7 +15,7 @@
     <sequenceFlow id="flow2" sourceRef="usertask1" targetRef="usertask2"></sequenceFlow>
     <sequenceFlow id="_2" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
     <userTask id="usertask3" name="总监审批" activiti:assignee="${assignee}">
-      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="${assigneeIds}" activiti:elementVariable="assignee"></multiInstanceLoopCharacteristics>
+      <multiInstanceLoopCharacteristics isSequential="false" activiti:collection="${assigneeList}" activiti:elementVariable="assignee"></multiInstanceLoopCharacteristics>
     </userTask>
     <sequenceFlow id="flow3" sourceRef="usertask2" targetRef="usertask3"></sequenceFlow>
     <endEvent id="endevent1" name="End"></endEvent>