From 572ff912cf7d636d789b1e2ce84c6b05810ce52d Mon Sep 17 00:00:00 2001 From: yinglong zhang <1679309912@qq.com> Date: Wed, 14 Jul 2021 14:58:47 +0800 Subject: [PATCH 1/4] =?UTF-8?q?add=20=E6=9C=AA=E5=90=88=E8=A7=84=E6=95=B4?= =?UTF-8?q?=E6=94=B9=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SelectResponUserAfter.java | 1 - .../StandardSurvey/DirectorSignAfter.java | 48 +++++++------------ .../StandardSurvey/DockingApprovalAfter.java | 5 +- .../MinisterAndDockerSignAfter.java | 35 +++++--------- .../StandardSurvey/PresidentSignAfter.java | 13 ----- .../StandardSurvey/ResponUserSignAfter.java | 14 +++--- .../StandardSurvey/ResponUserSignBefore.java | 1 + .../SelectResponsibleUserAfter.java | 44 ++++++++--------- .../SelectResponsibleUserBefore.java | 2 + .../StandardSurvey/StartSurveyAfter.java | 28 +++++++---- .../StandardSurvey/SummarySurveyAfter.java | 11 +++-- .../UploadResearchResultAfter.java | 30 ++++-------- 12 files changed, 94 insertions(+), 138 deletions(-) diff --git a/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java index 98a2cfc4..8234b0ee 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java @@ -76,7 +76,6 @@ public class SelectResponUserAfter implements TaskListener { jsonObject.put("dockUser",preResponUser.getString("dockUser")); jsonObject.put("info",standardInfoList.get(i)); - responUserList.add(jsonObject); } } 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 be622c35..47ebf5cc 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 @@ -75,38 +75,24 @@ public class DirectorSignAfter implements TaskListener { 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); - busBean.save(busProcessNewNext); - } + if (delegateTask.getVariable("actionFlag", 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", JSONObject.class).getString("id")); + busBean.save(busProcessNewNext); } else { - if (delegateTask.getVariable("actionFlag", 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); - } + 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", JSONObject.class).getString("id")); + 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 691a469f..9fe60574 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 @@ -1,5 +1,6 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; + import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -90,7 +91,7 @@ public class DockingApprovalAfter implements TaskListener { if(delegateTask.getVariable("actionFlag",Integer.class)==0){ Integer count=delegateTask.getVariable("task1Count",Integer.class); - List responUserList=delegateTask.getVariable("responUserList",List.class); + JSONArray responUserList=delegateTask.getVariable("responUserList",JSONArray.class); if(count==null)count=0; count++; delegateTask.setVariable("task1Count",count); @@ -102,7 +103,7 @@ public class DockingApprovalAfter implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo("标准法规工程师调研汇总"); - busProcessNewNext.setUserId(delegateTask.getVariable("startUser",String.class)); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser",JSONObject.class).getString("id")); busBean.save(busProcessNewNext); } 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 d4ee35cc..ce98aa12 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 @@ -1,5 +1,6 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -82,7 +83,7 @@ public class MinisterAndDockerSignAfter implements TaskListener { busBean.update(busProcessNew,updataWapper); Integer count=delegateTask.getVariable("task3OKCount",Integer.class); - List userList=delegateTask.getVariable("userList",List.class); + JSONArray userList=delegateTask.getVariable("userList",JSONArray.class); if(delegateTask.getVariable("actionFlag",Integer.class)==0){ if(count==null)count=0; @@ -91,28 +92,14 @@ public class MinisterAndDockerSignAfter implements TaskListener { } if(count>=userList.size()){ if(delegateTask.getVariable("actionFlag",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); - } + 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",JSONObject.class).getString("id")); + busBean.save(busProcessNewNext); }else{ BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); @@ -120,7 +107,7 @@ public class MinisterAndDockerSignAfter implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo("标准法规工程师调研汇总"); - busProcessNewNext.setUserId(delegateTask.getVariable("startUser", String.class)); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser",JSONObject.class).getString("id")); busBean.save(busProcessNewNext); } } 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 6a4cd80c..4e3d990a 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 @@ -74,18 +74,5 @@ public class PresidentSignAfter implements TaskListener { 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); - busBean.save(busProcessNewNext); - } - } } } 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 895a5bc2..68a2db61 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 @@ -1,5 +1,6 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -32,9 +33,9 @@ public class ResponUserSignAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - List nextUserList = new ArrayList(); - List userList=delegateTask.getVariable("userList",List.class); - String startUser=delegateTask.getVariable("startUser",String.class); + JSONArray nextUserList = new JSONArray(); + JSONArray userList=delegateTask.getVariable("userList",JSONArray.class); + JSONObject startUser=delegateTask.getVariable("startUser",JSONObject.class); if(delegateTask.getVariable("actionFlag",Integer.class)==0){ if("1".equals(object.getString("actionFlag"))){ @@ -98,7 +99,8 @@ public class ResponUserSignAfter implements TaskListener { if(count>=responUserList.size()){ if(delegateTask.getVariable("actionFlag",Integer.class)==0){ if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + for (int i = 0; i < nextUserList.size(); i++) { + JSONObject nextUser=nextUserList.getJSONObject(i); BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -106,7 +108,7 @@ public class ResponUserSignAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setUserId(nextUser.getString("id")); busBean.save(busProcessNewNext); } } @@ -117,7 +119,7 @@ public class ResponUserSignAfter implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo("标准法规工程师调研汇总"); - busProcessNewNext.setUserId(delegateTask.getVariable("startUser", String.class)); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser", JSONObject.class).getString("id")); busBean.save(busProcessNewNext); } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java index 64ed8384..b36328dc 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java @@ -15,6 +15,7 @@ public class ResponUserSignBefore 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/SelectResponsibleUserAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserAfter.java index 727381d6..e7b1bafc 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 @@ -33,31 +33,20 @@ public class SelectResponsibleUserAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - List nextUserList = new ArrayList(); - String userListString=object.getString("responUserList"); - String userListStringName=object.getString("responUserListName"); + JSONArray nextUserList = new JSONArray(); - List userList = Arrays.asList(userListString.split(",")); - for (int i = 0; i < userList.size(); i++) { - nextUserList.add(userList.get(i).trim()); + JSONArray preResponUserList = object.getJSONArray("responUserList"); + JSONArray responUserList=delegateTask.getVariable("responUserList",JSONArray.class); + if(responUserList==null)responUserList=new JSONArray(); + for (int i = 0; i < preResponUserList.size(); i++) { + JSONObject preResponUser=preResponUserList.getJSONObject(i); + preResponUser.put("dockUser",delegateTask.getAssignee()); + responUserList.add(preResponUser); } - List userListName=Arrays.asList(userListStringName.split(",")); - List newUserListName = new ArrayList(); - userListName.forEach((String name)->{ - newUserListName.add(name.trim()); - }); - JSONObject userListJson=new JSONObject(); - for (int i = 0; i < userList.size(); i++) { - JSONObject json=new JSONObject(); - json.put("id",userList.get(i)); - json.put("name",newUserListName.get(i)); - userListJson.put(userList.get(i),json); - } - delegateTask.setVariable("responUserListMap",userListJson.toJSONString()); - - delegateTask.setVariable("responUserList",nextUserList); + delegateTask.setVariable("responUserList",responUserList); + nextUserList=responUserList; //截止时间 流程描述 创建人 @@ -95,8 +84,14 @@ public class SelectResponsibleUserAfter implements TaskListener { updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); busBean.update(busProcessNew,updataWapper); - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + Integer count=delegateTask.getVariable("selectResponCount",Integer.class); + if(count==null)count=0; + count++; + delegateTask.setVariable("selectResponCount",count); + + if(count>=delegateTask.getVariable("dockUserList",JSONArray.class).size()){ + for (int i = 0; i < nextUserList.size(); i++) { + JSONObject nextUser=nextUserList.getJSONObject(i); BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -104,9 +99,10 @@ public class SelectResponsibleUserAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setUserId(nextUser.getString("id")); busBean.save(busProcessNewNext); } } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java index 96b280ee..3ac24d7b 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java @@ -16,6 +16,8 @@ public class SelectResponsibleUserBefore implements TaskListener { QueryWrapper queryWrapper1 = new QueryWrapper(); queryWrapper1.isNull("TASK_ID"); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ BusProcessNew one1 = list.get(0); 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 46d05c2d..2fca5a19 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 @@ -1,5 +1,6 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -34,21 +35,25 @@ public class StartSurveyAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - List nextUserList = new ArrayList(); - List userList=new ArrayList<>(); + JSONArray nextUserList = new JSONArray(); + JSONArray userList=new JSONArray(); - delegateTask.setVariable("startUser",object.getString("startUser")); - delegateTask.setVariable("dockUser",object.getString("dockUser")); - delegateTask.setVariable("ministerUser",object.getString("ministerUser")); - delegateTask.setVariable("directorUser",object.getString("directorUser")); - delegateTask.setVariable("presidentUser",object.getString("presidentUser")); + delegateTask.setVariable("startUser",object.getJSONObject("startUser")); + delegateTask.setVariable("ministerUser",object.getJSONObject("ministerUser")); + delegateTask.setVariable("directorUser",object.getJSONObject("directorUser")); + delegateTask.setVariable("presidentUser",object.getJSONObject("presidentUser")); - userList.add(object.getString("dockUser")); + delegateTask.setVariable("dockUserList",object.getJSONArray("dockUserList")); + + userList.addAll(object.getJSONArray("dockUserList")); userList.add(object.getString("ministerUser")); delegateTask.setVariable("userList",userList); delegateTask.setVariable("actionFlag",0); + delegateTask.setVariable("selectResponCount",0); + + nextUserList=object.getJSONArray("dockUserList"); //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); @@ -86,7 +91,10 @@ public class StartSurveyAfter implements TaskListener { busBean.save(busProcessNew); if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + + for (int i = 0; i < nextUserList.size(); i++) { + JSONObject nextUser = nextUserList.getJSONObject(i); + BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -94,7 +102,7 @@ public class StartSurveyAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setUserId(nextUser.getString("id")); busBean.save(busProcessNewNext); } }else{ 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 c2b39aab..d420c2a5 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 @@ -1,5 +1,6 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -31,9 +32,9 @@ public class SummarySurveyAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - List nextUserList; + JSONArray nextUserList; - List responUserList=delegateTask.getVariable("responUserList",List.class); + JSONArray responUserList=delegateTask.getVariable("responUserList",JSONArray.class); for (int i=1;i<10;i++){ delegateTask.setVariable("task"+ i +"Count",0); @@ -41,7 +42,6 @@ public class SummarySurveyAfter implements TaskListener { delegateTask.setVariable("actionFlag",0); - delegateTask.setVariable("responUserList",responUserList); nextUserList=responUserList; @@ -81,7 +81,8 @@ public class SummarySurveyAfter implements TaskListener { busBean.update(busProcessNew,updataWapper); if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + for (int i = 0; i < nextUserList.size(); i++) { + JSONObject nextUser=nextUserList.getJSONObject(i); BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -89,7 +90,7 @@ public class SummarySurveyAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setUserId(nextUser.getString("id")); busBean.save(busProcessNewNext); } } 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 e0d0fa11..b76a17a4 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 @@ -88,27 +88,13 @@ public class UploadResearchResultAfter implements TaskListener { 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); - 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("dockUser",String.class)); - busBean.save(busProcessNewNext); - } + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(object.toJSONString()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo("责任对接人审批"); + busProcessNewNext.setUserId(delegateTask.getVariable("responUser",JSONObject.class).getString("dockUser")); + busBean.save(busProcessNewNext); } } From 8184d3841e4bd169fd211e95643c6b5e3be3214e Mon Sep 17 00:00:00 2001 From: duanwenbin <12345678> Date: Wed, 14 Jul 2021 15:27:50 +0800 Subject: [PATCH 2/4] =?UTF-8?q?Revert=20"add=20=E6=9C=AA=E5=90=88=E8=A7=84?= =?UTF-8?q?=E6=95=B4=E6=94=B9=E6=A8=A1=E5=9D=97"=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20This=20reverts?= =?UTF-8?q?=20commit=20572ff912=20=20=20=20=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20xxx?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SelectResponUserAfter.java | 1 + .../StandardSurvey/DirectorSignAfter.java | 48 ++++++++++++------- .../StandardSurvey/DockingApprovalAfter.java | 5 +- .../MinisterAndDockerSignAfter.java | 35 +++++++++----- .../StandardSurvey/PresidentSignAfter.java | 13 +++++ .../StandardSurvey/ResponUserSignAfter.java | 14 +++--- .../StandardSurvey/ResponUserSignBefore.java | 1 - .../SelectResponsibleUserAfter.java | 44 +++++++++-------- .../SelectResponsibleUserBefore.java | 2 - .../StandardSurvey/StartSurveyAfter.java | 28 ++++------- .../StandardSurvey/SummarySurveyAfter.java | 11 ++--- .../UploadResearchResultAfter.java | 30 ++++++++---- 12 files changed, 138 insertions(+), 94 deletions(-) diff --git a/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java index 8234b0ee..98a2cfc4 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/NonConformanceRectification/SelectResponUserAfter.java @@ -76,6 +76,7 @@ public class SelectResponUserAfter implements TaskListener { jsonObject.put("dockUser",preResponUser.getString("dockUser")); jsonObject.put("info",standardInfoList.get(i)); + responUserList.add(jsonObject); } } 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 47ebf5cc..be622c35 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 @@ -75,24 +75,38 @@ public class DirectorSignAfter implements TaskListener { updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); busBean.update(busProcessNew,updataWapper); - if (delegateTask.getVariable("actionFlag", 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", JSONObject.class).getString("id")); - busBean.save(busProcessNewNext); + 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("startUser", JSONObject.class).getString("id")); - busBean.save(busProcessNewNext); + if (delegateTask.getVariable("actionFlag", 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 9fe60574..691a469f 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 @@ -1,6 +1,5 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; - import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -91,7 +90,7 @@ public class DockingApprovalAfter implements TaskListener { if(delegateTask.getVariable("actionFlag",Integer.class)==0){ Integer count=delegateTask.getVariable("task1Count",Integer.class); - JSONArray responUserList=delegateTask.getVariable("responUserList",JSONArray.class); + List responUserList=delegateTask.getVariable("responUserList",List.class); if(count==null)count=0; count++; delegateTask.setVariable("task1Count",count); @@ -103,7 +102,7 @@ public class DockingApprovalAfter implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo("标准法规工程师调研汇总"); - busProcessNewNext.setUserId(delegateTask.getVariable("startUser",JSONObject.class).getString("id")); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser",String.class)); busBean.save(busProcessNewNext); } 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 ce98aa12..d4ee35cc 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 @@ -1,6 +1,5 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -83,7 +82,7 @@ public class MinisterAndDockerSignAfter implements TaskListener { busBean.update(busProcessNew,updataWapper); Integer count=delegateTask.getVariable("task3OKCount",Integer.class); - JSONArray userList=delegateTask.getVariable("userList",JSONArray.class); + List userList=delegateTask.getVariable("userList",List.class); if(delegateTask.getVariable("actionFlag",Integer.class)==0){ if(count==null)count=0; @@ -92,14 +91,28 @@ public class MinisterAndDockerSignAfter implements TaskListener { } if(count>=userList.size()){ if(delegateTask.getVariable("actionFlag",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("directorUser",JSONObject.class).getString("id")); - busBean.save(busProcessNewNext); + 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"); @@ -107,7 +120,7 @@ public class MinisterAndDockerSignAfter implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo("标准法规工程师调研汇总"); - busProcessNewNext.setUserId(delegateTask.getVariable("startUser",JSONObject.class).getString("id")); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser", String.class)); busBean.save(busProcessNewNext); } } 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 4e3d990a..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 @@ -74,5 +74,18 @@ public class PresidentSignAfter implements TaskListener { 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); + busBean.save(busProcessNewNext); + } + } } } 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 68a2db61..895a5bc2 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 @@ -1,6 +1,5 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -33,9 +32,9 @@ public class ResponUserSignAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - JSONArray nextUserList = new JSONArray(); - JSONArray userList=delegateTask.getVariable("userList",JSONArray.class); - JSONObject startUser=delegateTask.getVariable("startUser",JSONObject.class); + List nextUserList = new ArrayList(); + List userList=delegateTask.getVariable("userList",List.class); + String startUser=delegateTask.getVariable("startUser",String.class); if(delegateTask.getVariable("actionFlag",Integer.class)==0){ if("1".equals(object.getString("actionFlag"))){ @@ -99,8 +98,7 @@ public class ResponUserSignAfter implements TaskListener { if(count>=responUserList.size()){ if(delegateTask.getVariable("actionFlag",Integer.class)==0){ if(nextUserList != null && !nextUserList.isEmpty()){ - for (int i = 0; i < nextUserList.size(); i++) { - JSONObject nextUser=nextUserList.getJSONObject(i); + for(String nextUser : nextUserList){ BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -108,7 +106,7 @@ public class ResponUserSignAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser.getString("id")); + busProcessNewNext.setUserId(nextUser); busBean.save(busProcessNewNext); } } @@ -119,7 +117,7 @@ public class ResponUserSignAfter implements TaskListener { busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo("标准法规工程师调研汇总"); - busProcessNewNext.setUserId(delegateTask.getVariable("startUser", JSONObject.class).getString("id")); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser", String.class)); busBean.save(busProcessNewNext); } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java index b36328dc..64ed8384 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignBefore.java @@ -15,7 +15,6 @@ public class ResponUserSignBefore 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/SelectResponsibleUserAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserAfter.java index e7b1bafc..727381d6 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 @@ -33,20 +33,31 @@ public class SelectResponsibleUserAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - JSONArray nextUserList = new JSONArray(); + List nextUserList = new ArrayList(); + String userListString=object.getString("responUserList"); + String userListStringName=object.getString("responUserListName"); - JSONArray preResponUserList = object.getJSONArray("responUserList"); - JSONArray responUserList=delegateTask.getVariable("responUserList",JSONArray.class); - if(responUserList==null)responUserList=new JSONArray(); - for (int i = 0; i < preResponUserList.size(); i++) { - JSONObject preResponUser=preResponUserList.getJSONObject(i); - preResponUser.put("dockUser",delegateTask.getAssignee()); - responUserList.add(preResponUser); + List userList = Arrays.asList(userListString.split(",")); + for (int i = 0; i < userList.size(); i++) { + nextUserList.add(userList.get(i).trim()); } + List userListName=Arrays.asList(userListStringName.split(",")); + List newUserListName = new ArrayList(); + userListName.forEach((String name)->{ + newUserListName.add(name.trim()); + }); - delegateTask.setVariable("responUserList",responUserList); + JSONObject userListJson=new JSONObject(); + for (int i = 0; i < userList.size(); i++) { + JSONObject json=new JSONObject(); + json.put("id",userList.get(i)); + json.put("name",newUserListName.get(i)); + userListJson.put(userList.get(i),json); + } + delegateTask.setVariable("responUserListMap",userListJson.toJSONString()); + + delegateTask.setVariable("responUserList",nextUserList); - nextUserList=responUserList; //截止时间 流程描述 创建人 @@ -84,14 +95,8 @@ public class SelectResponsibleUserAfter implements TaskListener { updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); busBean.update(busProcessNew,updataWapper); - Integer count=delegateTask.getVariable("selectResponCount",Integer.class); - if(count==null)count=0; - count++; - delegateTask.setVariable("selectResponCount",count); - - if(count>=delegateTask.getVariable("dockUserList",JSONArray.class).size()){ - for (int i = 0; i < nextUserList.size(); i++) { - JSONObject nextUser=nextUserList.getJSONObject(i); + if(nextUserList != null && !nextUserList.isEmpty()){ + for(String nextUser : nextUserList){ BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -99,10 +104,9 @@ public class SelectResponsibleUserAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser.getString("id")); + busProcessNewNext.setUserId(nextUser); busBean.save(busProcessNewNext); } } - } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java index 3ac24d7b..96b280ee 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/SelectResponsibleUserBefore.java @@ -16,8 +16,6 @@ public class SelectResponsibleUserBefore implements TaskListener { QueryWrapper queryWrapper1 = new QueryWrapper(); queryWrapper1.isNull("TASK_ID"); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); - - queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ BusProcessNew one1 = list.get(0); 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 2fca5a19..46d05c2d 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 @@ -1,6 +1,5 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -35,25 +34,21 @@ public class StartSurveyAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - JSONArray nextUserList = new JSONArray(); - JSONArray userList=new JSONArray(); + List nextUserList = new ArrayList(); + List userList=new ArrayList<>(); - delegateTask.setVariable("startUser",object.getJSONObject("startUser")); - delegateTask.setVariable("ministerUser",object.getJSONObject("ministerUser")); - delegateTask.setVariable("directorUser",object.getJSONObject("directorUser")); - delegateTask.setVariable("presidentUser",object.getJSONObject("presidentUser")); + delegateTask.setVariable("startUser",object.getString("startUser")); + delegateTask.setVariable("dockUser",object.getString("dockUser")); + delegateTask.setVariable("ministerUser",object.getString("ministerUser")); + delegateTask.setVariable("directorUser",object.getString("directorUser")); + delegateTask.setVariable("presidentUser",object.getString("presidentUser")); - delegateTask.setVariable("dockUserList",object.getJSONArray("dockUserList")); - - userList.addAll(object.getJSONArray("dockUserList")); + userList.add(object.getString("dockUser")); userList.add(object.getString("ministerUser")); delegateTask.setVariable("userList",userList); delegateTask.setVariable("actionFlag",0); - delegateTask.setVariable("selectResponCount",0); - - nextUserList=object.getJSONArray("dockUserList"); //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); @@ -91,10 +86,7 @@ public class StartSurveyAfter implements TaskListener { busBean.save(busProcessNew); if(nextUserList != null && !nextUserList.isEmpty()){ - - for (int i = 0; i < nextUserList.size(); i++) { - JSONObject nextUser = nextUserList.getJSONObject(i); - + for(String nextUser : nextUserList){ BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -102,7 +94,7 @@ public class StartSurveyAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser.getString("id")); + busProcessNewNext.setUserId(nextUser); busBean.save(busProcessNewNext); } }else{ 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 d420c2a5..c2b39aab 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 @@ -1,6 +1,5 @@ package com.ydw.bat.wkflow.listener.StandardSurvey; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; @@ -32,9 +31,9 @@ public class SummarySurveyAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - JSONArray nextUserList; + List nextUserList; - JSONArray responUserList=delegateTask.getVariable("responUserList",JSONArray.class); + List responUserList=delegateTask.getVariable("responUserList",List.class); for (int i=1;i<10;i++){ delegateTask.setVariable("task"+ i +"Count",0); @@ -42,6 +41,7 @@ public class SummarySurveyAfter implements TaskListener { delegateTask.setVariable("actionFlag",0); + delegateTask.setVariable("responUserList",responUserList); nextUserList=responUserList; @@ -81,8 +81,7 @@ public class SummarySurveyAfter implements TaskListener { busBean.update(busProcessNew,updataWapper); if(nextUserList != null && !nextUserList.isEmpty()){ - for (int i = 0; i < nextUserList.size(); i++) { - JSONObject nextUser=nextUserList.getJSONObject(i); + for(String nextUser : nextUserList){ BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); @@ -90,7 +89,7 @@ public class SummarySurveyAfter implements TaskListener { busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser.getString("id")); + busProcessNewNext.setUserId(nextUser); busBean.save(busProcessNewNext); } } 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 b76a17a4..e0d0fa11 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 @@ -88,13 +88,27 @@ public class UploadResearchResultAfter implements TaskListener { updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); busBean.update(busProcessNew,updataWapper); - BusProcessNew busProcessNewNext = new BusProcessNew(); - busProcessNewNext.setMsgType("clause"); - busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); - busProcessNewNext.setMesg(object.toJSONString()); - busProcessNewNext.setFinishFlag("0"); - busProcessNewNext.setTaskInfo("责任对接人审批"); - busProcessNewNext.setUserId(delegateTask.getVariable("responUser",JSONObject.class).getString("dockUser")); - busBean.save(busProcessNewNext); + 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("dockUser",String.class)); + busBean.save(busProcessNewNext); + } } } From b1f18338d4307bed662f93d45d151ec9d2de84cc Mon Sep 17 00:00:00 2001 From: yuezhihang Date: Thu, 15 Jul 2021 16:19:39 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E6=A0=87=E5=87=86=E5=90=88=E8=A7=84?= =?UTF-8?q?=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B=EF=BC=81=EF=BC=81=EF=BC=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../business_auth/LawsUserInfoService.java | 5 + .../datas/dto/BreakdownList.java | 87 +++++++++++ .../business_main/datas/dto/DataList.java | 45 ++++++ .../business_main/datas/dto/PEPDTO.java | 147 ++++++++++-------- .../business_main/datas/dto/PEPres.java | 14 ++ .../datas/dto/SarStandProjectLibraries.java | 127 +++++++++++++++ .../datas/dto/SarStandUnqualified.java | 95 +++++++++++ .../business_main/datas/dto/Step3DTO.java | 34 ++++ .../PEPDepartLeaderAfter.java | 46 +++--- .../PEPDepartLeaderBefore.java | 2 + .../projectEvaluationProcess/PEPSumAfter.java | 30 ++-- .../PEPSumBefore.java | 2 + .../PEPffresPersonAfter.java | 118 +++++++------- .../PEPffresPersonBefore.java | 2 + .../PEPmanagerApproveAfter.java | 131 ++++++++++------ .../PEPmanagerApproveBefore.java | 1 + .../PEPstartAfter.java | 84 +++++----- .../PEPtaskEstimateAfter.java | 30 ++-- .../PEPtaskEstimateBefore.java | 4 +- .../PEPtaskLssueAfter.java | 138 +++++++++------- .../PEPtaskLssueBefore.java | 4 +- .../standardLibrary/ApplyApplicantBefore.java | 2 + .../standardLibrary/CountersignBefore.java | 2 + .../standardLibrary/ManagerApproveBefore.java | 2 + src/main/resources/application.yml | 2 +- 25 files changed, 818 insertions(+), 336 deletions(-) create mode 100644 src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/BreakdownList.java create mode 100644 src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/DataList.java create mode 100644 src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPres.java create mode 100644 src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandProjectLibraries.java create mode 100644 src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandUnqualified.java create mode 100644 src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/Step3DTO.java diff --git a/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java b/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java index 85b08f85..d542081f 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java +++ b/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java @@ -5,6 +5,7 @@ import com.tmsps.fk.common.wrapper.Wrapper; import com.ydw.bat.wkflow.business_main.datas.dto.AddDetailedDto; import com.ydw.bat.wkflow.business_main.datas.dto.DetailedUpDto; import com.ydw.bat.wkflow.business_main.datas.dto.SarLawsDetailedList; +import com.ydw.bat.wkflow.business_main.datas.dto.SarStandUnqualified; import com.ydw.bat.wkflow.business_main.datas.entity.*; import feign.Headers; import org.apache.ibatis.annotations.Param; @@ -92,6 +93,10 @@ public interface LawsUserInfoService { public ResponseMessage updateLaws(@RequestBody DetailedUpDto addDetailedDto); + @PostMapping("sarStandUnqualified/sar-stand-unqualified/add") + public ResponseMessage addsarStandUnqualified(@RequestBody List sarStandUnqualifieds); + + @RequestMapping(value = "sarLawsDetailedList/sar-laws-detailed-list/getStandById",method = RequestMethod.POST) public SarLawsDetailedList getStandById(@RequestParam("id") String id); diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/BreakdownList.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/BreakdownList.java new file mode 100644 index 00000000..5865b970 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/BreakdownList.java @@ -0,0 +1,87 @@ +/** + * Copyright 2021 bejson.com + */ +package com.ydw.bat.wkflow.business_main.datas.dto; +import java.util.Date; + +/** + * Auto-generated: 2021-07-09 16:11:32 + * + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +public class BreakdownList { + + private String id; + private String svpps; + private String standId; + private String itemsNum; + private String claimType; + private String itemsName; + private String applyArctic; + private String busStandCover; + private String responsibleUnit; + public void setId(String id) { + this.id = id; + } + public String getId() { + return id; + } + + public void setSvpps(String svpps) { + this.svpps = svpps; + } + public String getSvpps() { + return svpps; + } + + public void setStandId(String standId) { + this.standId = standId; + } + public String getStandId() { + return standId; + } + + public void setItemsNum(String itemsNum) { + this.itemsNum = itemsNum; + } + public String getItemsNum() { + return itemsNum; + } + + public void setClaimType(String claimType) { + this.claimType = claimType; + } + public String getClaimType() { + return claimType; + } + + public void setItemsName(String itemsName) { + this.itemsName = itemsName; + } + public String getItemsName() { + return itemsName; + } + + public void setApplyArctic(String applyArctic) { + this.applyArctic = applyArctic; + } + public String getApplyArctic() { + return applyArctic; + } + + public void setBusStandCover(String busStandCover) { + this.busStandCover = busStandCover; + } + public String getBusStandCover() { + return busStandCover; + } + + public void setResponsibleUnit(String responsibleUnit) { + this.responsibleUnit = responsibleUnit; + } + public String getResponsibleUnit() { + return responsibleUnit; + } + +} \ No newline at end of file diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/DataList.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/DataList.java new file mode 100644 index 00000000..40f4d0da --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/DataList.java @@ -0,0 +1,45 @@ +/** + * Copyright 2021 bejson.com + */ +package com.ydw.bat.wkflow.business_main.datas.dto; +import lombok.Data; + +import java.util.List; + +/** + * Auto-generated: 2021-07-09 16:11:32 + * + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class DataList { + + private String uname; + private String productLine; + private String distributePerson; + private String distributePersonId; + private String projectManager; + private List sarStandProjectLibraries; + public void setUname(String uname) { + this.uname = uname; + } + public String getUname() { + return uname; + } + + public void setProductLine(String productLine) { + this.productLine = productLine; + } + public String getProductLine() { + return productLine; + } + + public void setSarStandProjectLibraries(List sarStandProjectLibraries) { + this.sarStandProjectLibraries = sarStandProjectLibraries; + } + public List getSarStandProjectLibraries() { + return sarStandProjectLibraries; + } + +} \ No newline at end of file diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPDTO.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPDTO.java index c5046e13..33c336b6 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPDTO.java +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPDTO.java @@ -1,30 +1,39 @@ -/** - * Copyright 2021 bejson.com - */ package com.ydw.bat.wkflow.business_main.datas.dto; -import java.util.Date; +import lombok.Data; -/** - * Auto-generated: 2021-07-08 14:51:4 - * - * @author bejson.com (i@bejson.com) - * @website http://www.bejson.com/java2pojo/ - */ +import java.util.List; + +@Data public class PEPDTO { private String id; - private String projectPlatfor; - private String projectNumber; - private String projectName; - private String projectClassification; - private String projectStatus; - private String projectGroup; - private Date projectStartDate; - private Date projectEndDate; - private String currentNode; - private String projectLevel; - private String productLine; + private List dataList; + private SarStandProjectLibraries sarStandProjectLibraries; + private String jlUserId; + private String passFlag; + private String zrUserId; + private String standName; + private String standNumber; + private List breakdownList; + private String prcCreateUser; + private String applyUpdUserId; + private String approvalOpinion; + private String qualityEngineer; + private String qualityEngineerName; + private String certifiedEngineer; + private String certifiedEngineerName; + private String prcCreateUserName; + //返回分发责任人 + private String distributePerson; + private String distributePersonId; + private String uname; private String projectManager; + //责任人 (对应到每条数据一个责任人) + private String workPeople; + //在研在产字段!!! 待定中 下发落实人需要使用 + //时间字段 + private String ZCCSSRQ; + private String XCXSSRQ; public void setId(String id) { this.id = id; } @@ -32,88 +41,88 @@ public class PEPDTO { return id; } - public void setProjectPlatfor(String projectPlatfor) { - this.projectPlatfor = projectPlatfor; + public void setDataList(List dataList) { + this.dataList = dataList; } - public String getProjectPlatfor() { - return projectPlatfor; + public List getDataList() { + return dataList; } - public void setProjectNumber(String projectNumber) { - this.projectNumber = projectNumber; + public void setJlUserId(String jlUserId) { + this.jlUserId = jlUserId; } - public String getProjectNumber() { - return projectNumber; + public String getJlUserId() { + return jlUserId; } - public void setProjectName(String projectName) { - this.projectName = projectName; + public void setZrUserId(String zrUserId) { + this.zrUserId = zrUserId; } - public String getProjectName() { - return projectName; + public String getZrUserId() { + return zrUserId; } - public void setProjectClassification(String projectClassification) { - this.projectClassification = projectClassification; + public void setStandName(String standName) { + this.standName = standName; } - public String getProjectClassification() { - return projectClassification; + public String getStandName() { + return standName; } - public void setProjectStatus(String projectStatus) { - this.projectStatus = projectStatus; + public void setStandNumber(String standNumber) { + this.standNumber = standNumber; } - public String getProjectStatus() { - return projectStatus; + public String getStandNumber() { + return standNumber; } - public void setProjectGroup(String projectGroup) { - this.projectGroup = projectGroup; + public void setBreakdownList(List breakdownList) { + this.breakdownList = breakdownList; } - public String getProjectGroup() { - return projectGroup; + public List getBreakdownList() { + return breakdownList; } - public void setProjectStartDate(Date projectStartDate) { - this.projectStartDate = projectStartDate; + public void setPrcCreateUser(String prcCreateUser) { + this.prcCreateUser = prcCreateUser; } - public Date getProjectStartDate() { - return projectStartDate; + public String getPrcCreateUser() { + return prcCreateUser; } - public void setProjectEndDate(Date projectEndDate) { - this.projectEndDate = projectEndDate; + public void setApplyUpdUserId(String applyUpdUserId) { + this.applyUpdUserId = applyUpdUserId; } - public Date getProjectEndDate() { - return projectEndDate; + public String getApplyUpdUserId() { + return applyUpdUserId; } - public void setCurrentNode(String currentNode) { - this.currentNode = currentNode; + public void setApprovalOpinion(String approvalOpinion) { + this.approvalOpinion = approvalOpinion; } - public String getCurrentNode() { - return currentNode; + public String getApprovalOpinion() { + return approvalOpinion; } - public void setProjectLevel(String projectLevel) { - this.projectLevel = projectLevel; + public void setQualityEngineer(String qualityEngineer) { + this.qualityEngineer = qualityEngineer; } - public String getProjectLevel() { - return projectLevel; + public String getQualityEngineer() { + return qualityEngineer; } - public void setProductLine(String productLine) { - this.productLine = productLine; + public void setCertifiedEngineer(String certifiedEngineer) { + this.certifiedEngineer = certifiedEngineer; } - public String getProductLine() { - return productLine; + public String getCertifiedEngineer() { + return certifiedEngineer; } - public void setProjectManager(String projectManager) { - this.projectManager = projectManager; + public void setPrcCreateUserName(String prcCreateUserName) { + this.prcCreateUserName = prcCreateUserName; } - public String getProjectManager() { - return projectManager; + public String getPrcCreateUserName() { + return prcCreateUserName; } } \ No newline at end of file diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPres.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPres.java new file mode 100644 index 00000000..fbe1621e --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/PEPres.java @@ -0,0 +1,14 @@ +package com.ydw.bat.wkflow.business_main.datas.dto; + +import lombok.Data; + +import java.util.List; + +@Data +public class PEPres { + + private List pepdtos; + + + private List step3DTOS; + } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandProjectLibraries.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandProjectLibraries.java new file mode 100644 index 00000000..88751424 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandProjectLibraries.java @@ -0,0 +1,127 @@ +/** + * Copyright 2021 bejson.com + */ +package com.ydw.bat.wkflow.business_main.datas.dto; +import java.util.Date; + +/** + * Auto-generated: 2021-07-09 16:11:32 + * + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +public class SarStandProjectLibraries { + + private String id; + private String uname; + private String currentNode; + private String productLine; + private String projectName; + private String projectGroup; + private String projectLevel; + private String projectNumber; + private String projectStatus; + private Date projectEndDate; + private String projectManager; + private String projectPlatfor; + private Date projectStartDate; + private String projectClassification; + public void setId(String id) { + this.id = id; + } + public String getId() { + return id; + } + + public void setUname(String uname) { + this.uname = uname; + } + public String getUname() { + return uname; + } + + public void setCurrentNode(String currentNode) { + this.currentNode = currentNode; + } + public String getCurrentNode() { + return currentNode; + } + + public void setProductLine(String productLine) { + this.productLine = productLine; + } + public String getProductLine() { + return productLine; + } + + public void setProjectName(String projectName) { + this.projectName = projectName; + } + public String getProjectName() { + return projectName; + } + + public void setProjectGroup(String projectGroup) { + this.projectGroup = projectGroup; + } + public String getProjectGroup() { + return projectGroup; + } + + public void setProjectLevel(String projectLevel) { + this.projectLevel = projectLevel; + } + public String getProjectLevel() { + return projectLevel; + } + + public void setProjectNumber(String projectNumber) { + this.projectNumber = projectNumber; + } + public String getProjectNumber() { + return projectNumber; + } + + public void setProjectStatus(String projectStatus) { + this.projectStatus = projectStatus; + } + public String getProjectStatus() { + return projectStatus; + } + + public void setProjectEndDate(Date projectEndDate) { + this.projectEndDate = projectEndDate; + } + public Date getProjectEndDate() { + return projectEndDate; + } + + public void setProjectManager(String projectManager) { + this.projectManager = projectManager; + } + public String getProjectManager() { + return projectManager; + } + + public void setProjectPlatfor(String projectPlatfor) { + this.projectPlatfor = projectPlatfor; + } + public String getProjectPlatfor() { + return projectPlatfor; + } + + public void setProjectStartDate(Date projectStartDate) { + this.projectStartDate = projectStartDate; + } + public Date getProjectStartDate() { + return projectStartDate; + } + + public void setProjectClassification(String projectClassification) { + this.projectClassification = projectClassification; + } + public String getProjectClassification() { + return projectClassification; + } + +} \ No newline at end of file diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandUnqualified.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandUnqualified.java new file mode 100644 index 00000000..96c4d473 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/SarStandUnqualified.java @@ -0,0 +1,95 @@ +package com.ydw.bat.wkflow.business_main.datas.dto; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.sql.Timestamp; + +/** + *

+ * + *

+ * + * @author super_liu + * @since 2021-06-15 + */ +@Data +@Accessors(chain = true) +@ApiModel(value="SarStandUnqualified对象", description="") +public class SarStandUnqualified { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "标准ID") + private String standId; + + @ApiModelProperty(value = "标准名称") + private String standName; + + @ApiModelProperty(value = "条款号") + private String itemsNum; + + @ApiModelProperty(value = "条款名称") + private String itemsName; + + @ApiModelProperty(value = "产品线") + private String productLine; + + @ApiModelProperty(value = "责任部门") + private String responsibleUnit; + + @ApiModelProperty(value = "项目名称") + private String productName; + + @ApiModelProperty(value = "创建部门") + private String createDeptId; + + @ApiModelProperty(value = "创建人") + private String createById; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp createTime; + + @ApiModelProperty(value = "关闭状态(1为开启,2为关闭)") + @TableField("CLOSE_STATE") + private Integer closeState; + + @ApiModelProperty(value = "实际关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp actualCloseTime; + + @ApiModelProperty(value = "计划关闭时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp planCloseTime; + + @ApiModelProperty(value = "未符合原因") + private String reason; + + @ApiModelProperty(value = "质量工程师") + private String qaEngineer; + + @ApiModelProperty(value = "认证工程师") + private String authEngineer; + + @ApiModelProperty(value = "责任工程师") + private String dutyEngineer; + + @ApiModelProperty(value = "产品类型(research为在研产品,product为在产产品)") + private String productType; + + @ApiModelProperty(value = "主键") + private String id; + + +} diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/Step3DTO.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/Step3DTO.java new file mode 100644 index 00000000..1b409d1e --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/Step3DTO.java @@ -0,0 +1,34 @@ +/** + * Copyright 2021 bejson.com + */ +package com.ydw.bat.wkflow.business_main.datas.dto; +import lombok.Data; +/** + * Auto-generated: 2021-07-12 17:52:47 + * + * @author bejson.com (i@bejson.com) + * @website http://www.bejson.com/java2pojo/ + */ +@Data +public class Step3DTO { + + private String uname; + private String itemNum; + private String itemsName; + private String standName; + private String implementer; + private String productLine; + private String projectName; + private String standNumber; + private String implementerId; + private String projectNumber; + private String projectManager; + private String qualityEngineer; + private String distributePerson; + private String certifiedEngineer; + private String distributePersonId; + private String zCCSSRQ; + private String xCXSSRQ; + + +} \ No newline at end of file diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderAfter.java index e5030b0d..b8381c5d 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderAfter.java @@ -34,37 +34,39 @@ public class PEPDepartLeaderAfter implements TaskListener { LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class); + //根据流程id找到流程信息 QueryWrapper queryWrapper = new QueryWrapper<>(); 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(); //是否审批通过 passFlag == 1 通过 - BusProcessNew busProcessNew = new BusProcessNew(); - busProcessNew.setMsgType("clause"); - busProcessNew.setPId(delegateTask.getProcessInstanceId()); - busProcessNew.setMesg(object.toJSONString()); - busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); - busProcessNew.setFinishFlag("0"); - busProcessNew.setTaskInfo(delegateTask.getName()); - busProcessNew.setUserId(object.getString("applyUpdUserId")); - busBean.save(busProcessNew); - func1(delegateTask,busBean,object,"0"); + BusProcessNew busProcessNew = new BusProcessNew(); + busProcessNew.setMsgType("clause"); + busProcessNew.setPId(delegateTask.getProcessInstanceId()); + busProcessNew.setMesg(object.toJSONString()); + busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNew.setFinishFlag("0"); + busProcessNew.setTaskInfo(delegateTask.getName()); + busProcessNew.setUserId(delegateTask.getVariable("DLUserId",String.class)); + busBean.save(busProcessNew); + func1(delegateTask, busBean, object, "0"); //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - String user = object.getString("prcCreateUser"); - String username = object.getString("prcCreateUserName"); - String standName = object.getString("standName"); - String prcName = standName+"-标准项目合规评估-标准法规部业务经理审批"; + String user = delegateTask.getVariable("prcCreateUser", String.class); + String username = delegateTask.getVariable("prcCreateUserName", String.class); + String prcName = "标准项目合规评估-部门领导审批"; 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("5"); one1.setPrcName(prcName); @@ -74,11 +76,11 @@ public class PEPDepartLeaderAfter implements TaskListener { } } - private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object,String commitFlag) { + private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, String commitFlag) { QueryWrapper queryWrapper1 = new QueryWrapper(); - queryWrapper1.eq("TASK_ID",delegateTask.getId()); + queryWrapper1.eq("TASK_ID", delegateTask.getId()); BusProcessNew one1 = busBean.getOne(queryWrapper1); - if(one1!=null){ + if (one1 != null) { one1.setCommitFlag(commitFlag); one1.setCommitText(object.getString("commentText")); busBean.saveOrUpdate(one1); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderBefore.java index 68ffd2c7..cb2ec63b 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPDepartLeaderBefore.java @@ -15,6 +15,8 @@ public class PEPDepartLeaderBefore implements TaskListener { public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumAfter.java index 93bfc123..b32497d8 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumAfter.java @@ -39,30 +39,29 @@ public class PEPSumAfter 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); - //业务经理Id + //标准法规部门领导 List nextUserList = new ArrayList(); - if (StringUtils.isNotBlank(object.getString(""))){ - nextUserList.add(object.getString("DLUserId")); - delegateTask.setVariable("DLUserId",object.getString("DLUserId")); - }else { + if (StringUtils.isNotBlank(delegateTask.getVariable("DLUserIds",String.class))) { + nextUserList.add(delegateTask.getVariable("DLUserIds",String.class)); + delegateTask.setVariable("DLUserId", delegateTask.getVariable("DLUserIds",String.class)); + } else { throw new ActivitiException("请选择标准法规部门领导!!"); } //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - String user = object.getString("prcCreateUser"); - String username = object.getString("prcCreateUserName"); - String standName = object.getString("standName"); - String prcName = standName+"-标准项目合规评估"; + String user = delegateTask.getVariable("prcCreateUser", String.class); + String username = delegateTask.getVariable("prcCreateUserName", String.class); + String prcName = "标准项目合规评估-汇总"; 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("5"); one1.setPrcName(prcName); @@ -71,6 +70,7 @@ public class PEPSumAfter implements TaskListener { busProcessNameService.saveOrUpdate(one1); } // 存储当前节点意见 +// throw new ActivitiException("sshaifhiqhfka"); BusProcessNew busProcessNew = new BusProcessNew(); busProcessNew.setMsgType("clause"); busProcessNew.setPId(delegateTask.getProcessInstanceId()); @@ -81,8 +81,8 @@ public class PEPSumAfter implements TaskListener { busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); busBean.save(busProcessNew); - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + if (nextUserList != null && !nextUserList.isEmpty()) { + for (String nextUser : nextUserList) { BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumBefore.java index 181bf783..e3da581c 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPSumBefore.java @@ -15,6 +15,8 @@ public class PEPSumBefore implements TaskListener { public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonAfter.java index ec13c7e6..53d1d16a 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonAfter.java @@ -1,9 +1,11 @@ package com.ydw.bat.wkflow.listener.projectEvaluationProcess; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.tmsps.fk.common.util.JsonUtil; -import com.ydw.bat.wkflow.business_auth.LawsUserInfoService; +import com.ydw.bat.wkflow.business_main.datas.dto.PEPres; +import com.ydw.bat.wkflow.business_main.datas.dto.Step3DTO; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; import com.ydw.bat.wkflow.business_main.datas.entity.Datas; @@ -31,44 +33,41 @@ public class PEPffresPersonAfter implements TaskListener { //流程信息 IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); - LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class); //根据流程id找到流程信息 QueryWrapper queryWrapper = new QueryWrapper<>(); 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 (StringUtils.isNotBlank(object.getString("fenFlag"))){ - if ("1".equals(object.getString("fenFlag"))){ + if (StringUtils.isNotBlank(object.getString("fenFlag"))) { + if ("1".equals(object.getString("fenFlag"))) { //通过 记录通过的流程条数 - if (StringUtils.isNotBlank(String.valueOf(delegateTask.getVariable("PEPCount")))){ - String as= String.valueOf(delegateTask.getVariable("PEPCount")); - delegateTask.setVariable("PEPCount",String.valueOf(Integer.valueOf(as)+1)); - }else { - delegateTask.setVariable("PEPCount","0"); + if (null!=delegateTask.getVariable("PEPCount")) { + String as = String.valueOf(delegateTask.getVariable("PEPCount")); + delegateTask.setVariable("PEPCount", String.valueOf(Integer.valueOf(as) + 1)); + } else { + delegateTask.setVariable("PEPCount", "1"); } - delegateTask.setVariable("fenFlag",object.getString("fenFlag")); - }else { + delegateTask.setVariable("fenFlag", object.getString("fenFlag")); + } else { //不通过就要驳回 nextUserList.add(object.getString("workPeople")); - delegateTask.setVariable("workPeople",object.getString("workPeople")); - delegateTask.setVariable("fenFlag",object.getString("fenFlag")); + delegateTask.setVariable("workPeople", object.getString("workPeople")); + delegateTask.setVariable("fenFlag", object.getString("fenFlag")); } } //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - String user = object.getString("prcCreateUser"); - String username = object.getString("prcCreateUserName"); - String standName = object.getString("standName"); - String prcName = standName+"-标准项目合规评估-标准法规部业务经理审批"; + String user = delegateTask.getVariable("prcCreateUser", String.class); + String username = delegateTask.getVariable("prcCreateUserName", String.class); + String prcName = "标准项目合规评估-分发负责人审批"; 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("5"); one1.setPrcName(prcName); @@ -76,7 +75,7 @@ public class PEPffresPersonAfter implements TaskListener { one1.setCreatUserName(username); busProcessNameService.saveOrUpdate(one1); } - // 存储当前节点意见 +// 存储当前节点意见 BusProcessNew busProcessNew = new BusProcessNew(); busProcessNew.setMsgType("clause"); busProcessNew.setPId(delegateTask.getProcessInstanceId()); @@ -87,59 +86,43 @@ public class PEPffresPersonAfter implements TaskListener { busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); busBean.save(busProcessNew); - if(nextUserList != null && !nextUserList.isEmpty() && "2".equals(object.getString("fenFlag"))){ - oneStep(delegateTask, busBean, object, nextUserList); - }else if ("1".equals(object.getString("fenFlag")) && String.valueOf(delegateTask.getVariable("PEPCount")).equals(String.valueOf(delegateTask.getVariable("PEPAllCount")))){ + oneStep1(delegateTask, busBean, object, nextUserList); - }else { - oneStep(delegateTask, busBean, object, nextUserList); - } + } - private void oneStep(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, List nextUserList) { - 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); - } - } - - // TODO: 2021/7/7 private void oneStep1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, List nextUserList) { - List busProcessNews = busBean.findLastworkPeople("ProjectEvaluationProcess5",delegateTask.getProcessInstanceId()); //中间对象 - Map> map=new HashMap<>(); - List CPX=new ArrayList<>(); - for (BusProcessNew bus:busProcessNews) { - //数据归纳 - JSONObject object1 = JSONObject.parseObject(bus.getMesg()); - String key=object1.getString("CPXpeople"); - if (StringUtils.isNotBlank(key)){ - List middle=new ArrayList<>(); - if (null!=map.get(key)){ - map.get(key).add(bus); + Map> map = new HashMap<>(); + Map> maps = new HashMap<>(); + List CPX = new ArrayList<>(); + JSONArray jsonArray=JSONArray.parseArray(object.getString("step3DTOS")); + for (Object j : jsonArray) { + Step3DTO o=JSONObject.parseObject(String.valueOf(j), Step3DTO.class); + if (!CPX.contains(o.getProjectManager())){ + CPX.add(o.getProjectManager()); + } + if (null!=maps.get(o.getProjectManager())){ + maps.get(o.getProjectManager()).add(o); }else { - //判断存在多少个 产品线负责人 - CPX.add(key); - middle.add(bus); - map.put(key,middle); + List mis=new ArrayList<>(); + mis.add(o); + maps.put(o.getProjectManager(),mis); } - }else { - throw new ActivitiException("请检查是否存在,产品线负责人!!"); } - } //生成任务信息 - for (String cp:CPX) { + for (String cp : CPX) { BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); - busProcessNewNext.setMesg(JsonUtil.toJson(map.get(cp))); + if (null!=map.get(cp)) { + + busProcessNewNext.setMesg(JsonUtil.toJson(map.get(cp))); + }else { + PEPres pePres=new PEPres(); + pePres.setStep3DTOS(maps.get(cp)); + busProcessNewNext.setMesg(JsonUtil.toJson(pePres)); + } busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); @@ -147,6 +130,11 @@ public class PEPffresPersonAfter implements TaskListener { busBean.save(busProcessNewNext); } //赋值 节点 - delegateTask.setVariable("CPXpeoples",CPX); + if (null==delegateTask.getVariable("CPXpeoples")) { + delegateTask.setVariable("CPXpeoples", CPX); + }else { + delegateTask.getVariable("CPXpeoples",List.class).addAll(CPX); + } } + } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonBefore.java index 51d17b37..d27e8329 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPffresPersonBefore.java @@ -15,6 +15,8 @@ public class PEPffresPersonBefore implements TaskListener { public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveAfter.java index 278bce91..ef2ef276 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveAfter.java @@ -1,8 +1,10 @@ package com.ydw.bat.wkflow.listener.projectEvaluationProcess; + +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.ydw.bat.wkflow.business_auth.LawsUserInfoService; +import com.ydw.bat.wkflow.business_main.datas.dto.*; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; import com.ydw.bat.wkflow.business_main.datas.entity.Datas; @@ -12,17 +14,13 @@ import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; import com.ydw.bat.wkflow.util.SpringContextUtil; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; -import org.apache.commons.lang.StringUtils; +import org.springframework.beans.BeanUtils; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; public class PEPmanagerApproveAfter implements TaskListener { - @Override public void notify(DelegateTask delegateTask) { //默认流程数据接口 @@ -32,49 +30,31 @@ public class PEPmanagerApproveAfter implements TaskListener { //流程信息 IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); - LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class); - //根据流程id找到流程信息 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); Datas datas = datasService.getOne(queryWrapper); - - JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); - delegateTask.setVariable("objectJson",object); - - List nextUserList = new ArrayList(); - - //是否审批通过 passFlag == 1 不通过 - if ("2".equals(String.valueOf(object.get("passFlag")))){ - //如果流程通过标识为1 则为不通过发送消息给用户流程结束 - }else { - if(StringUtils.isNotBlank(object.getString("zrUserId"))){ - if(object.getString("zrUserId").contains(",")){ - nextUserList = Arrays.asList(object.getString("zrUserId").split(",")); - }else { - nextUserList.add(object.getString("zrUserId")); - } - // 配置多实例 - delegateTask.setVariable("liablePeopleList",nextUserList); - } - //设置一个计数器 - if (StringUtils.isNotBlank(delegateTask.getVariable("PEPAllCount",String.class))){ - delegateTask.setVariable("PEPAllCount", String.valueOf(delegateTask.getVariable("PEPAllCount",Integer.class) - +nextUserList.size())); - }else { - delegateTask.setVariable("PEPAllCount",nextUserList.size()); - } - } + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + PEPDTO pepdto = JSONObject.parseObject(datas.getFormValsJson(), PEPDTO.class); + delegateTask.setVariable("objectJson", object); + delegateTask.setVariable("passFlag",object.getString("passFlag")); + //后续节点所需要的数据 + List liablePeopleList = new ArrayList<>(); + //获取对象中的项目的数据 + //先获取标准的数据 + List breakdownList = JSONArray.parseArray(object.getString("breakdownList"), BreakdownList.class); + //再获取产品线和项目对应信息 + List dataList = JSONArray.parseArray(object.getString("dataList"), DataList.class); + //在研为0 在产为1 //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - String user = object.getString("prcCreateUser"); - String username = object.getString("prcCreateUserName"); - String standName = object.getString("standName"); - String prcName = standName+"-标准项目合规评估-标准法规部业务经理审批"; + String user = delegateTask.getVariable("prcCreateUser",String.class); + String username = delegateTask.getVariable("prcCreateUserName",String.class); + String prcName = "标准项目合规评估-审批"; 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("5"); one1.setPrcName(prcName); @@ -82,6 +62,64 @@ public class PEPmanagerApproveAfter implements TaskListener { one1.setCreatUserName(username); busProcessNameService.saveOrUpdate(one1); } + //生成任务信息 + Map map=new HashMap<>(); + //是否审批通过 passFlag == 1 不通过 + if ("2".equals(String.valueOf(object.get("passFlag")))) { + //如果流程通过标识为1 则为不通过发送消息给用户流程结束 + } else { + int count=0; + for (DataList da : dataList) { + PEPres pePres=new PEPres(); + List pepdtos=new ArrayList<>(); + for (SarStandProjectLibraries sa:da.getSarStandProjectLibraries()) { + for (BreakdownList breakdownList1:breakdownList) { + //造数据 + //项目 + PEPDTO res = new PEPDTO(); + BeanUtils.copyProperties(pepdto, res); + List dataLists = new ArrayList<>(); + DataList dataList1 = new DataList(); + List list = new ArrayList<>(); + SarStandProjectLibraries libraries = new SarStandProjectLibraries(); + BeanUtils.copyProperties(sa, libraries); + res.setSarStandProjectLibraries(libraries); + list.add(sa); + dataList1.setSarStandProjectLibraries(list); + dataLists.add(dataList1); + res.setDataList(dataLists); + //标准 数据 + BreakdownList breakdownList2 = new BreakdownList(); + BeanUtils.copyProperties(breakdownList1, breakdownList2); + List breakdownLists = new ArrayList<>(); + breakdownLists.add(breakdownList2); + res.setBreakdownList(breakdownLists); + res.setCertifiedEngineerName(object.getString("certifiedEngineerName")); + res.setQualityEngineerName(object.getString("qualityEngineerName")); + //存储终点数据 + res.setDistributePerson(da.getDistributePerson()); + res.setDistributePersonId(da.getDistributePersonId()); + res.setUname(da.getUname()); + res.setProjectManager(da.getProjectManager()); + //时间 + res.setXCXSSRQ(String.valueOf(delegateTask.getVariable("XCXSSRQ"))); + res.setZCCSSRQ(String.valueOf(delegateTask.getVariable("ZCCSSRQ"))); + pepdtos.add(res); + } + } + pePres.setPepdtos(pepdtos); + map.put(da.getDistributePersonId(),pePres); +// 处理分发责任人 + if (!liablePeopleList.contains(da.getDistributePersonId())){ + liablePeopleList.add(da.getDistributePersonId()); + count++; + } + + } + delegateTask.setVariable("liablePeopleList",liablePeopleList); + delegateTask.setVariable("PEPAllCount",count); + } + // 存储当前节点意见1 // 存储当前节点意见 BusProcessNew busProcessNew = new BusProcessNew(); busProcessNew.setMsgType("clause"); @@ -93,16 +131,17 @@ public class PEPmanagerApproveAfter implements TaskListener { busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); busBean.save(busProcessNew); - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + + if(liablePeopleList != null && !liablePeopleList.isEmpty()){ + for(String liable : liablePeopleList){ BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); - busProcessNewNext.setMesg(object.toJSONString()); + busProcessNewNext.setMesg(JSONObject.toJSONString(map.get(liable))); busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName()); - busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setUserId(liable); busBean.save(busProcessNewNext); } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveBefore.java index 1807c9e3..0a84956b 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPmanagerApproveBefore.java @@ -15,6 +15,7 @@ public class PEPmanagerApproveBefore implements TaskListener { public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPstartAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPstartAfter.java index e41d53c5..9dc0037e 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPstartAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPstartAfter.java @@ -1,16 +1,14 @@ package com.ydw.bat.wkflow.listener.projectEvaluationProcess; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.ydw.bat.wkflow.business_auth.LawsUserInfoService; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; import com.ydw.bat.wkflow.business_main.datas.entity.Datas; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; import com.ydw.bat.wkflow.util.SpringContextUtil; -import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; @@ -31,35 +29,35 @@ public class PEPstartAfter implements TaskListener { //流程信息 IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); - LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class); - //根据流程id找到流程信息 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); Datas datas = datasService.getOne(queryWrapper); - JSONObject object2 = JSONObject.parseObject(datas.getFormValsJson()); - JSONObject object = null; - delegateTask.setVariable("objectJson",object2); + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + delegateTask.setVariable("objectJson", object); //获取对象中的项目的数据 -// JSONArray os=object.getJSONArray("sarStandProjectLibraries"); -// for (Object o:os) { - -// System.out.println(object1); -// } //业务经理Id List nextUserList = new ArrayList(); - delegateTask.setVariable("YWuserId",object.getString("YWuserId")); - nextUserList.add(object.getString("YWuserId")); + //赋值审批经理 + delegateTask.setVariable("YWuserId", object.getString("dockUser")); + nextUserList.add(object.getString("dockUser")); + //存储新车型实施日期,在产车实施日期 + delegateTask.setVariable("ZCCSSRQ",object.getString("ZCCSSRQ")); + delegateTask.setVariable("XCXSSRQ",object.getString("XCXSSRQ")); + //赋值标准法规部领导 + delegateTask.setVariable("DLUserIds", object.getString("ministerUser")); + delegateTask.setVariable("qualityEngineer", object.getString("qualityEngineer")); //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); String user = object.getString("prcCreateUser"); String username = object.getString("prcCreateUserName"); - String standName = object.getString("standName"); - String prcName = standName+"-标准项目合规评估"; + delegateTask.setVariable("prcCreateUser", user); + delegateTask.setVariable("prcCreateUserName", username); + String prcName = "标准项目合规评估流程-发起"; 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("5"); one1.setPrcName(prcName); @@ -67,30 +65,30 @@ public class PEPstartAfter implements TaskListener { one1.setCreatUserName(username); busProcessNameService.saveOrUpdate(one1); } - throw new ActivitiException("lalallallal"); + // 存储当前节点意见 -// BusProcessNew busProcessNew = new BusProcessNew(); -// busProcessNew.setMsgType("clause"); -// busProcessNew.setPId(delegateTask.getProcessInstanceId()); -// busProcessNew.setMesg(object.toJSONString()); -// busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); -// busProcessNew.setTaskId(delegateTask.getId()); -// busProcessNew.setCommitText(object.getString("commentText")); -// busProcessNew.setFinishFlag("0"); -// busProcessNew.setTaskInfo(delegateTask.getName()); -// busBean.save(busProcessNew); -// 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); -// } -// } + BusProcessNew busProcessNew = new BusProcessNew(); + busProcessNew.setMsgType("clause"); + busProcessNew.setPId(delegateTask.getProcessInstanceId()); + busProcessNew.setMesg(object.toJSONString()); + busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNew.setTaskId(delegateTask.getId()); + busProcessNew.setFinishFlag("0"); + busProcessNew.setTaskInfo(delegateTask.getName()); + busBean.save(busProcessNew); + + 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); + } + } } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateAfter.java index f426c370..2238b3ee 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateAfter.java @@ -1,5 +1,6 @@ package com.ydw.bat.wkflow.listener.projectEvaluationProcess; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_auth.LawsUserInfoService; @@ -10,13 +11,13 @@ import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; import com.ydw.bat.wkflow.util.SpringContextUtil; +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.ArrayList; -import java.util.Arrays; import java.util.Date; import java.util.List; @@ -39,24 +40,25 @@ public class PEPtaskEstimateAfter 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()); + + JSONArray jsonArray=JSONArray.parseArray(object.getString("dataList")); //设置分发负责人 List nextUserList = new ArrayList(); - if (StringUtils.isNotBlank(object.getString("ffUserId"))){ - delegateTask.setVariable("ffUserId",object.getString("ffUserId")); - nextUserList.add(object.getString("ffUserId")); + JSONObject object1=JSONObject.parseObject(jsonArray.getString(0)); + if (StringUtils.isNotBlank(object1.getString("distributePersonId"))) { + delegateTask.setVariable("ffUserId", object1.getString("distributePersonId")); + nextUserList.add(delegateTask.getVariable("ffUserId",String.class)); } //截止时间 流程描述 创建人 String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - String user = object.getString("prcCreateUser"); - String username = object.getString("prcCreateUserName"); - String standName = object.getString("standName"); - String prcName = standName+"-标准项目合规评估-标准法规部业务经理审批"; + String user = delegateTask.getVariable("prcCreateUser", String.class); + String username = delegateTask.getVariable("prcCreateUserName", String.class); + String prcName = "标准项目合规评估-合规评估"; 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("5"); one1.setPrcName(prcName); @@ -75,8 +77,8 @@ public class PEPtaskEstimateAfter implements TaskListener { busProcessNew.setFinishFlag("0"); busProcessNew.setTaskInfo(delegateTask.getName()); busBean.save(busProcessNew); - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + if (nextUserList != null && !nextUserList.isEmpty()) { + for (String nextUser : nextUserList) { BusProcessNew busProcessNewNext = new BusProcessNew(); busProcessNewNext.setMsgType("clause"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateBefore.java index f0d8fb29..e80a780e 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskEstimateBefore.java @@ -15,9 +15,11 @@ public class PEPtaskEstimateBefore implements TaskListener { public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); - if(!list.isEmpty()){ + if (!list.isEmpty()) { BusProcessNew one1 = list.get(0); one1.setTaskId(delegateTask.getId()); busBean.saveOrUpdate(one1); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueAfter.java index 6b3b064f..feaac59a 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueAfter.java @@ -1,8 +1,10 @@ package com.ydw.bat.wkflow.listener.projectEvaluationProcess; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.ydw.bat.wkflow.business_auth.LawsUserInfoService; +import com.ydw.bat.wkflow.business_main.datas.dto.PEPres; +import com.ydw.bat.wkflow.business_main.datas.dto.Step3DTO; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; import com.ydw.bat.wkflow.business_main.datas.entity.Datas; @@ -10,15 +12,13 @@ import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; import com.ydw.bat.wkflow.util.SpringContextUtil; +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.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; public class PEPtaskLssueAfter implements TaskListener { @@ -32,68 +32,88 @@ public class PEPtaskLssueAfter implements TaskListener { //流程信息 IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); - LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class); - //根据流程id找到流程信息 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); Datas datas = datasService.getOne(queryWrapper); - JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); - delegateTask.setVariable("objectJson",object); - - List nextUserList = new ArrayList(); - //流程下发给对应的人 - if (StringUtils.isNotBlank(object.getString("workPeoples"))){ - if(object.getString("workPeoples").contains(",")){ - nextUserList = Arrays.asList(object.getString("workPeoples").split(",")); + JSONArray object1 = JSONArray.parseArray(datas.getFormValsJson()); + List step3DTOS = JSONArray.parseArray(datas.getFormValsJson(), Step3DTO.class); + Map map = new HashMap(); + map.put(step3DTOS.get(0).getDistributePersonId(), datas.getFormValsJson()); + delegateTask.setVariable("Step3", map); + //流程下发给对应的人 + List peoples = delegateTask.getVariable("liablePeopleList", List.class); + List workPeoples=new ArrayList<>(); + List res = new ArrayList<>(); + Map> maps=new HashMap(); + for (String s : peoples) { + if (null!=map.get(s)) { + res.addAll(JSONArray.parseArray(String.valueOf(map.get(s)), Step3DTO.class)); + JSONArray.parseArray(String.valueOf(map.get(s)), Step3DTO.class).forEach(step3DTO -> { + if (!workPeoples.contains(step3DTO.getImplementerId())) { + workPeoples.add(step3DTO.getImplementerId()); + } + if (null != maps.get(step3DTO.getImplementerId())) { + maps.get(step3DTO.getImplementerId()).add(step3DTO); + } else { + List dtos = new ArrayList<>(); + dtos.add(step3DTO); + maps.put(step3DTO.getImplementerId(), dtos); + } + }); + } + } + if (null==delegateTask.getVariable("workPeoples")) { + delegateTask.setVariable("workPeoples", workPeoples); }else { - nextUserList.add(object.getString("workPeoples")); + delegateTask.getVariable("workPeoples",List.class).addAll(workPeoples); } - // 配置多实例 - delegateTask.setVariable("workPeoples",nextUserList); - } + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = delegateTask.getVariable("prcCreateUser", String.class); + String username = delegateTask.getVariable("prcCreateUserName", String.class); + String prcName = "标准项目合规评估-流程下发"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setOverTime(OVERTIME); + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 - //截止时间 流程描述 创建人 - String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - String user = object.getString("prcCreateUser"); - String username = object.getString("prcCreateUserName"); - String standName = object.getString("standName"); - String prcName = standName+"-标准项目合规评估-标准法规部业务经理审批"; - QueryWrapper queryWrapper2 = new QueryWrapper(); - queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); - BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); - if(one1!=null){ - one1.setOverTime(OVERTIME); - one1.setPrcType("5"); - one1.setPrcName(prcName); - one1.setCreatUser(user); - one1.setCreatUserName(username); - busProcessNameService.saveOrUpdate(one1); - } - // 存储当前节点意见 - BusProcessNew busProcessNew = new BusProcessNew(); - busProcessNew.setMsgType("clause"); - busProcessNew.setPId(delegateTask.getProcessInstanceId()); - busProcessNew.setMesg(object.toJSONString()); - busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); - busProcessNew.setTaskId(delegateTask.getId()); - busProcessNew.setCommitText(object.getString("commentText")); - busProcessNew.setFinishFlag("0"); - busProcessNew.setTaskInfo(delegateTask.getName()); - busBean.save(busProcessNew); - 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); + BusProcessNew busProcessNew = new BusProcessNew(); + PEPres pePres=new PEPres(); + pePres.setStep3DTOS(res); + busProcessNew.setMsgType("clause"); + busProcessNew.setPId(delegateTask.getProcessInstanceId()); + busProcessNew.setMesg(JSONObject.toJSONString(pePres)); + busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNew.setTaskId(delegateTask.getId()); + busProcessNew.setFinishFlag("0"); + busProcessNew.setTaskInfo(delegateTask.getName()); + busBean.save(busProcessNew); + //更改遍历方式!!遍历生成的数据条数 每条都要判断!! + if (workPeoples != null && !workPeoples.isEmpty()) { + for (String nextUser : workPeoples) { + PEPres press=new PEPres(); + press.setStep3DTOS(maps.get(nextUser)); + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(JSONObject.toJSONString(press)); + busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setUserId(nextUser); + busBean.save(busProcessNewNext); + } } } - } +// } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueBefore.java index b598bd82..ddd70bd7 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationProcess/PEPtaskLssueBefore.java @@ -15,9 +15,11 @@ public class PEPtaskLssueBefore implements TaskListener { public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); - if(!list.isEmpty()){ + if (!list.isEmpty()) { BusProcessNew one1 = list.get(0); one1.setTaskId(delegateTask.getId()); busBean.saveOrUpdate(one1); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ApplyApplicantBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ApplyApplicantBefore.java index 26a7038c..5bf9421f 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ApplyApplicantBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ApplyApplicantBefore.java @@ -20,6 +20,8 @@ public class ApplyApplicantBefore implements TaskListener{ public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/CountersignBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/CountersignBefore.java index 70da4d04..3647ebae 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/CountersignBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/CountersignBefore.java @@ -17,6 +17,8 @@ public class CountersignBefore implements TaskListener{ public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ManagerApproveBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ManagerApproveBefore.java index 0eb5e0cd..172e1521 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ManagerApproveBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardLibrary/ManagerApproveBefore.java @@ -20,6 +20,8 @@ public class ManagerApproveBefore implements TaskListener{ public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index d452a43f..0af6d7e4 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -18,7 +18,7 @@ eureka: defaultZone: http://192.168.10.47:8761/eureka/ spring: application: - name: bat-wkflow + name: shan3 http: encoding: charset: UTF-8 From b8f4fa6784ef8c59ef41bc694102d4c9e4b427d4 Mon Sep 17 00:00:00 2001 From: yuezhihang Date: Fri, 16 Jul 2021 09:05:47 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E6=A0=87=E5=87=86=E5=90=88=E8=A7=84?= =?UTF-8?q?=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B=EF=BC=81=EF=BC=81=EF=BC=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../standardRegulatoryProcess/CountersignSRPBefore.java | 2 ++ .../standardRegulatoryProcess/SRPApplyApplicantBefore.java | 2 ++ .../standardRegulatoryProcess/SRPManagerApproveAfter.java | 2 +- .../standardRegulatoryProcess/SRPManagerApproveBefore.java | 2 ++ 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/CountersignSRPBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/CountersignSRPBefore.java index bb6095a4..3588a4f1 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/CountersignSRPBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/CountersignSRPBefore.java @@ -17,6 +17,8 @@ public class CountersignSRPBefore implements TaskListener{ public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPApplyApplicantBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPApplyApplicantBefore.java index ee81ca5f..3af9efd5 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPApplyApplicantBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPApplyApplicantBefore.java @@ -17,6 +17,8 @@ public class SRPApplyApplicantBefore implements TaskListener{ public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){ diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveAfter.java index 404aa9bf..50b6033e 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveAfter.java @@ -69,7 +69,7 @@ public class SRPManagerApproveAfter implements TaskListener{ DetailedUpDto detailed=new DetailedUpDto(); detailed.setId(object.getString("standId")); detailed.setApplicationScope(object.getString("applyRegion")); - detailed.setFileId(object.getString("enclosure")); + detailed.setFileId(object.getString("model")); detailed.setRemark(object.getString("descriptionList")); detailed.setInforlist(object.getString("inforlist")); detailed.setDetailedListState("1"); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveBefore.java index 74f55520..765022d2 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardRegulatoryProcess/SRPManagerApproveBefore.java @@ -17,6 +17,8 @@ public class SRPManagerApproveBefore implements TaskListener{ public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); List list = busBean.list(queryWrapper1); if(!list.isEmpty()){