diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/InspectorApprovalAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/InspectorApprovalAfter.java new file mode 100644 index 00000000..0dfcb6d8 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/InspectorApprovalAfter.java @@ -0,0 +1,105 @@ +package com.ydw.bat.wkflow.listener.policyResearchGroupAttendMeeting; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +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; +import org.apache.commons.lang.StringUtils; + +import java.util.ArrayList; +import java.util.List; + +/** + * 政策课题参会审定后 + */ +public class InspectorApprovalAfter implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + IDatasService datasService = SpringContextUtil.getBean(IDatasService.class); + //流程节点信息 + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + //流程信息 + IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.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); + + String user = delegateTask.getVariable("applyUserId", String.class); + String username = delegateTask.getVariable("applyUserName", String.class); + String topicName = object.getString("topicName"); + String prcName= topicName + "-政策课题入会流程"; + String taskInfo = ""; + List nextUserList = new ArrayList<>(); + + if (object.getInteger("approvalOpinion") == 0) { + // 审定通过 + delegateTask.setVariable("approvalOpinion", 0); + if (StringUtils.isNotBlank(object.getString("presidentId"))) { + delegateTask.setVariable("presidentId", object.getString("presidentId")); + nextUserList.add(object.getString("presidentId")); + taskInfo = "批准"; + } else { + throw new ActivitiException("1#2公司副总不存在,请配置相关人员"); + } + } else { + // 审定驳回 + delegateTask.setVariable("approvalOpinion", 1); + if (StringUtils.isNotBlank(object.getString("applyUserId"))){ + delegateTask.setVariable("applyUserId", object.getString("applyUserId")); + nextUserList.add(object.getString("applyUserId")); + taskInfo = "重新起草"; + } else { + throw new ActivitiException("1#2起草人不存在,请配置相关人员"); + } + } + + // 存储当前节点意见 + if (null != object.getString("commentText")) { + QueryWrapper queryWrapper3 = new QueryWrapper<>(); + queryWrapper3.eq("TASK_ID", delegateTask.getId()); + queryWrapper3.eq("USER_ID", delegateTask.getAssignee()); + List list = busBean.list(queryWrapper3); + if (!list.isEmpty()) { + BusProcessNew busProcessNews = list.get(0); + busProcessNews.setTaskId(delegateTask.getId()); + busProcessNews.setCommitText(object.getString("commentText")); + busBean.saveOrUpdate(busProcessNews); + } + } + + QueryWrapper queryWrapper2 = new QueryWrapper<>(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("31"); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + + for (String nextUser : nextUserList) { + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(object.toJSONString()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(taskInfo); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/InspectorApprovalBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/InspectorApprovalBefore.java new file mode 100644 index 00000000..6859d0f7 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/InspectorApprovalBefore.java @@ -0,0 +1,38 @@ +package com.ydw.bat.wkflow.listener.policyResearchGroupAttendMeeting; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; +import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_mq.service.CreateMQService; +import com.ydw.bat.wkflow.util.SpringContextUtil; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +import java.util.List; + +/** + * 政策课题参会审定前 + */ +public class InspectorApprovalBefore implements TaskListener { + + @Override + 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()){ + BusProcessNew one1 = list.get(0); + one1.setTaskId(delegateTask.getId()); + busBean.saveOrUpdate(one1); + + CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("policyTopicParticipation/step3?prcType=31"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalAfter.java index e65964a9..4827d886 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalAfter.java @@ -2,7 +2,6 @@ package com.ydw.bat.wkflow.listener.policyResearchGroupAttendMeeting; 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; @@ -10,88 +9,98 @@ 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.util.ArrayList; +import java.util.Arrays; import java.util.List; +/** + * 政策课题入会审核后 + */ public class MinisterApprovalAfter implements TaskListener { @Override public void notify(DelegateTask delegateTask) { + // 默认流程数据接口 IDatasService datasService = SpringContextUtil.getBean(IDatasService.class); - //流程节点信息 + // 流程节点信息 IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); - //流程信息 + // 流程信息 IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); - //根据流程id找到流程信息 + // 根据流程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); - //截止时间 流程描述 创建人 - String user = delegateTask.getVariable("createUser",String.class); - String username = delegateTask.getVariable("createUserName",String.class); - String prcName=""; + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + delegateTask.setVariable("objectJson", object); - List nextUserList = new ArrayList(); + String user = delegateTask.getVariable("applyUserId", String.class); + String username = delegateTask.getVariable("applyUserName", String.class); + String topicName = object.getString("topicName"); + String prcName = topicName + "-政策课题组参会流程"; + String taskInfo = ""; + List nextUserList = new ArrayList<>(); - if("1".equals(object.getString("fgfbz"))){ - delegateTask.setVariable("fgfbz", "1"); - if (StringUtils.isNotBlank(object.getString("presidentId"))){ - nextUserList.add(object.getString("presidentId")); - delegateTask.setVariable("presidentApproval", object.getString("presidentId")); - prcName = "政策课题组参会流程-公司副总批准"; + if (object.getInteger("approvalOpinion") == 0) { + // 审核通过 + delegateTask.setVariable("approvalOpinion", 0); + if (StringUtils.isNotBlank(object.getString("inspectorId"))) { + List inspectorIdList = Arrays.asList(object.getString("inspectorId").split(",")); + delegateTask.setVariable("inspectorIdList", inspectorIdList); + nextUserList.addAll(inspectorIdList); + taskInfo = "审定"; + } else { + throw new ActivitiException("1#2法规认证部副总监不存在,请配置相关人员"); } - }else if ("0".equals(object.getString("fgfbz"))){ - delegateTask.setVariable("fgfbz", "0"); - if (StringUtils.isNotBlank(object.getString("revisionId"))){ - nextUserList.add(object.getString("revisionId")); - delegateTask.setVariable("revision", object.getString("revisionId")); - prcName = "政策课题组参会流程-修订参会信息"; + } else { + // 审核驳回 + delegateTask.setVariable("approvalOpinion", 1); + if (StringUtils.isNotBlank(object.getString("applyUserId"))) { + delegateTask.setVariable("applyUserId", object.getString("applyUserId")); + nextUserList.add(object.getString("applyUserId")); + taskInfo = "重新起草"; + } else { + throw new ActivitiException("1#2起草人不存在,请配置相关人员"); } - }else{ - delegateTask.setVariable("fgfbz", "2"); - prcName = "政策课题组参会流程"; } - - QueryWrapper queryWrapper2 = new QueryWrapper(); - queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); - BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); - if(one1!=null){ - one1.setPrcType("18"); -// one1.setPrcName(prcName); - one1.setCreatUser(user); - one1.setCreatUserName(username); - busProcessNameService.saveOrUpdate(one1); - } // 存储当前节点意见 - if (null!=object.getString("commentText")) { - QueryWrapper queryWrapper3 = new QueryWrapper(); + if (null != object.getString("commentText")) { + QueryWrapper queryWrapper3 = new QueryWrapper<>(); queryWrapper3.eq("TASK_ID", delegateTask.getId()); - queryWrapper3.eq("USER_ID",delegateTask.getAssignee()); + queryWrapper3.eq("USER_ID", delegateTask.getAssignee()); List list = busBean.list(queryWrapper3); - if(!list.isEmpty()){ + if (!list.isEmpty()) { BusProcessNew busProcessNews = list.get(0); busProcessNews.setTaskId(delegateTask.getId()); busProcessNews.setCommitText(object.getString("commentText")); busBean.saveOrUpdate(busProcessNews); } } - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + + QueryWrapper queryWrapper2 = new QueryWrapper<>(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("31"); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + + if (!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.setTaskInfo(taskInfo); busProcessNewNext.setUserId(nextUser); busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalBefore.java index 7a1500fc..f994d05c 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/MinisterApprovalBefore.java @@ -10,11 +10,14 @@ import org.activiti.engine.delegate.TaskListener; import java.util.List; +/** + * 政策课题参会审核前 + */ public class MinisterApprovalBefore implements TaskListener { @Override public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); - QueryWrapper queryWrapper1 = new QueryWrapper(); + QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); @@ -26,7 +29,7 @@ public class MinisterApprovalBefore implements TaskListener { CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 - one1.setLink("zcchStep3?prcType=18"); + one1.setLink("policyTopicParticipation/step2?prcType=31"); one1.setTaskInfo(delegateTask.getName()); oaService.sendTodoMq(one1); } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartAfter.java index f0e0030b..8d99ff85 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartAfter.java @@ -2,7 +2,6 @@ package com.ydw.bat.wkflow.listener.policyResearchGroupAttendMeeting; 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; @@ -10,13 +9,18 @@ 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.util.ArrayList; +import java.util.Arrays; import java.util.List; +/** + * 政策课题参会起草后 + */ public class PRGAMStartAfter implements TaskListener { @Override public void notify(DelegateTask delegateTask) { @@ -34,56 +38,55 @@ public class PRGAMStartAfter implements TaskListener { JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); delegateTask.setVariable("objectJson",object); - List nextUserList = new ArrayList(); + List nextUserList = new ArrayList<>(); if(StringUtils.isNotBlank(object.getString("ministerId"))){ - delegateTask.setVariable("ministerApproval", object.getString("ministerId")); - nextUserList.add(object.getString("ministerId")); + List ministerIdList = Arrays.asList(object.getString("ministerId").split(",")); + delegateTask.setVariable("ministerIdList",ministerIdList); + nextUserList.addAll(ministerIdList); + } else { + throw new ActivitiException("1#2法规认证部部长不存在,请配置相关人员"); } //截止时间 流程描述 创建人 -// String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - String user = object.getString("revisionId"); - delegateTask.setVariable("createUser",user); - String username = object.getString("revisionIdName"); - delegateTask.setVariable("createUserName",username); - String prcName = ""; - prcName= "政策课题组参会流程-法规认证部副部长审核"; + String user = object.getString("applyUserId"); + String username = object.getString("applyUserName"); + String topicName = object.getString("topicName"); + String prcName = topicName + "-政策课题参会流程"; - - QueryWrapper queryWrapper2 = new QueryWrapper(); - queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + QueryWrapper queryWrapper2 = new QueryWrapper<>(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); - if(one1!=null){ - one1.setPrcType("18"); + if (one1 != null) { + one1.setPrcType("31"); one1.setPrcName(prcName); one1.setCreatUser(user); one1.setCreatUserName(username); busProcessNameService.saveOrUpdate(one1); } - // 存储当前节点意见 + if (null != object.getString("commentText")) { BusProcessNew busProcessNews = new BusProcessNew(); busProcessNews.setMsgType("clause"); busProcessNews.setPId(delegateTask.getProcessInstanceId()); busProcessNews.setMesg(object.toJSONString()); - busProcessNews.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNews.setFinishFlag("0"); busProcessNews.setTaskInfo(delegateTask.getName()); busProcessNews.setTaskId(delegateTask.getId()); - busProcessNews.setUserId("start"); + busProcessNews.setUserId(user); busProcessNews.setPrcName(prcName); busProcessNews.setCommitText(object.getString("commentText")); busBean.save(busProcessNews); } - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + + if (!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.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setTaskInfo("审核"); busProcessNewNext.setUserId(nextUser); busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartBefore.java index 6a3b6b3b..79e93e6d 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PRGAMStartBefore.java @@ -3,6 +3,9 @@ package com.ydw.bat.wkflow.listener.policyResearchGroupAttendMeeting; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +/** + * 政策课题参会起草前 + */ public class PRGAMStartBefore implements TaskListener { @Override public void notify(DelegateTask delegateTask) { diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalAfter.java index 4e9c63f1..946a45b1 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalAfter.java @@ -1,17 +1,16 @@ package com.ydw.bat.wkflow.listener.policyResearchGroupAttendMeeting; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 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.business_slrs.dao.WgDept; 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; @@ -21,6 +20,9 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +/** + * 政策课题参会批准后 + */ public class PresidentApprovalAfter implements TaskListener { @Override public void notify(DelegateTask delegateTask) { @@ -30,112 +32,79 @@ public class PresidentApprovalAfter 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); + String user = delegateTask.getVariable("applyUserId", String.class); + String username = delegateTask.getVariable("applyUserName", String.class); + String topicName = object.getString("topicName"); + String prcName= topicName + "-政策课题参会流程"; + String taskInfo = ""; - //截止时间 流程描述 创建人 - String user = delegateTask.getVariable("createUser",String.class); - String username = delegateTask.getVariable("createUserName",String.class); - String prcName=""; - List nextUserList = new ArrayList(); + List nextUserList = new ArrayList<>(); - if("1".equals(object.getString("gsfz"))){ - delegateTask.setVariable("gsfz", "1"); - JSONArray jsonArray=JSONArray.parseArray(object.getString("itemList")); -// List wgDept=new ArrayList<>(); -// jsonArray.forEach(o -> { -// JSONObject os=JSONObject.parseObject(o.toString()); -// WgDept wgDept1=new WgDept(); -// wgDept1.setWgId(object.getString("standId")); -// wgDept1.setDeptOrder(os.getString("itemsNum")); -// wgDept1.setDeptPeopleId(os.getString("itemsName")); -// wgDept1.setIdentity(os.getString("responsibleUnitShow")); -// wgDept1.setJoinfile(os.getString("zxUserIdName")); -// wgDept1.setJoinId(os.getString("itermsConditions")); -// wgDept.add(wgDept1); -// }); -// -// JSONArray jsonArray1=JSONArray.parseArray(delegateTask.getVariable("itemListOld",String.class)); -// jsonArray1.forEach(obj ->{ -// JSONObject object1 = JSONObject.parseObject(obj.toString()); -// WgDept wgDept1=new WgDept(); -// wgDept1.setWgId(object.getString("standId")); -// wgDept1.setDeptOrder(object1.getString("itemsNum")); -// wgDept1.setDeptPeopleId(object1.getString("itemsName")); -// wgDept1.setIdentity(object1.getString("responsibleUnitShow")); -// wgDept1.setJoinfile(object1.getString("zxUserIdName")); -// wgDept1.setJoinId(object1.getString("itermsConditions")); -// wgDept.add(wgDept1); -// }); -// -// lawsUserInfoService.wgDeptSaveBatch(wgDept); - - prcName = "政策课题组参会流程"; - }else{ - delegateTask.setVariable("gsfz", "0"); - if (StringUtils.isNotBlank(object.getString("revisionId"))){ - nextUserList.add(object.getString("revisionId")); - delegateTask.setVariable("revision", object.getString("revisionId")); - prcName = "政策课题组参会流程-修订参会信息"; + if (object.getInteger("approvalOpinion") == 0) { + // 批准通过 + delegateTask.setVariable("approvalOpinion", 0); + LambdaQueryWrapper queryWrapper2 = new LambdaQueryWrapper<>(); + queryWrapper2.eq(BusProcessName::getPrcId, delegateTask.getProcessInstanceId()); + BusProcessName one2 = busProcessNameService.getOne(queryWrapper2); + String overTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + if (one2 != null) { + one2.setOverTime(overTime); + busProcessNameService.saveOrUpdate(one2); } - } - - - String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); - QueryWrapper queryWrapper2 = new QueryWrapper(); - queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); - BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); - if(one1!=null){ - if("1".equals(object.getString("gsfz"))){ - one1.setOverTime(OVERTIME); + } else { + // 批准驳回 + delegateTask.setVariable("approvalOpinion", 1); + if (StringUtils.isNotBlank(object.getString("applyUserId"))) { + delegateTask.setVariable("applyUserId", object.getString("applyUserId")); + nextUserList.add(object.getString("applyUserId")); + taskInfo = "重新起草"; + } else { + throw new ActivitiException("1#2起草人不存在,请配置相关人员"); } - one1.setPrcType("18"); -// one1.setPrcName(prcName); - one1.setCreatUser(user); - one1.setCreatUserName(username); - busProcessNameService.saveOrUpdate(one1); } // 存储当前节点意见 - if (null!=object.getString("commentText")) { - QueryWrapper queryWrapper3 = new QueryWrapper(); + if (null != object.getString("commentText")) { + QueryWrapper queryWrapper3 = new QueryWrapper<>(); queryWrapper3.eq("TASK_ID", delegateTask.getId()); - queryWrapper3.eq("USER_ID",delegateTask.getAssignee()); + queryWrapper3.eq("USER_ID", delegateTask.getAssignee()); List list = busBean.list(queryWrapper3); - if(!list.isEmpty()){ + if (!list.isEmpty()) { BusProcessNew busProcessNews = list.get(0); busProcessNews.setTaskId(delegateTask.getId()); busProcessNews.setCommitText(object.getString("commentText")); busBean.saveOrUpdate(busProcessNews); } } - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + + QueryWrapper queryWrapper2 = new QueryWrapper<>(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("31"); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + + if (!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.setTaskInfo(taskInfo); busProcessNewNext.setUserId(nextUser); busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } - }else { - BusProcessNew busProcessNewNext = new BusProcessNew(); - busProcessNewNext.setMsgType("clause"); - busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); - busProcessNewNext.setMesg(object.toJSONString()); - busProcessNewNext.setFinishFlag("0"); - busProcessNewNext.setTaskInfo("政策课题组参会流程-流程结束"); - busProcessNewNext.setPrcName(prcName); - busBean.save(busProcessNewNext); } } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalBefore.java index e138d2a0..fe1fa148 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/PresidentApprovalBefore.java @@ -10,11 +10,14 @@ import org.activiti.engine.delegate.TaskListener; import java.util.List; +/** + * 政策课题参会批准前 + */ public class PresidentApprovalBefore implements TaskListener { @Override public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); - QueryWrapper queryWrapper1 = new QueryWrapper(); + QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); @@ -26,7 +29,7 @@ public class PresidentApprovalBefore implements TaskListener { CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 - one1.setLink("zcchStep2?prcType=18"); + one1.setLink("policyTopicParticipation/step4?prcType=31"); one1.setTaskInfo(delegateTask.getName()); oaService.sendTodoMq(one1); } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationAfter.java index ca258538..f5519a10 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationAfter.java @@ -2,7 +2,6 @@ package com.ydw.bat.wkflow.listener.policyResearchGroupAttendMeeting; 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; @@ -10,13 +9,19 @@ 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.util.ArrayList; +import java.util.Arrays; import java.util.List; + +/** + * 政策课题参会重新起草后 + */ public class RevisionInformationAfter implements TaskListener { @Override public void notify(DelegateTask delegateTask) { @@ -26,41 +31,41 @@ public class RevisionInformationAfter 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); - //截止时间 流程描述 创建人 - String user = delegateTask.getVariable("createUser",String.class); - String username = delegateTask.getVariable("createUserName",String.class); - String prcName=""; - List nextUserList = new ArrayList(); + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + delegateTask.setVariable("objectJson", object); - if (StringUtils.isNotBlank(object.getString("ministerId"))){ - nextUserList.add(object.getString("ministerId")); - delegateTask.setVariable("ministerApproval", object.getString("ministerId")); - prcName = "政策课题组参会流程-法规认证部副部长审核"; + List nextUserList = new ArrayList<>(); + + if (StringUtils.isNotBlank(object.getString("ministerId"))) { + List ministerIdList = Arrays.asList(object.getString("ministerId").split(",")); + delegateTask.setVariable("ministerIdList",ministerIdList); + nextUserList.addAll(ministerIdList); + } else { + throw new ActivitiException("1#2法规认证部部长不存在,请配置相关人员"); } + String user = delegateTask.getVariable("applyUserId", String.class); + String username = delegateTask.getVariable("applyUserName", String.class); + String topicName = object.getString("topicName"); + String prcName= topicName + "-政策课题组参会流程"; - QueryWrapper queryWrapper2 = new QueryWrapper(); - queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + QueryWrapper queryWrapper2 = new QueryWrapper<>(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); - if(one1!=null){ - one1.setPrcType("18"); -// one1.setPrcName(prcName); + if (one1 != null) { + one1.setPrcType("31"); one1.setCreatUser(user); one1.setCreatUserName(username); busProcessNameService.saveOrUpdate(one1); } //存储当前节点意见 if (null != object.getString("commentText")) { - QueryWrapper queryWrapper3 = new QueryWrapper(); + QueryWrapper queryWrapper3 = new QueryWrapper<>(); queryWrapper3.eq("TASK_ID", delegateTask.getId()); queryWrapper3.eq("USER_ID", delegateTask.getAssignee()); List list = busBean.list(queryWrapper3); @@ -72,15 +77,14 @@ public class RevisionInformationAfter implements TaskListener { } } - if(nextUserList != null && !nextUserList.isEmpty()){ - for(String nextUser : nextUserList){ + if (!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.setTaskInfo("审核"); busProcessNewNext.setUserId(nextUser); busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationBefore.java index 98440476..bb933d98 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyResearchGroupAttendMeeting/RevisionInformationBefore.java @@ -10,11 +10,14 @@ import org.activiti.engine.delegate.TaskListener; import java.util.List; +/** + * 政策课题参会重新起草前 + */ public class RevisionInformationBefore implements TaskListener { @Override public void notify(DelegateTask delegateTask) { IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); - QueryWrapper queryWrapper1 = new QueryWrapper(); + QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); queryWrapper1.eq("USER_ID",delegateTask.getAssignee()); queryWrapper1.isNull("TASK_ID"); @@ -26,7 +29,7 @@ public class RevisionInformationBefore implements TaskListener { CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 - one1.setLink("zcchStep1-1?prcType=18"); + one1.setLink("policyTopicParticipation/step1_1?prcType=31"); one1.setTaskInfo(delegateTask.getName()); oaService.sendTodoMq(one1); }