From e82ad2e9675be0d3adf46e7949702acd84448abf Mon Sep 17 00:00:00 2001 From: yuezhihang Date: Thu, 16 Dec 2021 09:46:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=81=E6=B1=82=E6=84=8F=E8=A7=81=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E6=B1=87=E6=80=BBbug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StartSurveyAfter.java | 4 ++++ .../StandardCommentNewProcess/Step1After.java | 16 +++++----------- .../StandardCommentNewProcess/Step2After.java | 14 +++++++------- 3 files changed, 16 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/StartSurveyAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/StartSurveyAfter.java index 96fcaa7f..2737d688 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/StartSurveyAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/StartSurveyAfter.java @@ -15,6 +15,7 @@ import com.ydw.bat.wkflow.util.http.ResponseMessage; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; import java.util.*; @@ -91,7 +92,9 @@ public class StartSurveyAfter implements TaskListener { busBean.save(busProcessNew); if(nextUserList != null && !nextUserList.isEmpty()){ + int i=0; for(String nextUser : nextUserList){ + object.put("onlyKey", i); BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -102,6 +105,7 @@ public class StartSurveyAfter implements TaskListener { busProcessNewNext.setUserId(nextUser); busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); + i++; } }else{ BusProcessNew busProcessNewNext = new BusProcessNew(); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step1After.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step1After.java index 61277caa..424d9eff 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step1After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step1After.java @@ -44,18 +44,12 @@ public class Step1After implements TaskListener { nextUserList.add(object.getString("responUserList")); } delegateTask.setVariable("zrIdList",nextUserList); - if (null==delegateTask.getVariable("zrList")){ - delegateTask.setVariable("zrList",nextUserList); + if (null==delegateTask.getVariable("zrList"+object.getString("onlyKey"))){ + delegateTask.setVariable("zrList"+object.getString("onlyKey"),nextUserList); }else { - List strings=delegateTask.getVariable("zrList",List.class); - List middle=new ArrayList<>(); - nextUserList.forEach(s -> { - if (!strings.contains(s)){ - middle.add(s); - } - }); - strings.addAll(middle); - delegateTask.setVariable("zrList",strings); + List strings=delegateTask.getVariable("zrList"+object.getString("onlyKey"),List.class); + strings.addAll(nextUserList); + delegateTask.setVariable("zrList"+object.getString("onlyKey"),strings); } //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step2After.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step2After.java index 86a1e123..8f6dbd5c 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step2After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardCommentNewProcess/Step2After.java @@ -37,16 +37,16 @@ public class Step2After implements TaskListener { List nextUserList = new ArrayList(); //整备数据 - if (null==delegateTask.getVariable("count")){ - delegateTask.setVariable("count",1); + if (null==delegateTask.getVariable("count"+object.getString("onlyKey"))){ + delegateTask.setVariable("count"+object.getString("onlyKey"),1); }else { - delegateTask.setVariable("count",delegateTask.getVariable("count",Integer.class)+1); + delegateTask.setVariable("count"+object.getString("onlyKey"),delegateTask.getVariable("count"+object.getString("onlyKey"),Integer.class)+1); } - if (delegateTask.getVariable("count",Integer.class) == delegateTask.getVariable("zrIdList",List.class).size()){ + if (delegateTask.getVariable("count"+object.getString("onlyKey"),Integer.class) == delegateTask.getVariable("zrList"+object.getString("onlyKey"),List.class).size()){ //对数据进行合并归属 QueryWrapper wrapper=new QueryWrapper<>(); - wrapper.eq("TASK_ID","SCN"); + wrapper.eq("TASK_ID",object.getString("onlyKey")); wrapper.eq("P_ID",delegateTask.getProcessInstanceId()); List busProcessNews= busBean.list(wrapper); @@ -101,8 +101,8 @@ public class Step2After implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); - if (delegateTask.getVariable("count",Integer.class) < delegateTask.getVariable("zrIdList",List.class).size()){ - busProcessNewNext.setTaskId("SCN"); + if (delegateTask.getVariable("count"+object.getString("onlyKey"),Integer.class) < delegateTask.getVariable("zrList"+object.getString("onlyKey"),List.class).size()){ + busProcessNewNext.setTaskId(object.getString("onlyKey")); } busProcessNewNext.setTaskInfo(delegateTask.getName()); busProcessNewNext.setUserId(nextUser);