diff --git a/src/main/java/com/ydw/bat/wkflow/business_slrs/dao/WgDept.java b/src/main/java/com/ydw/bat/wkflow/business_slrs/dao/WgDept.java new file mode 100644 index 00000000..0b09de7e --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_slrs/dao/WgDept.java @@ -0,0 +1,46 @@ +package com.ydw.bat.wkflow.business_slrs.dao; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +@Data +@Accessors(chain = true) +@ApiModel(value="WgDept对象", description="集团参与情况") +public class WgDept { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "id") + @TableId(value = "id",type = IdType.UUID) + private String id; + + @ApiModelProperty(value = "工作组id") + @TableField("wg_id") + private String wgId; + + @ApiModelProperty(value = "我司在工作组排名顺序") + @TableField("dept_order") + private String deptOrder; + + @ApiModelProperty(value = "我司人员") + @TableField("dept_people_id") + private String deptPeopleId; + + @ApiModelProperty(value = "身份") + @TableField("identity") + private String identity; + + @ApiModelProperty(value = "资料") + @TableField("joinfile") + private String joinfile; + + @ApiModelProperty(value = "前端id") + @TableField("join_id") + private String joinId; + + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/lawsLibrary/LawsManagerApproveAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/lawsLibrary/LawsManagerApproveAfter.java new file mode 100644 index 00000000..6d9e8ec5 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/lawsLibrary/LawsManagerApproveAfter.java @@ -0,0 +1,90 @@ +package com.ydw.bat.wkflow.listener.lawsLibrary; + +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.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +import java.text.SimpleDateFormat; +import java.util.Date; + +/** + * 经理人审批后 + */ +public class LawsManagerApproveAfter 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); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); + Datas datas = datasService.getOne(queryWrapper); + + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + + String approvalOpinion = object.get("approvalOpinion") == null ? "" : object.get("approvalOpinion").toString(); + String prcName = "政策入库流程"; + if ("1".equalsIgnoreCase(approvalOpinion)) { + delegateTask.setVariable("applyUserId", object.getString("applyUpdUserId")); + + 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")); + busProcessNew.setPrcName(prcName); + busBean.save(busProcessNew); + + func1(delegateTask, busBean, object, "1"); + delegateTask.setVariable("jlFlag", 1); + } else { + delegateTask.setVariable("jlFlag", 0); + func2(delegateTask, busBean, object, "0", busProcessNameService); + } + } + + private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, String commitFlag) { + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("TASK_ID", delegateTask.getId()); + BusProcessNew one1 = busBean.getOne(queryWrapper1); + if (one1 != null) { + one1.setCommitFlag(commitFlag); + one1.setCommitText(object.getString("commentText")); + busBean.saveOrUpdate(one1); + } + } + + private void func2(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object, String commitFlag, IBusProcessNameService busProcessNameService) { + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one2 = busProcessNameService.getOne(queryWrapper2); + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + if (one2 != null) { + //one2.setPrcName("入库流程结束"); + one2.setOverTime(OVERTIME); + one2.setPrcType("1"); + busProcessNameService.saveOrUpdate(one2); + } + + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.eq("TASK_ID", delegateTask.getId()); + BusProcessNew one1 = busBean.getOne(queryWrapper1); + 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/lawsLibrary/LawsManagerApproveBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/lawsLibrary/LawsManagerApproveBefore.java new file mode 100644 index 00000000..e845d073 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/lawsLibrary/LawsManagerApproveBefore.java @@ -0,0 +1,38 @@ +package com.ydw.bat.wkflow.listener.lawsLibrary; + +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 LawsManagerApproveBefore implements TaskListener{ + @Override + public void notify(DelegateTask delegateTask) { + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.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()); + one1.setTaskInfo(delegateTask.getName()); + busBean.saveOrUpdate(one1); + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("zcrkStep2?prcType=laws1"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/DistributionAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/DistributionAfter.java new file mode 100644 index 00000000..ea7e09be --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/DistributionAfter.java @@ -0,0 +1,117 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +import com.alibaba.fastjson.JSON; +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; +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.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.lang.StringUtils; + +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * 任务下发 + */ +public class DistributionAfter 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); + + 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(); + Map departmentMap = new HashMap<>(); //用户--用户所属部门 + + + if(StringUtils.isNotBlank(object.getString("responUserList"))){ + nextUserList= Arrays.asList(object.getString("responUserList").split(",")); + + JSONArray mapArray = object.getJSONArray("responUserAndInstitutionNameMap"); + for (Object jsonMap : mapArray) { + departmentMap.putAll(JSONObject.parseObject(jsonMap.toString(), Map.class)); + + } + // 配置多实例 + delegateTask.setVariable("commentUserList",nextUserList); + delegateTask.addCandidateUsers(nextUserList); + } + + + JSONArray commentCollectionList=delegateTask.getVariable("commentCollectionList",JSONArray.class); + if (commentCollectionList==null) commentCollectionList=new JSONArray(); + delegateTask.setVariable("commentCollectionList",commentCollectionList); + + + + + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); +// object.getString("standName") + String standName = ""; + String prcName = "政策征求意见流程-工程师填写意见"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if(one1!=null){ + one1.setOverTime(OVERTIME); + one1.setPrcType("laws2"); + 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){ + //标记此用户是事业部还是产品规划部 + JSONObject repositoryObject =object; + repositoryObject.put("department",departmentMap.get(nextUser)); + + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(repositoryObject.toJSONString()); + busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + + private String verifyObj(String str){ + return (str == null || str.equals("")) ? "" : str; + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/DockerReviewAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/DockerReviewAfter.java new file mode 100644 index 00000000..96f93b90 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/DockerReviewAfter.java @@ -0,0 +1,103 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +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.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; +/** + * 对接人审核 + */ +public class DockerReviewAfter 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); + + 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("0".equals(object.getString("actionFlag"))){ + String lawsProveEngineer = JSONObject.parseObject(object.getString("form")).getString("lawsProveEngineerId"); + if(StringUtils.isNotBlank(lawsProveEngineer)){ + delegateTask.setVariable("lawsProveEngineerId",lawsProveEngineer); + delegateTask.setVariable("responseDockerVerify",0); + + nextUserList= Arrays.asList(lawsProveEngineer.split(",")); + delegateTask.addCandidateUsers(nextUserList); + } + }else { + delegateTask.setVariable("responseDockerVerify",1); + } + + + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); +// object.getString("standName") + String standName = ""; + String prcName = "政策征求意见流程-法规工程师单条审核"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if(one1!=null){ +// one1.setOverTime(OVERTIME); + one1.setPrcType("laws2"); + 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.setFinishFlag("0"); + busProcessNewNext.setTaskInfo("法规工程师修订征求意见"); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + + private String verifyObj(String str){ + return (str == null || str.equals("")) ? "" : str; + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerReviewAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerReviewAfter.java new file mode 100644 index 00000000..331be057 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerReviewAfter.java @@ -0,0 +1,126 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +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; +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.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.lang.StringUtils; + +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * 工程师审核 + */ +public class EngineerReviewAfter 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); + + 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 ("0".equals( object.getString("actionFlag"))){ + JSONObject form = JSONObject.parseObject(object.getString("form")); + String lawsProveEngineer = JSONObject.parseObject(form.getString("form")).getString("lawsProveEngineerId"); + if(StringUtils.isNotBlank(lawsProveEngineer)){ + + JSONArray commentCollectionList =delegateTask.getVariable("commentCollectionList", JSONArray.class); + if (commentCollectionList==null) { + commentCollectionList=new JSONArray(); + } + commentCollectionList.addAll(object.getJSONArray("info")); + delegateTask.setVariable("commentCollectionList",commentCollectionList); + + + delegateTask.setVariable("lawsProveEngineerId2",lawsProveEngineer); + delegateTask.setVariable("lawsProveEngineerVerify",0); + + + nextUserList= Arrays.asList(lawsProveEngineer.split(",")); + delegateTask.addCandidateUsers(nextUserList); + } + } + + + + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); +// object.getString("standName") + String standName = ""; + String prcName = "政策征求意见流程-法规工程师汇总修订"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if(one1!=null){ +// one1.setOverTime(OVERTIME); + one1.setPrcType("laws2"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + + + /** + * 当子任务结束时存储 + */ + Integer commentCount=delegateTask.getVariable("commentCount",Integer.class); + if(commentCount==null)commentCount=0; + commentCount++; + delegateTask.setVariable("count",commentCount); + + Collection commentUserList=delegateTask.getVariable("commentUserList",Collection.class); + if(commentCount>=commentUserList.size()){ + // 存储当前节点意见 + 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); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + + private String verifyObj(String str){ + return (str == null || str.equals("")) ? "" : str; + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerRevisionAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerRevisionAfter.java new file mode 100644 index 00000000..768b0e5c --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerRevisionAfter.java @@ -0,0 +1,101 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +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.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; + +/** + * 工程师修订 + */ +public class EngineerRevisionAfter 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); + + 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(); + + JSONObject form = JSONObject.parseObject(object.getString("form")); + String lawsProveMinister = JSONObject.parseObject(form.getString("form")).getString("lawsProveMinisterId"); + if(StringUtils.isNotBlank(lawsProveMinister)){ + + delegateTask.setVariable("lawsProveMinisterId",lawsProveMinister); + nextUserList= Arrays.asList(lawsProveMinister.split(",")); + delegateTask.addCandidateUsers(nextUserList); + } + + + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); +// object.getString("standName") + String standName = ""; + String prcName = "政策征求意见流程-法规认证部长审核"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if(one1!=null){ +// one1.setOverTime(OVERTIME); + one1.setPrcType("laws2"); + 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); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + + private String verifyObj(String str){ + return (str == null || str.equals("")) ? "" : str; + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerRevisionBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerRevisionBefore.java new file mode 100644 index 00000000..c0b22a0a --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/EngineerRevisionBefore.java @@ -0,0 +1,51 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +import com.alibaba.fastjson.JSON; +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.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 EngineerRevisionBefore implements TaskListener { + @Override + public void notify(DelegateTask delegateTask) { + IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); + CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); + + + QueryWrapper queryWrapper1 = new QueryWrapper(); + queryWrapper1.isNull("TASK_ID"); + queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); + List list = busBean.list(queryWrapper1); + if(!list.isEmpty()){ + BusProcessNew one1 = list.get(0); + one1.setTaskId(delegateTask.getId()); + one1.setTaskInfo(delegateTask.getName()); + + /** + * 汇总已审批通过的意见 + */ + String msg = one1.getMesg(); + JSONObject msgJsonBoj = JSON.parseObject(msg); + JSONArray commentCollectionList=delegateTask.getVariable("commentCollectionList",JSONArray.class); + msgJsonBoj.put("info",commentCollectionList); + one1.setMesg(msgJsonBoj.toJSONString()); + one1.setTaskId(delegateTask.getId()); + one1.setTaskInfo(delegateTask.getName()); + busBean.saveOrUpdate(one1); + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("bzrkStep2?prcType=laws2"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/FillCommentAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/FillCommentAfter.java new file mode 100644 index 00000000..c774bc6a --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/FillCommentAfter.java @@ -0,0 +1,102 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +import com.alibaba.fastjson.JSON; +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; +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.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; +/** + * 工程师填写意见 + */ +public class FillCommentAfter 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); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); + Datas datas = datasService.getOne(queryWrapper); + + JSONObject object = JSONObject.parseObject(datas.getFormValsJson()); + String responseDocker = JSONObject.parseObject(object.getString("form")).getString("responseDockerId"); + + delegateTask.setVariable("objectJson",object); + List nextUserList = new ArrayList(); + if(StringUtils.isNotBlank(responseDocker)){ + + + + delegateTask.setVariable("responseDockerId",responseDocker); + nextUserList= Arrays.asList(responseDocker.split(",")); + delegateTask.addCandidateUsers(nextUserList); + } + + + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); +// object.getString("standName") + String standName = ""; + String prcName = "政策征求意见流程-责任对接人审核"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if(one1!=null){ +// one1.setOverTime(OVERTIME); + one1.setPrcType("laws2"); + 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); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + + private String verifyObj(String str){ + return (str == null || str.equals("")) ? "" : str; + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/MinisterReviewAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/MinisterReviewAfter.java new file mode 100644 index 00000000..36345396 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/MinisterReviewAfter.java @@ -0,0 +1,105 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +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.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; +/** + * 部长审核 + */ +public class MinisterReviewAfter 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); + + 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 ("0".equals(object.getString("actionFlag"))){ + + JSONObject form = JSONObject.parseObject(object.getString("form")); + String lawsProveViceChief = JSONObject.parseObject(form.getString("form")).getString("lawsProveViceChiefId"); + if(StringUtils.isNotBlank(lawsProveViceChief)){ + + delegateTask.setVariable("lawsProveMinisterVerify",0); + delegateTask.setVariable("lawsProveViceChiefId",lawsProveViceChief); + nextUserList= Arrays.asList(lawsProveViceChief.split(",")); + delegateTask.addCandidateUsers(nextUserList); + } + } + + + + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); +// object.getString("standName") + String standName = ""; + String prcName = "政策征求意见流程-法规认证副总监审核"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if(one1!=null){ +// one1.setOverTime(OVERTIME); + one1.setPrcType("laws2"); + 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); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + + private String verifyObj(String str){ + return (str == null || str.equals("")) ? "" : str; + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/ViceDirectorAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/ViceDirectorAfter.java new file mode 100644 index 00000000..ffd0a1ba --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/policyCommentProcess/ViceDirectorAfter.java @@ -0,0 +1,105 @@ +package com.ydw.bat.wkflow.listener.policyCommentProcess; + +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.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; +/** + * 副总监审核 + */ +public class ViceDirectorAfter 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); + + 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 ("0".equals(object.getString("actionFlag"))){ + + + JSONObject form = JSONObject.parseObject(object.getString("form")); + String lawsProveChief = JSONObject.parseObject(form.getString("form")).getString("lawsProveChiefId"); + if(StringUtils.isNotBlank(lawsProveChief)){ + + delegateTask.setVariable("lawsProveViceChiefVerify",0); + delegateTask.setVariable("lawsProveChiefId",lawsProveChief); + nextUserList= Arrays.asList(lawsProveChief.split(",")); + delegateTask.addCandidateUsers(nextUserList); + } + } + + + //截止时间 流程描述 创建人 + String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); +// object.getString("standName") + String standName = ""; + String prcName = "政策征求意见流程-法规认证总监审核"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if(one1!=null){ +// one1.setOverTime(OVERTIME); + one1.setPrcType("laws2"); + 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); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + + private String verifyObj(String str){ + return (str == null || str.equals("")) ? "" : str; + } +}