Merge branch 'develop' into FOTON

This commit is contained in:
super_liu
2022-01-23 19:50:57 +08:00
7 changed files with 499 additions and 0 deletions
@@ -0,0 +1,109 @@
package com.ydw.bat.wkflow.listener.bussFs;
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.IBusProcessModelHisService;
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.apache.tomcat.util.digester.ArrayStack;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
* 发起企标复审流程后
*/
public class BLApplicantAfter 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);
IBusProcessModelHisService busProcessModelHisService = SpringContextUtil.getBean(IBusProcessModelHisService.class);
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 OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = object.getString("prcCreateUser");
String username = object.getString("prcCreateUserName");
// object.getString("standName")
String standName = "";
String prcName = "企标复审流程-对接人选择复审人";
List<String> nextUserList = new ArrayStack<>();
if(StringUtils.isNotBlank(object.getString("bussFsSubUser1"))){
if(object.getString("bussFsSubUser1").contains(",")){
nextUserList = Arrays.asList(object.getString("bussFsSubUser1").split(","));
}else {
nextUserList.add(object.getString("bussFsSubUser1"));
}
// 配置多实例
delegateTask.setVariable("bussFsSubList",nextUserList);
delegateTask.addCandidateUsers(nextUserList);
}else {
throw new ActivitiException("1#2对接人参数不存在,请配置相关用户");
}
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
// one1.setOverTime(OVERTIME);
one1.setPrcType("buss3");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见
BusProcessNew busProcessNew = new BusProcessNew();
busProcessNew.setMsgType("clause");
busProcessNew.setPId(delegateTask.getProcessInstanceId());
busProcessNew.setMesg(object.toJSONString());
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNew.setTaskId(delegateTask.getId());
busProcessNew.setCommitText(object.getString("commentText"));
busProcessNew.setFinishFlag("0");
busProcessNew.setTaskInfo(delegateTask.getName());
busBean.save(busProcessNew);
if(nextUserList != null && !nextUserList.isEmpty()){
for(String nextUser : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(nextUser);
busProcessNewNext.setPrcName(prcName);
busBean.save(busProcessNewNext);
}
}
}
private String verifyObj(String str){
return (str == null || str.equals("")) ? "" : str;
}
}
@@ -0,0 +1,26 @@
package com.ydw.bat.wkflow.listener.bussFs;
import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener;
/**
* 发起企标复审流程前
*/
public class BLApplicantBefore implements TaskListener{
@Override
public void notify(DelegateTask delegateTask) {
// IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
// QueryWrapper queryWrapper1 = new QueryWrapper();
// 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);
// }
//
// WkFlowSendEmail.sendEmailTodo(delegateTask,"会前申请流程");
}
}
@@ -0,0 +1,101 @@
package com.ydw.bat.wkflow.listener.bussFs;
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.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* 对接人选择复审人后
*/
public class BussFsSub1After implements TaskListener{
@Override
public void notify(DelegateTask delegateTask) {
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class);
QueryWrapper<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);
List<String> nextUserList = new ArrayList();
if(StringUtils.isNotBlank(object.getString("bussFsSubUser2"))){
delegateTask.setVariable("bussFsSubUser2",object.getString("bussFsSubUser2"));
nextUserList.add(object.getString("bussFsSubUser2"));
}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.getString("standName")
String standName = "";
String prcName = "企标复审流程-复审人选择复审结果";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
// one1.setOverTime(OVERTIME);
one1.setPrcType("buss3");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见
BusProcessNew busProcessNew = new BusProcessNew();
busProcessNew.setMsgType("clause");
busProcessNew.setPId(delegateTask.getProcessInstanceId());
busProcessNew.setMesg(object.toJSONString());
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNew.setTaskId(delegateTask.getId());
busProcessNew.setCommitText(object.getString("commentText"));
busProcessNew.setFinishFlag("0");
busProcessNew.setTaskInfo(delegateTask.getName());
busBean.save(busProcessNew);
if(nextUserList != null && !nextUserList.isEmpty()){
for(String nextUser : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(nextUser);
busProcessNewNext.setPrcName(prcName);
busBean.save(busProcessNewNext);
}
}
}
private String verifyObj(String str){
return (str == null || str.equals("")) ? "" : str;
}
}
@@ -0,0 +1,68 @@
package com.ydw.bat.wkflow.listener.bussFs;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew;
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
import com.ydw.bat.wkflow.util.SpringContextUtil;
import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener;
import java.util.List;
/**
* 对接人选择复审人前
*/
public class BussFsSub1Before 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<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
/**
* 汇总企标编写文件列表
*/
// String msg = one1.getMesg();
// JSONObject jsonObject = JSON.parseObject(msg);
// JSONArray fileList=delegateTask.getVariable("fileModelList",JSONArray.class);
// jsonObject.put("fileModelList",fileList);
// one1.setMesg(jsonObject.toJSONString());
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("BussFsSub1?prcType=buss3");
one1.setTaskInfo(delegateTask.getName());
oaService.sendTodoMq(one1);
// 创建企标复审单文件
// IBusProcessModelHisService hisService = SpringContextUtil.getBean(IBusProcessModelHisService.class);
// SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
//
// BusProcessModelHis modelHis = new BusProcessModelHis();
// modelHis.setPId(delegateTask.getProcessInstanceId());
// modelHis.setMesg(one1.getMesg());
// modelHis.setTaskInfo(delegateTask.getName());
// modelHis.setUserId(one1.getUserId());
// modelHis.setPrcName(one1.getPrcName());
// modelHis.setTaskId(delegateTask.getId());
// modelHis.setEditType("count");
// modelHis.setCreateTime(sdf.format(new Date()));
// modelHis.setUpdateTime(sdf.format(new Date()));
// // 合并子节点在线编辑文件后 返回 汇总文件路径
// String fileUrl = hisService.mergeModelFile(delegateTask.getProcessInstanceId(),delegateTask.getId(),"docx");
// modelHis.setEditFilePath(fileUrl);
// hisService.save(modelHis);
}
}
}
@@ -0,0 +1,101 @@
package com.ydw.bat.wkflow.listener.bussFs;
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.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* 复审人选择复审结果后
*/
public class BussFsSub2After implements TaskListener{
@Override
public void notify(DelegateTask delegateTask) {
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class);
QueryWrapper<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);
List<String> nextUserList = new ArrayList();
if(StringUtils.isNotBlank(object.getString("bussFsSubUser2"))){
delegateTask.setVariable("bussFsSubUser2",object.getString("bussFsSubUser2"));
nextUserList.add(object.getString("bussFsSubUser2"));
}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.getString("standName")
String standName = "";
String prcName = "企标复审流程-复审人选择复审结果";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
// one1.setOverTime(OVERTIME);
one1.setPrcType("buss3");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见
BusProcessNew busProcessNew = new BusProcessNew();
busProcessNew.setMsgType("clause");
busProcessNew.setPId(delegateTask.getProcessInstanceId());
busProcessNew.setMesg(object.toJSONString());
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNew.setTaskId(delegateTask.getId());
busProcessNew.setCommitText(object.getString("commentText"));
busProcessNew.setFinishFlag("0");
busProcessNew.setTaskInfo(delegateTask.getName());
busBean.save(busProcessNew);
if(nextUserList != null && !nextUserList.isEmpty()){
for(String nextUser : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(nextUser);
busProcessNewNext.setPrcName(prcName);
busBean.save(busProcessNewNext);
}
}
}
private String verifyObj(String str){
return (str == null || str.equals("")) ? "" : str;
}
}
@@ -0,0 +1,65 @@
package com.ydw.bat.wkflow.listener.bussFs;
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 BussFsSub2Before 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<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
/**
* 汇总企标编写文件列表
*/
// String msg = one1.getMesg();
// JSONObject jsonObject = JSON.parseObject(msg);
// JSONArray fileList=delegateTask.getVariable("fileModelList",JSONArray.class);
// jsonObject.put("fileModelList",fileList);
// one1.setMesg(jsonObject.toJSONString());
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("BussFsSub1?prcType=buss3");
one1.setTaskInfo(delegateTask.getName());
oaService.sendTodoMq(one1);
// 创建企标复审单文件
// IBusProcessModelHisService hisService = SpringContextUtil.getBean(IBusProcessModelHisService.class);
// SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
//
// BusProcessModelHis modelHis = new BusProcessModelHis();
// modelHis.setPId(delegateTask.getProcessInstanceId());
// modelHis.setMesg(one1.getMesg());
// modelHis.setTaskInfo(delegateTask.getName());
// modelHis.setUserId(one1.getUserId());
// modelHis.setPrcName(one1.getPrcName());
// modelHis.setTaskId(delegateTask.getId());
// modelHis.setEditType("count");
// modelHis.setCreateTime(sdf.format(new Date()));
// modelHis.setUpdateTime(sdf.format(new Date()));
// // 合并子节点在线编辑文件后 返回 汇总文件路径
// String fileUrl = hisService.mergeModelFile(delegateTask.getProcessInstanceId(),delegateTask.getId(),"docx");
// modelHis.setEditFilePath(fileUrl);
// hisService.save(modelHis);
}
}
}
@@ -37,6 +37,35 @@ public class BussUtils {
evaluationHisService.save(evaluationHis);
}
public static void endFunAll(DelegateTask delegateTask, String prcName,IBusProcessNewService busBean, JSONObject object, String commitFlag, IBusProcessNameService busProcessNameService,String prcType) {
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId());
BusProcessName one2 = busProcessNameService.getOne(queryWrapper2);
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
if (one2 != null) {
//one2.setPrcName("入库流程结束");
one2.setPrcName(prcName);
one2.setOverTime(OVERTIME);
one2.setPrcType(prcType);
busProcessNameService.saveOrUpdate(one2);
}
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("TASK_ID", delegateTask.getId());
BusProcessNew one1 = busBean.getOne(queryWrapper1);
if (one1 != null) {
one1.setMsgType("clause");
one1.setPId(delegateTask.getProcessInstanceId());
one1.setMesg(object.toJSONString());
one1.setFinishFlag("0");
one1.setTaskInfo(delegateTask.getName());
one1.setPrcName(prcName);
one1.setCommitFlag(commitFlag);
one1.setCommitText(object.getString("commentText"));
busBean.saveOrUpdate(one1);
}
}
public static void endFunc2(DelegateTask delegateTask, String prcName,IBusProcessNewService busBean, JSONObject object, String commitFlag, IBusProcessNameService busProcessNameService) {
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId());