Forráskód Böngészése

优化空审批人处理

caixiaofeng 6 hónapja
szülő
commit
c76de6f49b

+ 2 - 2
flow-common/flow-common-flowable-starter/src/main/java/com/flow/flowable/cmd/JumpActivityCmd.java

@@ -1,7 +1,7 @@
 package com.flow.flowable.cmd;
 
 
-import com.flow.flowable.utils.ProcessUtil;
+import com.flow.flowable.utils.ProcessElementUtil;
 import org.flowable.bpmn.model.BpmnModel;
 import org.flowable.bpmn.model.FlowElement;
 import org.flowable.common.engine.api.FlowableException;
@@ -37,7 +37,7 @@ public class JumpActivityCmd implements Command<List<String>> {
         }
         BpmnModel bpmnModel = ProcessDefinitionUtil.getBpmnModel(processInstance.getProcessDefinitionId());
         FlowElement flowElement = bpmnModel.getFlowElement(activityId);
-        Set<FlowElement> childElements = ProcessUtil.findChildElements(flowElement);
+        Set<FlowElement> childElements = ProcessElementUtil.findChildElements(flowElement);
         Set<String> nodeIds = childElements.stream().map(FlowElement::getId).collect(Collectors.toSet());
         // 获取要跳转执行
         List<ExecutionEntity> executions = executionManager.findChildExecutionsByParentExecutionId(processInstanceId);

+ 1 - 1
flow-common/flow-common-flowable-starter/src/main/java/com/flow/flowable/utils/ProcessUtil.java → flow-common/flow-common-flowable-starter/src/main/java/com/flow/flowable/utils/ProcessElementUtil.java

@@ -9,7 +9,7 @@ import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Set;
 
-public class ProcessUtil {
+public class ProcessElementUtil {
 
     /**
      * 递归查找所有子节点

+ 1 - 1
flow-workflow/flow-workflow-biz/src/main/java/com/flow/listener/GlobalActivityEventListener.java

@@ -73,7 +73,7 @@ public class GlobalActivityEventListener extends AbstractFlowableEngineEventList
                 return;
             }
             // 审批人为空方式
-            if (StringUtils.isBlank(entity.getAssignee()) || "empty".equals(entity.getAssignee())) {
+            if (StringUtils.isBlank(entity.getAssignee()) || "-000000".equals(entity.getAssignee())) {
                 entity.setAssignee("admin");
                 taskService.setAssignee(entity.getId(), "admin");
                 if (nobody == ApprovalNobodyEnum.PASS) {

+ 2 - 2
flow-workflow/flow-workflow-biz/src/main/java/com/flow/service/impl/FlowTaskServiceImpl.java

@@ -19,7 +19,7 @@ import com.flow.enums.ProcessStatus;
 import com.flow.flowable.cmd.GetLoopCharacteristics;
 import com.flow.flowable.cmd.GetMultiInstanceRootExecution;
 import com.flow.flowable.cmd.JumpActivityCmd;
-import com.flow.flowable.utils.ProcessUtil;
+import com.flow.flowable.utils.ProcessElementUtil;
 import com.flow.model.*;
 import com.flow.service.FlowActivityService;
 import com.flow.service.FlowDefineService;
@@ -451,7 +451,7 @@ public class FlowTaskServiceImpl extends BaseServiceImpl<FlowTaskDao, FlowTask>
             throw new BaseException("任务不存在");
         }
         BpmnModel model = repositoryService.getBpmnModel(taskInfo.getProcessDefinitionId());
-        Set<UserTask> parentElements = ProcessUtil.findParentElements(model.getFlowElement(taskInfo.getTaskDefinitionKey()), UserTask.class);
+        Set<UserTask> parentElements = ProcessElementUtil.findParentElements(model.getFlowElement(taskInfo.getTaskDefinitionKey()), UserTask.class);
         String sql = "SELECT t1.ID_,t1.ACT_ID_,t1.ACT_NAME_ FROM ACT_RU_ACTINST AS t1 WHERE " +
                 "END_TIME_ = ( SELECT MAX( END_TIME_ ) FROM ACT_RU_ACTINST AS t2 WHERE t1.PROC_INST_ID_ = t2.PROC_INST_ID_ AND t1.ACT_ID_ = t2.ACT_ID_ ) " +
                 "AND t1.PROC_INST_ID_ = #{processInstanceId} " +

+ 3 - 3
flow-workflow/flow-workflow-entity/src/main/java/com/flow/entity/node/ApprovalNode.java

@@ -141,7 +141,7 @@ public class ApprovalNode extends AssigneeNode {
                     User user = optional.get();
                     assignees.set(indexOf, user.getUsername());
                 } else {
-                    assignees.set(indexOf, "empty");
+                    assignees.set(indexOf, "-000000");
                 }
             } else if (same == ApprovalSameEnum.ORG_LEADER) {
                 User orgLeader = userService.getOrgLeader(userId);
@@ -150,7 +150,7 @@ public class ApprovalNode extends AssigneeNode {
                     User user = optional.get();
                     assignees.set(indexOf, user.getUsername());
                 } else {
-                    assignees.set(indexOf, "empty");
+                    assignees.set(indexOf, "-000000");
                 }
             }
         }
@@ -162,7 +162,7 @@ public class ApprovalNode extends AssigneeNode {
             } else if (nobody == ApprovalNobodyEnum.ADMIN) {
                 assignees.addAll(flowDefine.getAdmin());
             } else {
-                assignees.add("empty");
+                assignees.add("-000000");
             }
         }
         return assignees;