add: 政策课题参会流程

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