From 818373c0ab2d42fca47880d7bd61aa3d85bc52fb Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 10 Feb 2025 11:56:46 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8F=90=E4=BA=A42?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flowable/biz/flow3/Flow3Service.java | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java index c86f378622..730cf2b86b 100644 --- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java +++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow3/Flow3Service.java @@ -234,8 +234,10 @@ public class Flow3Service extends MybatisBaseService { nextUserSid = ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId(); adminContains = true; } else { - userSidForNextNode = listResultBean.getData(); - formVariables.put("approvers", listResultBean.getData()); + if(!listResultBean.getData().isEmpty()){ + userSidForNextNode = listResultBean.getData(); + formVariables.put("approvers", listResultBean.getData()); + } } } else { //若下一环节用户与系统管理员一致,则自动审批 @@ -279,6 +281,7 @@ public class Flow3Service extends MybatisBaseService { isMultiInstanceTaskNext = true; } else { + nextUserSid = userSidForNextNode.get(0); //查询下一环节用户是否有转办人 nextUserSid = change(nextUserSid, bv.getInstanceId()); taskService.setAssignee(task2.getId(), nextUserSid);//将下一环节用户放入流程中 @@ -296,6 +299,12 @@ public class Flow3Service extends MybatisBaseService { } + }else{//会签 + Task task2 = tasks.get(0); + vo.setTaskId(task2.getId()); + nodeState = task2.getName(); + taskDefKey = task2.getTaskDefinitionKey(); + } if (!isMultiInstanceTaskNext) { //获取该流程所有要走的环节节点 @@ -874,10 +883,19 @@ public class Flow3Service extends MybatisBaseService { if (sysUserVos == null || sysUserVos.size() < 1) { log.error("下一环节无用户填充管理员用户"); return rb; + }else{ + StringBuilder nextNodeUserSids = new StringBuilder(); + for (SysUserVo su : sysUserVos) { + nextNodeUserSids.append(su.getSid()).append(","); + } + //符合条件的用户的sid,拼接的字符串 + nextNodeUserSids_ = nextNodeUserSids.toString(); + nextNodeUserSids_ = nextNodeUserSids_.substring(0, nextNodeUserSids_.length() - 1); } } else { if (sysUserVos == null || sysUserVos.size() < 1) { - continue; +// continue; + nextNodeUserSids_ = ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId(); } else { StringBuilder nextNodeUserSids = new StringBuilder(); for (SysUserVo su : sysUserVos) {