فهرست منبع

fix:发起流程接口开始结束节点的执行人数据紊乱的bug

韩帛霖 1 سال پیش
والد
کامیت
7125742864

+ 9 - 3
zkqy-process-execution/src/main/java/com/zkqy/execution/produce/dispersed/runbpm/PreExecutionToolClass.java

@@ -109,7 +109,9 @@ public class PreExecutionToolClass<R> {
         bpmProcessConfigurationList.forEach(item -> {
             BpmUserScriptVo bpmUserScriptVo = new BpmUserScriptVo();
             bpmUserScriptVo.setNodeKey(item.getNodeKey());
-            bpmUserScriptVo.setBpmNodeHandleUserList(bpmNodeHandleUserMapper.selectBpmNodeHandleUserList(new BpmNodeHandleUser(item.getNodeRolePermission())));
+            if (item.getNodeRolePermission() != null) {
+                bpmUserScriptVo.setBpmNodeHandleUserList(bpmNodeHandleUserMapper.selectBpmNodeHandleUserList(new BpmNodeHandleUser(item.getNodeRolePermission())));
+            }
             bpmUserScriptVo.setBpmNodeScriptRelevanceList(bpmNodeScriptRelevanceMapper.selectBpmNodeScriptRelevanceList(new BpmNodeScriptRelevance(item.getNodeKey())));
             bpmNodeScriptRelevanceList.addAll(bpmUserScriptVo.getBpmNodeScriptRelevanceList());
             bpmUserScriptVoList.add(bpmUserScriptVo);
@@ -175,9 +177,13 @@ public class PreExecutionToolClass<R> {
             // 节点标识
             bpmExecuteNodeMiddle.setTaskNodeKey(item.getNodeKey());
             // 节点执行角色编码
-            bpmExecuteNodeMiddle.setTaskRealRole(item.getBpmNodeHandleUserList().get(index).getRealRole());
+            if (item.getBpmNodeHandleUserList() != null) {
+                bpmExecuteNodeMiddle.setTaskRealRole(item.getBpmNodeHandleUserList().get(index).getRealRole());
+            }
             // 节点执行用户id
-            bpmExecuteNodeMiddle.setTaskExecuteUserNo(item.getBpmNodeHandleUserList().get(index).getExecuteUserNo());
+            if (item.getBpmNodeHandleUserList() != null) {
+                bpmExecuteNodeMiddle.setTaskExecuteUserNo(item.getBpmNodeHandleUserList().get(index).getExecuteUserNo());
+            }
             // 节点手动触发脚本
             List<String> script0 = new ArrayList<>(), script1 = new ArrayList<>(), script2 = new ArrayList<>();// 异常手动触发 // 正常自动触发 // 节点前后自动触发
             item.getBpmNodeScriptRelevanceList().forEach(stem -> {