From 93f28c0c84fa2d18c660c7dbda18f99b43f8840f Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Tue, 6 Jul 2021 19:23:16 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E8=B0=83=E7=A0=94=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StandardSurvey/DirectorSignAfter.java | 47 ++++++++++++---- .../StandardSurvey/DockingApprovalAfter.java | 6 +- .../StandardSurvey/DockingApprovalBefore.java | 1 + .../MinisterAndDockerSignAfter.java | 55 +++++++++++++++---- .../MinisterAndDockerSignBefore.java | 1 + .../StandardSurvey/PresidentSignAfter.java | 6 +- .../StandardSurvey/ResponUserSignAfter.java | 44 +++++++++++---- .../SelectResponsibleUserAfter.java | 6 +- .../StandardSurvey/StartSurveyAfter.java | 4 ++ .../StandardSurvey/SummarySurveyAfter.java | 5 ++ .../UploadResearchResultAfter.java | 8 ++- .../UploadResearchResultBefore.java | 2 + 12 files changed, 146 insertions(+), 39 deletions(-) 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 77bd1828..7ef0759a 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 @@ -28,30 +28,29 @@ public class DirectorSignAfter implements TaskListener { queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); Datas datas = datasService.getOne(queryWrapper); - JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); - delegateTask.setVariable("objectJson",object); + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + delegateTask.setVariable("objectJson", object); List nextUserList = new ArrayList(); - if(delegateTask.getVariable("activeFlag",Integer.class)==0){ - if("1".equals(object.getString("activeFlag"))){ - delegateTask.setVariable("activeFlag",1); + if (delegateTask.getVariable("activeFlag", Integer.class) == 0) { + if ("1".equals(object.getString("activeFlag"))) { + delegateTask.setVariable("activeFlag", 1); } } - //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); String user = object.getString("prcCreateUser"); String username = object.getString("prcCreateUserName"); // object.getString("standName") String standName = ""; - String prcName = standName+"标准调研流程"; + String prcName = standName + "标准调研流程"; QueryWrapper queryWrapper2 = new QueryWrapper(); - queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); - if(one1!=null){ + if (one1 != null) { one1.setOverTime(OVERTIME); one1.setPrcType("1"); one1.setPrcName(prcName); @@ -70,10 +69,14 @@ public class DirectorSignAfter implements TaskListener { busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + QueryWrapper updataWapper=new QueryWrapper(); + 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()); @@ -84,6 +87,26 @@ public class DirectorSignAfter implements TaskListener { busProcessNewNext.setUserId(nextUser); busBean.save(busProcessNewNext); } + } else { + if (delegateTask.getVariable("activeFlag", Integer.class) == 0) { + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(object.toJSONString()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo("工程研究总院院长批准"); + busProcessNewNext.setUserId(delegateTask.getVariable("presidentUser", String.class)); + 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("startUser", String.class)); + busBean.save(busProcessNewNext); + } } } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalAfter.java index 682d0ed8..8a667969 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalAfter.java @@ -67,7 +67,11 @@ public class DockingApprovalAfter implements TaskListener { busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); + + QueryWrapper updataWapper=new QueryWrapper(); + 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) { diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalBefore.java index fc802e3a..03b9867a 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/DockingApprovalBefore.java @@ -18,6 +18,7 @@ public class DockingApprovalBefore implements TaskListener { QueryWrapper queryWrapper1 = new QueryWrapper(); queryWrapper1.isNull("TASK_ID"); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ 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 c888b597..f9d82b9a 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 @@ -32,16 +32,12 @@ public class MinisterAndDockerSignAfter implements TaskListener { delegateTask.setVariable("objectJson",object); List nextUserList = new ArrayList(); - List userList=delegateTask.getVariable("userList",List.class); if(delegateTask.getVariable("activeFlag",Integer.class)==0){ if("1".equals(object.getString("activeFlag"))){ delegateTask.setVariable("activeFlag",1); } } - if(delegateTask.getVariable("activeFlag",Integer.class)==1){ - nextUserList=userList; - } @@ -65,6 +61,10 @@ public class MinisterAndDockerSignAfter implements TaskListener { busProcessNameService.saveOrUpdate(one1); } + + + + // 存储当前节点意见 BusProcessNew busProcessNew = new BusProcessNew(); busProcessNew.setMsgType("clause"); @@ -75,21 +75,56 @@ public class MinisterAndDockerSignAfter implements TaskListener { busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + QueryWrapper updataWapper=new QueryWrapper(); + updataWapper.eq("TASK_ID",delegateTask.getId()); + updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); + busBean.update(busProcessNew,updataWapper); + + Integer count=delegateTask.getVariable("task3OKCount",Integer.class); + List userList=delegateTask.getVariable("userList",List.class); + + if(delegateTask.getVariable("activeFlag",Integer.class)==0){ + if(count==null)count=0; + count++; + delegateTask.setVariable("task3OKCount",count); + } + if(count>=userList.size()){ + if(delegateTask.getVariable("activeFlag",Integer.class)==0){ + 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); + 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)); + busBean.save(busProcessNewNext); + } + }else{ 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.setTaskInfo("标准法规工程师调研汇总"); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser", String.class)); busBean.save(busProcessNewNext); } } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignBefore.java index 4c33e9cc..dc487035 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/MinisterAndDockerSignBefore.java @@ -15,6 +15,7 @@ public class MinisterAndDockerSignBefore implements TaskListener { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); queryWrapper1.isNull("TASK_ID"); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/PresidentSignAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/PresidentSignAfter.java index fb865f55..6a4cd80c 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/PresidentSignAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/PresidentSignAfter.java @@ -68,7 +68,11 @@ public class PresidentSignAfter implements TaskListener { busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); + + QueryWrapper updataWapper=new QueryWrapper(); + 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) { 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 20c9a117..c0b759b0 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 @@ -77,26 +77,46 @@ public class ResponUserSignAfter implements TaskListener { busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + QueryWrapper updataWapper=new QueryWrapper(); + updataWapper.eq("TASK_ID",delegateTask.getId()); + updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); + busBean.update(busProcessNew,updataWapper); + + Integer count=delegateTask.getVariable("task2OKCount",Integer.class); + List responUserList=delegateTask.getVariable("responUserList",List.class); + + if(delegateTask.getVariable("activeFlag",Integer.class)==0){ + + if(count==null)count=0; + count++; + delegateTask.setVariable("task2OKCount",count); + } + if(count>=responUserList.size()){ + if(delegateTask.getVariable("activeFlag",Integer.class)==0){ + 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); + busBean.save(busProcessNewNext); + } + } + }else { 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.setTaskInfo("标准法规工程师调研汇总"); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser", String.class)); busBean.save(busProcessNewNext); } - }else { - if(delegateTask.getVariable("activeFlag",Integer.class)==0){ - - }else{ - - } } } } 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 236abb8b..b1a8081e 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 @@ -73,7 +73,11 @@ public class SelectResponsibleUserAfter implements TaskListener { busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); + + QueryWrapper updataWapper=new QueryWrapper(); + 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){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/StartSurveyAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/StartSurveyAfter.java index 29dd3332..c528b241 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/StartSurveyAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/StartSurveyAfter.java @@ -69,16 +69,20 @@ public class StartSurveyAfter implements TaskListener { busProcessNameService.saveOrUpdate(one1); } + + // 存储当前节点意见 BusProcessNew busProcessNew = new BusProcessNew(); busProcessNew.setMsgType("clause"); busProcessNew.setPId(delegateTask.getProcessInstanceId()); busProcessNew.setMesg(object.toJSONString()); busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNew.setUserId(delegateTask.getAssignee()); busProcessNew.setTaskId(delegateTask.getId()); busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); + busBean.save(busProcessNew); if(nextUserList != null && !nextUserList.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SummarySurveyAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SummarySurveyAfter.java index e2575a3b..5ec03358 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SummarySurveyAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SummarySurveyAfter.java @@ -35,6 +35,11 @@ public class SummarySurveyAfter implements TaskListener { List responUserList=delegateTask.getVariable("responUserList",List.class); + for (int i=1;i<10;i++){ + delegateTask.setVariable("task"+ i +"Count",0); + } + + delegateTask.setVariable("activeFlag",0); delegateTask.setVariable("responUserList",responUserList); nextUserList=responUserList; diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java index f16445ab..1d41e6ba 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java @@ -69,7 +69,11 @@ public class UploadResearchResultAfter implements TaskListener { busProcessNew.setCommitText(object.getString("commentText")); busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); + + QueryWrapper updataWapper=new QueryWrapper(); + 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){ @@ -90,7 +94,7 @@ public class UploadResearchResultAfter implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo("责任对接人审批"); - busProcessNewNext.setUserId(delegateTask.getAssignee()); + busProcessNewNext.setUserId(delegateTask.getVariable("dockUser",String.class)); busBean.save(busProcessNewNext); } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultBefore.java index 6a2c0f03..49ffa421 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultBefore.java @@ -15,11 +15,13 @@ public class UploadResearchResultBefore implements TaskListener { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); queryWrapper1.isNull("TASK_ID"); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ BusProcessNew one1 = list.get(0); one1.setTaskId(delegateTask.getId()); + one1.setUserId(); busBean.saveOrUpdate(one1); } }