企标复审流程添加产品标准起草节点

This commit is contained in:
zyx.net
2022-10-21 18:29:43 +08:00
parent 47099b8385
commit 80c4b843a1
3 changed files with 174 additions and 3 deletions
@@ -32,7 +32,7 @@ public class BussFs3After implements TaskListener{
IDatasService datasService = SpringContextUtil.getBean(IDatasService.class);
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class);
LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class);
// LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class);
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
@@ -43,9 +43,16 @@ public class BussFs3After implements TaskListener{
List<String> nextUserList = new ArrayList();
if(StringUtils.isNotBlank(object.getString("QCRBUSSID"))){
delegateTask.setVariable("QCRBUSSID",object.getString("QCRBUSSID"));
nextUserList.add(object.getString("QCRBUSSID"));
}else {
throw new ActivitiException("1#2主起草人不存在,请配置相关人员");
}
if(StringUtils.isNotBlank(object.getString("bussFsSubUser2"))){
delegateTask.setVariable("bussFsSubUser2",object.getString("bussFsSubUser2"));
nextUserList.add(object.getString("bussFsSubUser2"));
// nextUserList.add(object.getString("bussFsSubUser2"));
}else {
throw new ActivitiException("1#2发起人不存在,请配置相关人员");
}
@@ -53,6 +60,7 @@ public class BussFs3After implements TaskListener{
String approvalOpinion = object.get("approvalOpinion") == null ? "" : object.get("approvalOpinion").toString();
String standSort = object.get("standSort") == null ? "" : object.get("standSort").toString();
delegateTask.setVariable("standSort",standSort);
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = object.getString("prcCreateUser");
@@ -78,9 +86,26 @@ public class BussFs3After implements TaskListener{
if(StringUtils.isNotBlank(approvalOpinion)){
if ("0".equalsIgnoreCase(approvalOpinion)) {
BussUtils.endFunAll(delegateTask, prcName,busBean, object, "0", busProcessNameService,"buss3");
// 提交时
if("Q/QCBFC".equals(object.getString("QCRBUSSID"))) {
// 存储当前节点意见
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);
} else {
BussUtils.endFunAll(delegateTask, prcName,busBean, object, "0", busProcessNameService,"buss3");
}
delegateTask.setVariable("bussFs3Flag", 0);
} else {
// 驳回时
if(StringUtils.isNotBlank(object.getString("bussFsUserC2"))) {
BusProcessNew busProcessNew = new BusProcessNew();
busProcessNew.setMsgType("clause");
@@ -104,6 +129,20 @@ public class BussFs3After implements TaskListener{
throw new ActivitiException("1#2 提交OR驳回参数不存在");
}
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){
@@ -0,0 +1,65 @@
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.listener.bussLibrary.BussUtils;
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 BussFs4After 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);
//截止时间 流程描述 创建人
String prcName = "";
if(StringUtils.isNotBlank(object.getString("standName")) && StringUtils.isNotBlank(object.getString("standCode"))){
prcName = object.getString("standCode")+"-"+object.getString("standName") + "-企标复审";
}else {
prcName = "企标复审";
}
// 提交时,结束流程,保存当前节点信息
String approvalOpinion = object.get("approvalOpinion") == null ? "" : object.get("approvalOpinion").toString();
if(StringUtils.isNotBlank(approvalOpinion)) {
if ("0".equalsIgnoreCase(approvalOpinion)) {
BussUtils.endFunAll(delegateTask, prcName, busBean, object, "0", busProcessNameService, "buss3");
}
}else {
throw new ActivitiException("1#2 提交参数不存在");
}
}
private String verifyObj(String str){
return (str == null || str.equals("")) ? "" : str;
}
}
@@ -0,0 +1,67 @@
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 BussFs4Before 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");
queryWrapper1.orderByDesc("CREATE_TIME");
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("bussFs3?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);
}
}
}