add: 政策入库流程的发送OA链接修改。内外部会议流程监听器编写
This commit is contained in:
+103
@@ -0,0 +1,103 @@
|
||||
package com.ydw.bat.wkflow.listener.insideOutsideMeetingLibrary;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
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.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author tjzdw
|
||||
* @description 内外部会议入库申请发起后
|
||||
* @date 2023/10/16
|
||||
*/
|
||||
public class MeetingApplicationAfter 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);
|
||||
|
||||
LambdaQueryWrapper<Datas> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(Datas::getActiTaskId, delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
// 添加关联流程编号
|
||||
String processInstanceId = delegateTask.getProcessInstanceId();
|
||||
LambdaQueryWrapper<BusProcessName> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(BusProcessName::getPrcId,processInstanceId);
|
||||
BusProcessName processName = busProcessNameService.getOne(wrapper);
|
||||
object.put("prcNum",processName.getPrcNum());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
List<String> nextUserList = new ArrayList<>();
|
||||
|
||||
if(StringUtils.isNotBlank(object.getString("jlUserId"))){
|
||||
delegateTask.setVariable("managerUserId",object.getString("jlUserId"));
|
||||
nextUserList.add(object.getString("jlUserId"));
|
||||
}else {
|
||||
throw new ActivitiException("1#2经理人不存在,请配置相关人员");
|
||||
}
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String overTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("prcCreateUser");
|
||||
String username = object.getString("prcCreateUserName");
|
||||
Object meetingName = object.get("meetingName");
|
||||
String prcName = meetingName + "-政策入库流程";
|
||||
LambdaQueryWrapper<BusProcessName> queryWrapper2 = new LambdaQueryWrapper<>();
|
||||
queryWrapper2.eq(BusProcessName::getPrcId,delegateTask.getProcessInstanceId());
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setPrcType("meeting1");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
busProcessNameService.saveOrUpdate(one1);
|
||||
}
|
||||
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
for(String nextUser : nextUserList){
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
busProcessNewNext.setPrcName(prcName);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
|
||||
private String verifyObj(String str){
|
||||
return (str == null || str.equals("")) ? "" : str;
|
||||
}
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
package com.ydw.bat.wkflow.listener.insideOutsideMeetingLibrary;
|
||||
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
|
||||
/**
|
||||
* @author tjzdw
|
||||
* @description 内外部会议入库申请发起前
|
||||
* @date 2023/10/16
|
||||
*/
|
||||
public class MeetingApplicationBefore implements TaskListener {
|
||||
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
|
||||
}
|
||||
}
|
||||
+89
@@ -0,0 +1,89 @@
|
||||
package com.ydw.bat.wkflow.listener.insideOutsideMeetingLibrary;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.Datas;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
|
||||
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
import org.activiti.engine.delegate.DelegateTask;
|
||||
import org.activiti.engine.delegate.TaskListener;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author tjzdw
|
||||
* @description 经理人审批后
|
||||
* @date 2023/10/16
|
||||
*/
|
||||
public class MeetingManagerApproveAfter 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);
|
||||
LambdaQueryWrapper<Datas> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(Datas::getActiTaskId, delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
|
||||
String approvalOpinion = object.get("approvalOpinion") == null ? "" : object.get("approvalOpinion").toString();
|
||||
|
||||
// 驳回任务
|
||||
if ("1".equalsIgnoreCase(approvalOpinion)) {
|
||||
delegateTask.setVariable("applyUserId", object.getString("applyUpdUserId"));
|
||||
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busProcessNew.setUserId(object.getString("applyUpdUserId"));
|
||||
|
||||
String meetingName = object.getString("meetingName");
|
||||
String prcName = meetingName + "-入库";
|
||||
busProcessNew.setPrcName(prcName);
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
LambdaQueryWrapper<BusProcessNew> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(BusProcessNew::getTaskId, delegateTask.getId());
|
||||
BusProcessNew one1 = busBean.getOne(queryWrapper1);
|
||||
if (one1 != null) {
|
||||
one1.setCommitFlag("1");
|
||||
one1.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one1);
|
||||
}
|
||||
delegateTask.setVariable("jlFlag", 1);
|
||||
} else {
|
||||
// 同意
|
||||
delegateTask.setVariable("jlFlag", 0);
|
||||
LambdaQueryWrapper<BusProcessName> queryWrapper2 = new LambdaQueryWrapper<>();
|
||||
queryWrapper2.eq(BusProcessName::getPrcId, delegateTask.getProcessInstanceId());
|
||||
BusProcessName one2 = busProcessNameService.getOne(queryWrapper2);
|
||||
String overTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
if (one2 != null) {
|
||||
//one2.setPrcName("入库流程结束");
|
||||
one2.setOverTime(overTime);
|
||||
one2.setPrcType("1");
|
||||
busProcessNameService.saveOrUpdate(one2);
|
||||
}
|
||||
|
||||
LambdaQueryWrapper<BusProcessNew> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(BusProcessNew::getTaskId, delegateTask.getId());
|
||||
BusProcessNew one1 = busBean.getOne(queryWrapper1);
|
||||
if (one1 != null) {
|
||||
one1.setCommitFlag("0");
|
||||
one1.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
package com.ydw.bat.wkflow.listener.insideOutsideMeetingLibrary;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
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;
|
||||
|
||||
/**
|
||||
* @author tjzdw
|
||||
* @description 经理人审批前
|
||||
* @date 2023/10/16
|
||||
*/
|
||||
public class MeetingManagerApproveBefore implements TaskListener {
|
||||
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
|
||||
LambdaQueryWrapper<BusProcessNew> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(BusProcessNew::getPId,delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq(BusProcessNew::getUserId,delegateTask.getAssignee());
|
||||
queryWrapper1.isNull(BusProcessNew::getTaskId);
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("policyMeetings2?prcType=29");
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
+92
@@ -0,0 +1,92 @@
|
||||
package com.ydw.bat.wkflow.listener.insideOutsideMeetingLibrary;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
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.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author tjzdw
|
||||
* @description 重新发起内外部会议入库申请发起后
|
||||
* @date 2023/10/16
|
||||
*/
|
||||
public class MeetingReissueApplicationAfter 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);
|
||||
|
||||
LambdaQueryWrapper<Datas> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(Datas::getActiTaskId, delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
List<String> nextUserList = new ArrayList<>();
|
||||
|
||||
if(StringUtils.isNotBlank(object.getString("jlUserId"))){
|
||||
delegateTask.setVariable("managerUserId",object.getString("jlUserId"));
|
||||
nextUserList.add(object.getString("jlUserId"));
|
||||
}else {
|
||||
throw new ActivitiException("1#2经理人不存在,请配置相关人员");
|
||||
}
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String overTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("prcCreateUser");
|
||||
String username = object.getString("prcCreateUserName");
|
||||
String meetingName = object.getString("meetingName");
|
||||
String prcName = meetingName + "-入库";
|
||||
LambdaQueryWrapper<BusProcessName> queryWrapper2 = new LambdaQueryWrapper<>();
|
||||
queryWrapper2.eq(BusProcessName::getPrcId,delegateTask.getProcessInstanceId());
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setPrcType("1");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
busProcessNameService.saveOrUpdate(one1);
|
||||
}
|
||||
|
||||
LambdaQueryWrapper<BusProcessNew> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(BusProcessNew::getTaskId,delegateTask.getId());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew busProcessNew = list.get(0);
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(busProcessNew);
|
||||
}
|
||||
|
||||
for(String nextUser : nextUserList){
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busProcessNew.setUserId(nextUser);
|
||||
busProcessNew.setPrcName(prcName);
|
||||
busBean.save(busProcessNew);
|
||||
}
|
||||
}
|
||||
}
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
package com.ydw.bat.wkflow.listener.insideOutsideMeetingLibrary;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
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;
|
||||
|
||||
/**
|
||||
* @author tjzdw
|
||||
* @description 重新发起内外部会议入库申请发起前
|
||||
* @date 2023/10/16
|
||||
*/
|
||||
public class MeetingReissueApplicationBefore implements TaskListener {
|
||||
|
||||
@Override
|
||||
public void notify(DelegateTask delegateTask) {
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
|
||||
LambdaQueryWrapper<BusProcessNew> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(BusProcessNew::getPId,delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq(BusProcessNew::getUserId,delegateTask.getAssignee());
|
||||
queryWrapper1.isNull(BusProcessNew::getTaskId);
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
one1.setTaskId(delegateTask.getId());
|
||||
busBean.saveOrUpdate(one1);
|
||||
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("policyMeetings1?prcType=29");
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,7 +33,7 @@ public class LCLApplicantBefore implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("zcrkStep3?prcType=laws1");
|
||||
one1.setLink("policyWarehousing1?prcType=laws1");
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ public class LawsManagerApproveBefore implements TaskListener{
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
busBean.saveOrUpdate(one1);
|
||||
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
|
||||
one1.setLink("zcrkStep2?prcType=laws1");
|
||||
one1.setLink("policyWarehousing2?prcType=laws1");
|
||||
one1.setTaskInfo(delegateTask.getName());
|
||||
oaService.sendTodoMq(one1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user