diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DirectorSignAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DirectorSignAfter.java index 497cd854..bab5ae76 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DirectorSignAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DirectorSignAfter.java @@ -32,11 +32,24 @@ public class DirectorSignAfter implements TaskListener { delegateTask.setVariable("objectJson", object); List nextUserList = new ArrayList(); - + //设置一个计数器 + if (null!=delegateTask.getVariable("countSign",Integer.class)){ + delegateTask.setVariable("countSign",delegateTask.getVariable("countSign",Integer.class)+1); + }else { + delegateTask.setVariable("countSign",1); + } if (delegateTask.getVariable("actionFlag", Integer.class) == 0) { if ("1".equals(object.getString("actionFlag"))) { delegateTask.setVariable("actionFlag", 1); - nextUserList.add(delegateTask.getVariable("startUser",String.class)); + delegateTask.setVariable("7Mark","false"); + }else { + delegateTask.setVariable("actionFlag",0); + if (delegateTask.getVariable("countSign",Integer.class)==1){ + delegateTask.setVariable("7Mark","true"); + } + else if ("true"==delegateTask.getVariable("7Mark",String.class)){ + delegateTask.setVariable("7Mark","true"); + } } } @@ -72,22 +85,9 @@ public class DirectorSignAfter implements TaskListener { updataWapper.eq("TASK_ID",delegateTask.getId()); updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); busBean.update(busProcessNew,updataWapper); - - if (nextUserList != null && !nextUserList.isEmpty()) { - for (String nextUser : nextUserList) { - BusProcessNew busProcessNewNext = new BusProcessNew(); - busProcessNewNext.setMsgType("clause"); - busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); - busProcessNewNext.setMesg(object.toJSONString()); - busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); - busProcessNewNext.setFinishFlag("0"); - busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser); - busProcessNewNext.setPrcName(prcName); - busBean.save(busProcessNewNext); - } - } else { - if (delegateTask.getVariable("actionFlag", Integer.class) == 0) { + if (delegateTask.getVariable("countSign",Integer.class)>=delegateTask.getVariable("directorUserList",List.class).size()) { + if ("true".equals(delegateTask.getVariable("7Mark", String.class))) { + delegateTask.setVariable("actionFlag", 0); BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -98,6 +98,8 @@ public class DirectorSignAfter implements TaskListener { busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } else { + delegateTask.setVariable("actionFlag", 1); + delegateTask.setVariable("countSign",0); BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignAfter.java index 46e723a9..aab49c3c 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignAfter.java @@ -14,6 +14,7 @@ import org.activiti.engine.delegate.TaskListener; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.List; @@ -99,29 +100,21 @@ public class MinisterAndDockerSignAfter implements TaskListener { if (gose+1==userList.size()) { if (count >= userList.size()) { if (delegateTask.getVariable("actionFlag", Integer.class) == 0) { + nextUserList.addAll(new ArrayList<>(Arrays.asList(delegateTask.getVariable("directorUser", String.class).split(",")))); + delegateTask.setVariable("directorUserList",nextUserList); if (nextUserList != null && !nextUserList.isEmpty()) { for (String nextUser : nextUserList) { BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); busProcessNewNext.setMesg(object.toJSONString()); - busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setTaskInfo("技术委员会相关专委会主任/研究总院职能部门领导,技术管理中心主任审定"); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); busProcessNewNext.setUserId(nextUser); busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } - } else { - BusProcessNew busProcessNewNext = new BusProcessNew(); - busProcessNewNext.setMsgType("clause"); - busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); - busProcessNewNext.setMesg(object.toJSONString()); - busProcessNewNext.setFinishFlag("0"); - busProcessNewNext.setTaskInfo("技术委员会相关专委会主任/研究总院职能部门领导,技术管理中心主任审定"); - busProcessNewNext.setUserId(delegateTask.getVariable("directorUser", String.class)); - busProcessNewNext.setPrcName(prcName); - busBean.save(busProcessNewNext); } } else { BusProcessNew busProcessNewNext = new BusProcessNew(); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java index 8f41809c..7d0c452e 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java @@ -96,7 +96,7 @@ public class ResponUserSignAfter implements TaskListener { count++; delegateTask.setVariable("task2OKCount",count); } - if(count>=responUserList.size()){ + if(count>=delegateTask.getVariable("responUserLists",List.class).size()){ if(delegateTask.getVariable("actionFlag",Integer.class)==0){ if(nextUserList != null && !nextUserList.isEmpty()){ for(String nextUser : nextUserList){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserAfter.java index a9f23a95..628b50ca 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserAfter.java @@ -111,7 +111,7 @@ public class SelectResponsibleUserAfter implements TaskListener { count++; delegateTask.setVariable("selectResponCount",count); -// if(count>=delegateTask.getVariable("dockUserList",List.class).size()){ + if(count>=delegateTask.getVariable("dockUserList",List.class).size()){ if(!responUserList.isEmpty()){ for (int i = 0; i < responUserList.size(); i++) { JSONObject jsonObject = responUserList.getJSONObject(i); @@ -127,7 +127,7 @@ public class SelectResponsibleUserAfter implements TaskListener { busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } -// } + } } // throw new ActivitiException("dahsdgadiauhfugauyfgqffiygv"); }