diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/PEPstartAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/PEPstartAfter.java new file mode 100644 index 00000000..4e6ef412 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/PEPstartAfter.java @@ -0,0 +1,125 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class PEPstartAfter 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); + + //获取对象中的项目的数据 + delegateTask.setVariable("standsId",object.getString("standId")); + delegateTask.setVariable("standType",object.getString("standType")); + //业务经理Id + List nextUserList = new ArrayList(); + // bzywId 标准法规部业务经理 + delegateTask.setVariable("bzywId",object.getString("dockUser")); + nextUserList.add(object.getString("dockUser")); + //赋值标准法规部领导 最后一步审批用 + delegateTask.setVariable("DLUserIds", object.getString("ministerUser")); + + + delegateTask.setVariable("certifiedEngineerName",object.getString("certifiedEngineerName")); + delegateTask.setVariable("qualityEngineerName",object.getString("qualityEngineerName")); + + //认证工程师Id + delegateTask.setVariable("certifiedEngineer",object.getString("certifiedEngineer")); + //质量工程师Id + delegateTask.setVariable("qualityEngineer",object.getString("qualityEngineer")); + + Map> people_project=new HashMap<>(); + Map project_people=new HashMap<>(); + JSONArray array=object.getJSONArray("dataList"); + for (Object o:array) { + JSONObject jsonObject=JSONObject.parseObject(o.toString()); + if (null!=people_project.get(jsonObject.getString("projectGroupPeopleId"))){ + people_project.get("projectGroupPeopleId").add(jsonObject.getString("projectGroup")); + }else { + List strings=new ArrayList<>(); + strings.add(jsonObject.getString("projectGroup")); + people_project.put(jsonObject.getString("projectGroupPeopleId"),strings); + } + project_people.put(jsonObject.getString("projectGroup"),jsonObject.getString("projectGroupPeopleId")); + } + delegateTask.setVariable("project_people",project_people); + delegateTask.setVariable("people_project",people_project); + + //截止时间 流程描述 创建人 + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); + delegateTask.setVariable("prcCreateUser", user); + delegateTask.setVariable("prcCreateUserName", username); + delegateTask.setVariable("stands",object.getString("standNumber")); + String prcName = String.valueOf(object.getString("standNumber"))+"-标准项目合规评估流程-审核(标准法规业务经理)"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + 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.setPrcName(prcName); + busProcessNews.setCommitText(object.getString("commentText")); + busBean.save(busProcessNews); + } + + 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); + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/PEPstartBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/PEPstartBefore.java new file mode 100644 index 00000000..2c45e726 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/PEPstartBefore.java @@ -0,0 +1,13 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; + +public class PEPstartBefore implements TaskListener { + + @Override + public void notify(DelegateTask delegateTask) { + + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step2After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step2After.java new file mode 100644 index 00000000..877ec64b --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step2After.java @@ -0,0 +1,134 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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_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; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.BeanUtils; + +import java.text.SimpleDateFormat; +import java.util.*; + +public class Step2After 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); + Map map=new HashMap<>(); + List nextUserList=new ArrayList<>(); + if ("0".equals(object.getString("stepFlag"))){ + delegateTask.setVariable("Step2Flag","0"); + JSONArray jsonArray=object.getJSONArray("dataList"); + if (null!=jsonArray && jsonArray.size()>0){ + jsonArray.forEach(o -> { + JSONObject jsonObject=JSONObject.parseObject(o.toString()); + if (null!=map.get(jsonObject.getString("distributePersonId"))){ + map.get(jsonObject.getString("distributePersonId")).getJSONArray("dataList").add(jsonObject); + }else { + JSONObject object1=new JSONObject(); + object1= JSON.parseObject(object.toJSONString()); + JSONArray jsonArray1=new JSONArray(); + jsonArray1.add(jsonObject); + object1.put("dataList",jsonArray); + map.put(jsonObject.getString("distributePersonId"),object1); + nextUserList.add(jsonObject.getString("distributePersonId")); + } + }); + } + delegateTask.setVariable("zrIdLists",nextUserList); + }else { + delegateTask.setVariable("Step2Flag","1"); + delegateTask.setVariable("createId",delegateTask.getVariable("prcCreateUser",String.class)); + nextUserList.add(delegateTask.getVariable("prcCreateUser",String.class)); + } + + //截止时间 流程描述 创建人 + String user = delegateTask.getVariable("prcCreateUser", String.class); + String username = delegateTask.getVariable("prcCreateUserName", String.class); + String prcName = ""; + if ("0".equals(object.getString("stepFlag"))) { + prcName = delegateTask.getVariable("stands", String.class) + "-标准项目合规评估-项目分发(项目群负责人/标准法规工程师)"; + }else { + prcName = delegateTask.getVariable("stands", String.class) + "-标准项目合规评估-整改"; + } + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 + 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); + } + } + if (nextUserList != null && !nextUserList.isEmpty()) { + if ("0".equals(object.getString("stepFlag"))){ + for (String nextUser : nextUserList) { + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(map.get(nextUser).toJSONString()); + busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + }else { + 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); + } + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step2Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step2Before.java new file mode 100644 index 00000000..dc6dadb3 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step2Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step2Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("bzpgStep2?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step3After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step3After.java new file mode 100644 index 00000000..225bc3a0 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step3After.java @@ -0,0 +1,148 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +import ch.qos.logback.core.joran.spi.ActionException; +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.ActivitiException; +import org.activiti.engine.delegate.DelegateTask; +import org.activiti.engine.delegate.TaskListener; +import org.activiti.rest.exception.ActivitiConflictException; + +import java.text.SimpleDateFormat; +import java.util.*; + +public class Step3After 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); + +// 多实例节点定义的计数器 + if (null!=delegateTask.getVariable("count1")){ + delegateTask.setVariable("count1",delegateTask.getVariable("count1",Integer.class)+1); + }else { + delegateTask.setVariable("count1",1); + } + + Map map=new HashMap<>(); + if (null!=delegateTask.getVariable("maps")){ + map=delegateTask.getVariable("maps",Map.class); + } + + List nextUserList=new ArrayList<>(); + JSONArray jsonArray=object.getJSONArray("dataList"); + if (null!=jsonArray && jsonArray.size()>0){ + for (Object s: jsonArray) { + JSONObject object1= JSON.parseObject(s.toString()); + if (null!=map.get(object1.getString("unameId"))){ + map.get(object1.getString("unameId")).getJSONArray("dataList").add(object1); + }else { + JSONObject object2=new JSONObject(); + object2=JSON.parseObject(object.toJSONString()); + JSONArray jsonArray1=new JSONArray(); + jsonArray1.add(object1); + object2.put("dataList",jsonArray1); + map.put(object1.getString("unameId"),object2); + nextUserList.add(object1.getString("unameId")); + } + } + } + delegateTask.setVariable("maps",map); + //处理下一步的经理问题 + if (null!=delegateTask.getVariable("managerIdList")){ + List old=delegateTask.getVariable("managerIdList",List.class); + old.forEach(s -> { + if (!nextUserList.contains(s)){ + nextUserList.add(s); + } + }); + delegateTask.setVariable("managerIdList",nextUserList); + }else { + delegateTask.setVariable("managerIdList",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 = delegateTask.getVariable("stands",String.class)+"-标准项目合规评估-任务分发(项目经理)"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 + 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); + } + } + if (delegateTask.getVariable("count1",Integer.class) >=delegateTask.getVariable("zrIdLists",List.class).size()) { + if (nextUserList != null && !nextUserList.isEmpty()) { + for (String nextUser : nextUserList) { + JSONObject object1=JSON.parseObject(map.get(nextUser).toJSONString()); + JSONArray array=object1.getJSONArray("dataList"); + JSONArray array1=object1.getJSONArray("breakdownList"); + JSONArray res=new JSONArray(); + for (Object o:array) { + JSONObject object2=JSONObject.parseObject(o.toString()); + for (Object o2: array1 ) { + JSONObject object3=JSONObject.parseObject(o2.toString()); + object2.keySet().forEach(s -> { + object3.put(s,object2.getString(s)); + }); + res.add(object3); + } + } + object1.put("resDats",res); + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(object1.toJSONString()); + busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step3Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step3Before.java new file mode 100644 index 00000000..87b218ec --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step3Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step3Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("xmpgStep6?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step4After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step4After.java new file mode 100644 index 00000000..66f9eacb --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step4After.java @@ -0,0 +1,132 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 java.text.SimpleDateFormat; +import java.util.*; + +public class Step4After 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); + + List nextUserList=new ArrayList<>(); + Map map=new HashMap<>(); + if (null!=delegateTask.getVariable("map4")){ + map=delegateTask.getVariable("map4",Map.class); + } + // 多实例节点定义的计数器 + if (null!=delegateTask.getVariable("count2")){ + delegateTask.setVariable("count2",delegateTask.getVariable("count2",Integer.class)+1); + }else { + delegateTask.setVariable("count2",1); + } + List order =new ArrayList<>(); + JSONArray array=object.getJSONArray("dataList"); + if (null!=array && array.size()>0){ + for (Object o:array) { + JSONObject object1= JSON.parseObject(o.toString()); + if (null!=map.get(delegateTask.getAssignee()+"-"+object1.getString("implementerId"))){ + map.get(delegateTask.getAssignee()+"-"+object1.getString("implementerId")).getJSONArray("dataList").add(object1); + }else { + JSONObject object2=JSON.parseObject(object.toJSONString()); + JSONArray array1=new JSONArray(); + array1.add(object1); + object2.put("dataList",array1); + object2.put("keys",delegateTask.getAssignee()+"-"+object1.getString("implementerId")); + map.put(delegateTask.getAssignee()+"-"+object1.getString("implementerId"),object2); + nextUserList.add(object1.getString("implementerId")); + order.add(delegateTask.getAssignee()+"-"+object1.getString("implementerId")); + } + } + } + delegateTask.setVariable("map4",map); + if (null!=delegateTask.getVariable("jtzrIdList")){ + delegateTask.getVariable("jtzrIdList",List.class).addAll(nextUserList); + delegateTask.getVariable("order",List.class).addAll(order); + nextUserList=delegateTask.getVariable("jtzrIdList",List.class); + order=delegateTask.getVariable("order",List.class); + }else { + delegateTask.setVariable("jtzrIdList", nextUserList); + delegateTask.setVariable("order",order); + } + + + + + //截止时间 流程描述 创建人 + 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 = delegateTask.getVariable("stands",String.class)+"-标准项目合规评估-合规评估(专业技术人员)"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 + 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); + } + } + if (delegateTask.getVariable("count2",Integer.class)>= delegateTask.getVariable("managerIdList",List.class).size()) { + if (nextUserList != null && !nextUserList.isEmpty()) { + int i=0; + for (String nextUser : nextUserList) { + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(map.get(order.get(i)).toJSONString()); + busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + i++; + } + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step4Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step4Before.java new file mode 100644 index 00000000..660a6949 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step4Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step4Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("xmpgStep6?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step5After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step5After.java new file mode 100644 index 00000000..b263e68c --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step5After.java @@ -0,0 +1,92 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +public class Step5After 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); + + List nextUserList=new ArrayList<>(); + if (null!=object.getString("keys")){ + String[] s=object.getString("keys").split("-"); + delegateTask.setVariable("ztManagerId",s[0]); + nextUserList.add(s[0]); + } + + //截止时间 流程描述 创建人 + 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 = delegateTask.getVariable("stands",String.class)+"-标准项目合规评估-审核(项目经理)"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 + 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); + } + } + 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); + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step5Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step5Before.java new file mode 100644 index 00000000..77e65a43 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step5Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step5Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("xmpgStep6?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step6After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step6After.java new file mode 100644 index 00000000..630d209f --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step6After.java @@ -0,0 +1,142 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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.mysql.cj.xdevapi.JsonArray; +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.*; + +public class Step6After 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); + + List nextUserList=new ArrayList<>(); + if (null!=delegateTask.getVariable("SDIdList")){ + nextUserList=delegateTask.getVariable("SDIdList",List.class); + } + Map map=new HashMap<>(); + if (null!=delegateTask.getVariable("res6")){ + map=delegateTask.getVariable("res6",Map.class); + } + Map project_people=delegateTask.getVariable("project_people",Map.class); + //子流程定义的计数器 + String[] s=object.getString("keys").split("-"); + if ("0".equals(object.getString("passFlag"))) { + if (null != delegateTask.getVariable("count6")) { + delegateTask.setVariable("count6", delegateTask.getVariable("count6", Integer.class) + 1); + } else { + delegateTask.setVariable("count6", 1); + } + JSONArray res=object.getJSONArray("dataList"); + if (null!=res && res.size()>0){ + for (Object o: res) { + JSONObject object1= JSON.parseObject(o.toString()); + String projectGroupId= String.valueOf(project_people.get(object1.getString("projectGroup"))); + if (null!=map.get(projectGroupId)){ + map.get(projectGroupId).getJSONArray("dataList").add(object1); + }else { + JSONObject object2=JSON.parseObject(object.toJSONString()); + JSONArray array=new JSONArray(); + array.add(object1); + object2.put("dataList",array); + map.put(projectGroupId,object2); + nextUserList.add(projectGroupId); + } + } + } + delegateTask.setVariable("SDIdList",nextUserList); + delegateTask.setVariable("passFlag","0"); + delegateTask.setVariable("res6",map); + }else { + nextUserList.add(s[1]); + delegateTask.setVariable("passFlag","1"); + } + + //截止时间 流程描述 创建人 + 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 = delegateTask.getVariable("stands",String.class)+"-标准项目合规评估-审定(项目群负责人)"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 + 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); + } + } + if (delegateTask.getVariable("count6",Integer.class)>=delegateTask.getVariable("jtzrIdList",List.class).size()) { + for (String nextUser : map.keySet()) { + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(map.get(nextUser).toJSONString()); + busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo(delegateTask.getName()); + busProcessNewNext.setUserId(nextUser); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + } else if ("1".equals(object.getString("passFlag"))) { + 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); + } + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step6Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step6Before.java new file mode 100644 index 00000000..1ba0ebfb --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step6Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step6Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("xmpgStep6?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step7After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step7After.java new file mode 100644 index 00000000..b90dedd4 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step7After.java @@ -0,0 +1,103 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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.*; + +public class Step7After 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); + + // 多实例节点定义的计数器 + if (null!=delegateTask.getVariable("count7")){ + delegateTask.setVariable("count7",delegateTask.getVariable("count7",Integer.class)+1); + }else { + delegateTask.setVariable("count7",1); + } + JSONObject object1=new JSONObject(); + + List nextUserList=new ArrayList<>(); + delegateTask.setVariable("gjId",delegateTask.getVariable("DLUserIds",String.class)); + nextUserList.add(delegateTask.getVariable("DLUserIds",String.class)); + if (null!=delegateTask.getVariable("Step7Res")){ + object1=delegateTask.getVariable("Step7Res",JSONObject.class); + object1.getJSONArray("dataList").addAll(object.getJSONArray("dataList")); + }else { + object1=object; + delegateTask.setVariable("Step7Res",object1); + } + + + //截止时间 流程描述 创建人 + String user = delegateTask.getVariable("prcCreateUser", String.class); + String username = delegateTask.getVariable("prcCreateUserName", String.class); + String prcName = delegateTask.getVariable("stands",String.class)+"-标准项目合规评估-批准(标准法规部高级经理)"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 + 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); + } + } + if (delegateTask.getVariable("count7",Integer.class)>=delegateTask.getVariable("SDIdList",List.class).size()) { + 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); + } + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step7Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step7Before.java new file mode 100644 index 00000000..77084aea --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step7Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step7Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("xmpgStep6?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step8After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step8After.java new file mode 100644 index 00000000..353f3f13 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step8After.java @@ -0,0 +1,168 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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_auth.LawsUserInfoService; +import com.ydw.bat.wkflow.business_main.datas.dto.SarStandUnqualified; +import com.ydw.bat.wkflow.business_main.datas.dto.SarStandardComplianceProductAssess; +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.StandProjectRelationDto; +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.*; + +public class Step8After 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); + 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<>(); + JSONArray array=object.getJSONArray("dataList"); + List sarStandUnqualifieds=new ArrayList<>(); + List productAssesses=new ArrayList<>(); + List standProjectRelationDtos = new ArrayList<>(); + for (Object o: array) { + JSONObject object1 = JSON.parseObject(o.toString()); + List projectnum=new ArrayList<>(Arrays.asList(object1.getString("projectNumber").split(","))); + List projectName=new ArrayList<>(Arrays.asList(object1.getString("projectName").split(","))); + int i=0; + for (String s:projectnum) { + if (null != object1.getString("noCompliance") && !"".equals(object1.getString("noCompliance"))) { + + SarStandUnqualified sarStandUnqualified = new SarStandUnqualified(); + //少一个standId 不合格原因 在研在产! + sarStandUnqualified.setStandId(delegateTask.getVariable("standsId", String.class)); + sarStandUnqualified.setStandSerialNumber(object.getString("standNumber")); + sarStandUnqualified.setStandName(object.getString("standName")); + sarStandUnqualified.setItemsNum(object1.getString("itemsNum")); + sarStandUnqualified.setCreateById(delegateTask.getVariable("prcCreateUser", String.class)); + sarStandUnqualified.setItemsName(object1.getString("itemsName")); + sarStandUnqualified.setProductLine(object1.getString("projectGroup")); + sarStandUnqualified.setCloseState(1); + sarStandUnqualified.setCreateTime(new Date()); + sarStandUnqualified.setProductName(projectName.get(i)); + sarStandUnqualified.setQaEngineer(delegateTask.getVariable("qualityEngineerName", String.class)); + sarStandUnqualified.setAuthEngineer(delegateTask.getVariable("certifiedEngineerName", String.class)); + sarStandUnqualified.setDutyEngineer(object1.getString("implementerId")); + sarStandUnqualified.setResponsibleUnit(object1.getString("responsibleUnit")); + sarStandUnqualified.setReason(object1.getString("noCompliance")); + sarStandUnqualified.setPlanCloseTime(object1.getDate("completionTime")); + sarStandUnqualified.setProductId(s); + sarStandUnqualifieds.add(sarStandUnqualified); + } + //合估评规 结果! + SarStandardComplianceProductAssess sarStandard = new SarStandardComplianceProductAssess(); + sarStandard.setProductName(projectName.get(i)); + sarStandard.setProductId(s); + sarStandard.setClauseName(object1.getString("itemsName")); + sarStandard.setProductLineId(object1.getString("projectGroup")); + sarStandard.setStandName(object.getString("standName")); + sarStandard.setStandNumber(object.getString("standNumber")); + sarStandard.setStandardItem(object1.getString("itemsName")); + sarStandard.setType(String.valueOf(UUID.randomUUID())); + sarStandard.setStandId(delegateTask.getVariable("standsId", String.class)); + sarStandard.setStandType(delegateTask.getVariable("standType", String.class)); + sarStandard.setInterpretationTime(delegateTask.getCreateTime()); + //111 + sarStandard.setProductionCompletionTime(JSONObject.parseObject(String.valueOf(object1.get("zcCompletionTime")), Date.class)); + sarStandard.setProductionCountermeasures(object1.getString("zcCountermeasures")); + sarStandard.setProductionNonCompliance(object1.getString("zcNoCompliance")); + sarStandard.setProductionCompliance(object1.getString("zcComplianceReasons")); + sarStandard.setResearchCompliance(object1.getString("complianceReasons")); + sarStandard.setResearchCompletionTime(object1.getDate("completionTime")); + sarStandard.setResearchCountermeasures(object1.getString("countermeasures")); + sarStandard.setResearchNonCompliance(object1.getString("noCompliance")); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + sarStandard.setEvaluationPeople(object1.getString("implementer")); + sarStandard.setEvaluationPeopleName(object1.getString("implementerId")); + sarStandard.setEvaluationTime(simpleDateFormat.format(new Date())); + i++; + productAssesses.add(sarStandard); + } + + List strings=new ArrayList<>(Arrays.asList(object1.getString("projectIds").split(","))); + strings.forEach(s -> { + StandProjectRelationDto standProjectRelationDto = new StandProjectRelationDto(); + standProjectRelationDto.setProjectId(s); + standProjectRelationDto.setStandId(delegateTask.getVariable("standsId",String.class)); + if (!standProjectRelationDtos.contains(standProjectRelationDto)) { + standProjectRelationDtos.add(standProjectRelationDto); + } + }); + //数据归类 + } + //数据入库!!!! + lawsUserInfoService.batchInsert(standProjectRelationDtos); + lawsUserInfoService.addsarStandUnqualified(sarStandUnqualifieds); + lawsUserInfoService.addProduct(productAssesses); + + //截止时间 流程描述 创建人 + 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 = delegateTask.getVariable("stands",String.class)+"-标准项目合规评估-标准法规部领导审批"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + one1.setPrcName(prcName); + one1.setCreatUser(user); + one1.setCreatUserName(username); + busProcessNameService.saveOrUpdate(one1); + } + // 存储当前节点意见 + 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); + } + } + 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); + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step8Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step8Before.java new file mode 100644 index 00000000..00416fa3 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step8Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step8Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("xmpgStep6?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step9After.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step9After.java new file mode 100644 index 00000000..9d6cad32 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step9After.java @@ -0,0 +1,106 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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.ArrayList; +import java.util.Date; +import java.util.List; + +public class Step9After 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); + + //获取对象中的项目的数据 + delegateTask.setVariable("standsId",object.getString("standId")); + delegateTask.setVariable("standType",object.getString("standType")); + //业务经理Id + List nextUserList = new ArrayList(); + // bzywId 标准法规部业务经理 + delegateTask.setVariable("bzywId",object.getString("dockUser")); + nextUserList.add(object.getString("dockUser")); + //赋值标准法规部领导 最后一步审批用 + delegateTask.setVariable("DLUserIds", object.getString("ministerUser")); + + + delegateTask.setVariable("certifiedEngineerName",object.getString("certifiedEngineerName")); + delegateTask.setVariable("qualityEngineerName",object.getString("qualityEngineerName")); + + //认证工程师Id + delegateTask.setVariable("certifiedEngineer",object.getString("certifiedEngineer")); + //质量工程师Id + delegateTask.setVariable("qualityEngineer",object.getString("qualityEngineer")); + //截止时间 流程描述 创建人 + String user = object.getString("prcCreateUser"); + String username = object.getString("prcCreateUserName"); + delegateTask.setVariable("prcCreateUser", user); + delegateTask.setVariable("prcCreateUserName", username); + delegateTask.setVariable("stands",object.getString("standNumber")); + String prcName = String.valueOf(object.getString("standNumber"))+"-标准项目合规评估流程-审核(标准法规业务经理)"; + QueryWrapper queryWrapper2 = new QueryWrapper(); + queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId()); + BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); + if (one1 != null) { + one1.setPrcType("5"); + 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.setPrcName(prcName); + busProcessNews.setCommitText(object.getString("commentText")); + busBean.save(busProcessNews); + } + + 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); + } + } + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step9Before.java b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step9Before.java new file mode 100644 index 00000000..37b9c42d --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/listener/projectEvaluationNewProcess/Step9Before.java @@ -0,0 +1,37 @@ +package com.ydw.bat.wkflow.listener.projectEvaluationNewProcess; + +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 Step9Before 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()); + busBean.saveOrUpdate(one1); + + // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 + one1.setLink("xmpgStep6?prcType=5"); + one1.setTaskInfo(delegateTask.getName()); + oaService.sendTodoMq(one1); + } + } + +}