Merge branch 'develop' into FOTON

This commit is contained in:
super_liu
2022-03-06 17:02:01 +08:00
14 changed files with 215 additions and 296 deletions
@@ -39,34 +39,41 @@ public class SelectDockUserAfter implements TaskListener {
JSONArray dockUserList=delegateTask.getVariable("dockUserList", JSONArray.class); JSONArray dockUserList=delegateTask.getVariable("dockUserList", JSONArray.class);
if(dockUserList==null)dockUserList=new JSONArray(); if(dockUserList==null)dockUserList=new JSONArray();
JSONArray preDockUserListOrg=object.getJSONArray("dockUserList");
JSONArray preDockUserList=new JSONArray();
for (Object o : preDockUserListOrg) { if("1".equals(object.getString("passFlag"))){
boolean ok=true; delegateTask.setVariable("passFlag","1");
JSONObject preDockUserOrg=(JSONObject)o; delegateTask.setVariable("createUser",delegateTask.getVariable("creatUser",String.class));
for (Object o1 : dockUserList) { nextUserList.add(delegateTask.getVariable("creatUser",String.class));
JSONObject dockUser=(JSONObject)o1; }else {
if(dockUser.getString("id").equals(preDockUserOrg.getString("id")) && delegateTask.setVariable("passFlag","0");
object.getString("passInfo").equals("0")){ JSONArray preDockUserListOrg = object.getJSONArray("dockUserList");
ok=false;break; JSONArray preDockUserList = new JSONArray();
for (Object o : preDockUserListOrg) {
boolean ok = true;
JSONObject preDockUserOrg = (JSONObject) o;
for (Object o1 : dockUserList) {
JSONObject dockUser = (JSONObject) o1;
if (dockUser.getString("id").equals(preDockUserOrg.getString("id")) &&
object.getString("passInfo").equals("0")) {
ok = false;
break;
}
}
if (ok) {
preDockUserList.add(preDockUserOrg);
nextUserList.add(preDockUserOrg.getString("id"));
} }
} }
if(ok){ delegateTask.setVariable("preDockUserList", preDockUserList);
preDockUserList.add(preDockUserOrg);
nextUserList.add(preDockUserOrg.getString("id"));
}
} }
delegateTask.setVariable("preDockUserList",preDockUserList);
delegateTask.setVariable("objectJson",object); delegateTask.setVariable("objectJson",object);
//截止时间 流程描述 创建人 //截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = object.getString("prcCreateUser"); String user = object.getString("prcCreateUser");
String username = object.getString("prcCreateUserName"); String username = object.getString("prcCreateUserName");
// object.getString("standName")
String standName = delegateTask.getVariable("number",String.class); String standName = delegateTask.getVariable("number",String.class);
String prcName = standName+"-未符合项整改"; String prcName = standName+"-未符合项整改";
QueryWrapper queryWrapper2 = new QueryWrapper(); QueryWrapper queryWrapper2 = new QueryWrapper();
@@ -100,7 +107,7 @@ public class SelectDockUserAfter implements TaskListener {
updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); updataWapper.eq("P_ID",delegateTask.getProcessInstanceId());
busBean.update(busProcessNew,updataWapper); busBean.update(busProcessNew,updataWapper);
if(!nextUserList.isEmpty()){ if(!"1".equals(object.getString("passFlag")) && !nextUserList.isEmpty()){
List<BusProcessNew> busProcessNews=new ArrayList<>(); List<BusProcessNew> busProcessNews=new ArrayList<>();
for(String nextUser : nextUserList){ for(String nextUser : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew(); BusProcessNew busProcessNewNext = new BusProcessNew();
@@ -116,15 +123,20 @@ public class SelectDockUserAfter implements TaskListener {
} }
busBean.saveBatch(busProcessNews); busBean.saveBatch(busProcessNews);
}else{ }else{
BusProcessNew busProcessNewNext = new BusProcessNew(); if (null!= nextUserList && !nextUserList.isEmpty()) {
busProcessNewNext.setMsgType("clause"); for (String nextUser : nextUserList) {
busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMesg(object.toJSONString()); busProcessNewNext.setMsgType("clause");
busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setTaskInfo("下发至标准法规工程师"); busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setPrcName(prcName); busProcessNewNext.setTaskInfo("重新起草");
busProcessNewNext.setUserId(delegateTask.getVariable("engineer",String.class)); busProcessNewNext.setFinishFlag("0");
busBean.save(busProcessNewNext); busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(nextUser);
busProcessNewNext.setPrcName(prcName);
busBean.saveOrUpdate(busProcessNewNext);
}
}
} }
} }
} }
@@ -44,7 +44,8 @@ public class StartSurveyAfter implements TaskListener {
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = object.getString("prcCreateUser"); String user = object.getString("prcCreateUser");
String username = object.getString("prcCreateUserName"); String username = object.getString("prcCreateUserName");
// object.getString("standName") delegateTask.setVariable("creatUser",user);
delegateTask.setVariable("creatUserName",username);
JSONArray jsonArray=JSONArray.parseArray(object.getString("standardInfoList")); JSONArray jsonArray=JSONArray.parseArray(object.getString("standardInfoList"));
JSONObject object1=JSONObject.parseObject(String.valueOf(jsonArray.get(0))); JSONObject object1=JSONObject.parseObject(String.valueOf(jsonArray.get(0)));
String standName= object1.getString("standId"); String standName= object1.getString("standId");
@@ -0,0 +1,107 @@
package com.ydw.bat.wkflow.listener.NonConformanceRectification;
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.ArrayList;
import java.util.Date;
import java.util.List;
public class StartSurveyAgainAfter 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();
delegateTask.setVariable("startUser",object.get("startUser"));
delegateTask.setVariable("engineer",object.get("engineer"));
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = object.getString("prcCreateUser");
String username = object.getString("prcCreateUserName");
delegateTask.setVariable("creatUser",user);
delegateTask.setVariable("creatUserName",username);
JSONArray jsonArray=JSONArray.parseArray(object.getString("standardInfoList"));
JSONObject object1=JSONObject.parseObject(String.valueOf(jsonArray.get(0)));
String standName= object1.getString("standId");
delegateTask.setVariable("number",standName);
String prcName = standName+"-"+object1.getString("standName")+"-未符合项整改";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
one1.setPrcType("8");
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.setUserId(delegateTask.getAssignee());
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);
}
}else{
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo("下发至标准法规工程师");
busProcessNewNext.setPrcName(prcName);
busProcessNewNext.setUserId(delegateTask.getVariable("engineer",String.class));
busBean.save(busProcessNewNext);
}
}
}
@@ -1,25 +1,22 @@
package com.ydw.bat.wkflow.listener.itemlistvalidationprocess; package com.ydw.bat.wkflow.listener.NonConformanceRectification;
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_main.datas.entity.BusProcessNew; 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_main.datas.service.IBusProcessNewService;
import com.ydw.bat.wkflow.business_main.datas.service.IOaTaskExecService;
import com.ydw.bat.wkflow.business_mq.service.CreateMQService; import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
import com.ydw.bat.wkflow.util.SpringContextUtil; import com.ydw.bat.wkflow.util.SpringContextUtil;
import com.ydw.bat.wkflow.util.Utils;
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 java.util.List; import java.util.List;
public class confirmBefore implements TaskListener { public class StartSurveyAgainBefore 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);
IOaTaskExecService execService = SpringContextUtil.getBean(IOaTaskExecService.class);
QueryWrapper queryWrapper1 = new QueryWrapper(); QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.isNull("TASK_ID"); queryWrapper1.isNull("TASK_ID");
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
List<BusProcessNew> list = busBean.list(queryWrapper1); List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){ if(!list.isEmpty()){
@@ -30,14 +27,8 @@ public class confirmBefore implements TaskListener {
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep2?prcType=10&routerType=oa"); one1.setLink("wfhxzgStep1?prcType=8");
one1.setTaskInfo(delegateTask.getName()); one1.setTaskInfo(delegateTask.getName());
// 干活节点流程
one1.setTaskStatus(2);
JSONObject object = JSONObject.parseObject(one1.getMesg());
one1.setEndTime(Utils.interceptTime(object.getString("endTime")));
oaService.sendTodoMq(one1); oaService.sendTodoMq(one1);
} }
} }
@@ -36,13 +36,8 @@ public class Step1After implements TaskListener {
delegateTask.setVariable("objectJson",object); delegateTask.setVariable("objectJson",object);
List<String> nextUserList = new ArrayList(); List<String> nextUserList = new ArrayList();
nextUserList.add(delegateTask.getVariable("gcManagets",String.class));
if (object.getString("detailPeople").contains(",")){ delegateTask.setVariable("cpManager",delegateTask.getVariable("gcManagets",String.class));
nextUserList.addAll(new ArrayList<>(Arrays.asList(object.getString("detailPeople").split(","))));
}else {
nextUserList.add(object.getString("detailPeople"));
}
delegateTask.setVariable("qrPeopleList",nextUserList);
//截止时间 流程描述 创建人 //截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("startId",String.class); String user = delegateTask.getVariable("startId",String.class);
@@ -52,11 +47,7 @@ public class Step1After implements TaskListener {
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){
if ("0".equals(object.getString("passFlag"))) {
one1.setOverTime(OVERTIME);
}
one1.setPrcType("10"); one1.setPrcType("10");
// one1.setPrcName(prcName);
one1.setCreatUser(user); one1.setCreatUser(user);
one1.setCreatUserName(username); one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1); busProcessNameService.saveOrUpdate(one1);
@@ -70,6 +61,7 @@ public class Step1After implements TaskListener {
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.setTaskInfo(delegateTask.getName());
busProcessNews.setTaskId(delegateTask.getId()); busProcessNews.setTaskId(delegateTask.getId());
busProcessNews.setCommitText(object.getString("commentText")); busProcessNews.setCommitText(object.getString("commentText"));
busBean.saveOrUpdate(busProcessNews); busBean.saveOrUpdate(busProcessNews);
@@ -27,7 +27,7 @@ public class Step1Before implements TaskListener {
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep3?prcType=10"); one1.setLink("xmqdqrStep2?prcType=10");
one1.setTaskInfo(delegateTask.getName()); one1.setTaskInfo(delegateTask.getName());
oaService.sendTodoMq(one1); oaService.sendTodoMq(one1);
} }
@@ -1,32 +1,30 @@
package com.ydw.bat.wkflow.listener.itemlistvalidationprocess; package com.ydw.bat.wkflow.listener.itemlistvalidationprocess;
import com.alibaba.fastjson.JSONArray;
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;
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.StandProjectRelationDto;
import com.ydw.bat.wkflow.util.SpringContextUtil; import com.ydw.bat.wkflow.util.SpringContextUtil;
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 java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
//评估
public class bzApproveAfter implements TaskListener { //分发
public class Step2After 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);
LawsUserInfoService lawsUserInfoService=SpringContextUtil.getBean(LawsUserInfoService.class);
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>(); QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
@@ -36,43 +34,18 @@ public class bzApproveAfter implements TaskListener {
delegateTask.setVariable("objectJson",object); delegateTask.setVariable("objectJson",object);
List<String> nextUserList = new ArrayList(); List<String> nextUserList = new ArrayList();
if ("0".equals(object.getString("passFlag"))) { nextUserList.add(delegateTask.getVariable("startId",String.class));
delegateTask.setVariable("passFlag","0"); delegateTask.setVariable("cpManagerSum",delegateTask.getVariable("startId",String.class));
List<StandProjectRelationDto> standProjectRelationDtos = new ArrayList<>();
JSONArray jsonArray = JSONArray.parseArray(object.getString("dataList"));
for (Object os : jsonArray) {
JSONObject jsonObject = JSONObject.parseObject(os.toString());
if ("涉及".equals(jsonObject.getString("involve"))) {
StandProjectRelationDto standProjectRelationDto = new StandProjectRelationDto();
standProjectRelationDto.setProjectId(object.getString("projectId"));
standProjectRelationDto.setStandId(jsonObject.getString("standId"));
standProjectRelationDtos.add(standProjectRelationDto);
}
}
lawsUserInfoService.batchInsert(standProjectRelationDtos);
}else {
delegateTask.setVariable("passFlag","1");
nextUserList.add(delegateTask.getVariable("cpManagerSum",String.class));
}
//截止时间 流程描述 创建人 //截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("startId",String.class); String user = delegateTask.getVariable("startId",String.class);
String username = delegateTask.getVariable("startName",String.class); String username = delegateTask.getVariable("startName",String.class);
String prcName=""; String prcName = "项目清单确认流程-确认人确认";
if ("0".equals(object.getString("passFlag"))) {
prcName = "项目清单确认流程";
}else {
prcName = "项目清单确认流程-产品工程经理查看汇总清单";
}
QueryWrapper 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){
if ("0".equals(object.getString("passFlag"))) {
one1.setOverTime(OVERTIME);
}
one1.setPrcType("10"); one1.setPrcType("10");
// one1.setPrcName(prcName);
one1.setCreatUser(user); one1.setCreatUser(user);
one1.setCreatUserName(username); one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1); busProcessNameService.saveOrUpdate(one1);
@@ -86,6 +59,7 @@ public class bzApproveAfter implements TaskListener {
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.setTaskInfo(delegateTask.getName());
busProcessNews.setTaskId(delegateTask.getId()); busProcessNews.setTaskId(delegateTask.getId());
busProcessNews.setCommitText(object.getString("commentText")); busProcessNews.setCommitText(object.getString("commentText"));
busBean.saveOrUpdate(busProcessNews); busBean.saveOrUpdate(busProcessNews);
@@ -10,12 +10,13 @@ import org.activiti.engine.delegate.TaskListener;
import java.util.List; import java.util.List;
public class bzApproveBefore implements TaskListener { public class Step2Before 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 queryWrapper1 = new QueryWrapper();
queryWrapper1.isNull("TASK_ID"); queryWrapper1.isNull("TASK_ID");
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
List<BusProcessNew> list = busBean.list(queryWrapper1); List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){ if(!list.isEmpty()){
@@ -1,5 +1,6 @@
package com.ydw.bat.wkflow.listener.itemlistvalidationprocess; package com.ydw.bat.wkflow.listener.itemlistvalidationprocess;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
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;
@@ -36,10 +37,18 @@ public class Step3After 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(); // 入库操作
nextUserList.add(object.getString("approveId")); List<StandProjectRelationDto> dtoList=new ArrayList<>();
delegateTask.setVariable("approveId",object.getString("approveId")); JSONArray array=object.getJSONArray("dataList");
array.forEach(o -> {
StandProjectRelationDto standProjectRelationDto=new StandProjectRelationDto();
JSONObject object1= JSON.parseObject(o.toString());
standProjectRelationDto.setProjectId(object.getString("projectId"));
standProjectRelationDto.setStandId(object1.getString("standId"));
dtoList.add(standProjectRelationDto);
});
lawsUserInfoService.batchInsert(dtoList);
//截止时间 流程描述 创建人 //截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("startId",String.class); String user = delegateTask.getVariable("startId",String.class);
@@ -50,7 +59,7 @@ public class Step3After implements TaskListener {
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2); BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){ if(one1!=null){
one1.setPrcType("10"); one1.setPrcType("10");
// one1.setPrcName(prcName); one1.setOverTime(OVERTIME);
one1.setCreatUser(user); one1.setCreatUser(user);
one1.setCreatUserName(username); one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1); busProcessNameService.saveOrUpdate(one1);
@@ -63,24 +72,23 @@ public class Step3After implements TaskListener {
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.setTaskInfo(delegateTask.getName());
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.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.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setFinishFlag("0"); busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setTaskInfo(delegateTask.getName()); busProcessNewNext.setUserId("end");
busProcessNewNext.setUserId(nextUser); busProcessNewNext.setPrcName(prcName);
busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext);
busBean.save(busProcessNewNext);
}
}
} }
} }
@@ -27,7 +27,7 @@ public class Step3Before implements TaskListener {
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep3?prcType=10"); one1.setLink("xmqdqrStep4?prcType=10");
one1.setTaskInfo(delegateTask.getName()); one1.setTaskInfo(delegateTask.getName());
oaService.sendTodoMq(one1); oaService.sendTodoMq(one1);
} }
@@ -1,167 +0,0 @@
package com.ydw.bat.wkflow.listener.itemlistvalidationprocess;
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 java.text.SimpleDateFormat;
import java.util.*;
//确认
public class confirmAfter 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 (null!=delegateTask.getVariable("count")){
delegateTask.setVariable("count",delegateTask.getVariable("count",Integer.class)+1);
}else {
delegateTask.setVariable("count",1);
}
//判断是否为最后一步 决定数据是否需要合并***---***
if (delegateTask.getVariable("qrPeopleList",List.class).size()==delegateTask.getVariable("count",Integer.class)){
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("TASK_ID","xmqd");
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
List<BusProcessNew> busProcessNews=busBean.list(queryWrapper1);
JSONArray res=new JSONArray();
JSONArray middle=new JSONArray();
Map<String,JSONObject> map=new HashMap<>();
Map<String,JSONObject> successmap=new HashMap<>();
List<String> standIds=new ArrayList<>();
List<String> successIds=new ArrayList<>();
middle.addAll(object.getJSONArray("dataList"));
middle.forEach(o -> {
JSONObject object1=JSONObject.parseObject(o.toString());
makeData(map, successmap, standIds, successIds, object, object1);
});
for (BusProcessNew bus:busProcessNews) {
JSONObject object1=JSONObject.parseObject(bus.getMesg());
JSONArray jsonArray=object1.getJSONArray("dataList");
jsonArray.forEach(o -> {
JSONObject object11=JSONObject.parseObject(o.toString());
makeData(map, successmap, standIds, successIds, object1, object11);
});
}
//草拟吗
successmap.keySet().forEach(s -> {
res.add(successmap.get(s));
});
map.keySet().forEach(s -> {
if (successIds.contains(s)) {
JSONObject jsonObject=successmap.get(s);
jsonObject.put("involve","involve");
jsonObject.put("remarks",map.get(s).getString("remarks"));
}else {
res.add(map.get(s));
}
});
// successmap.keySet().forEach(s -> {
// if (!standIds.contains(s)){
// res.add(successmap.get(s));
// }
// });
object.put("dataList",res);
}
nextUserList.add(delegateTask.getVariable("cpManager",String.class));
delegateTask.setVariable("cpManagerSum",delegateTask.getVariable("cpManager",String.class));
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("startId",String.class);
String username = delegateTask.getVariable("startName",String.class);
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("10");
// 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<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);
}
}
if(!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());
if (delegateTask.getVariable("qrPeopleList",List.class).size()!=delegateTask.getVariable("count",Integer.class)){
busProcessNewNext.setTaskId("xmqd");
}
busProcessNewNext.setUserId(nextUser);
busProcessNewNext.setPrcName(prcName);
busBean.save(busProcessNewNext);
}
}
}
private void makeData(Map<String, JSONObject> map, Map<String, JSONObject> successmap, List<String> standIds, List<String> successIds, JSONObject object1, JSONObject object11) {
// if (!standIds.contains(object11.getString("standId"))){
if ("noInvolve".equals(object11.getString("involve"))){
if (!standIds.contains(object11.getString("standId"))) {
object11.put("remarks", object1.getString("currentPerson") + ":" + object11.getString("remarks"));
standIds.add(object11.getString("standId"));
map.put(object11.getString("standId"), object11);
}else {
standIds.add(object11.getString("standId"));
map.get(object11.getString("standId")).put("remarks",map.get(object11.getString("standId")).getString("remarks")+","+object1.getString("currentPerson")+":"+object11.getString("remarks"));
}
}else {
if (!successIds.contains(object11.getString("standId"))) {
successmap.put(object11.getString("standId"),object11);
successIds.add(object11.getString("standId"));
}
}
// }else {
// if ("noInvolve".equals(object11.getString("involve"))){
// standIds.add(object11.getString("standId"));
// map.get(object11.getString("standId")).put("remarks",map.get(object11.getString("standId")).getString("remarks")+","+object1.getString("currentPerson")+":"+object11.getString("remarks"));
// }else {
// if (!successIds.contains(object11.getString("standId"))) {
// successmap.put(object11.getString("standId"),object11);
// }
// }
// }
}
}
@@ -32,17 +32,17 @@ public class itemlistvalidationprocessStartAfter implements TaskListener {
delegateTask.setVariable("objectJson",object); delegateTask.setVariable("objectJson",object);
List<String> nextUserList = new ArrayList(); List<String> nextUserList = new ArrayList();
nextUserList.add(object.getString("confirmId"));
delegateTask.setVariable("cpManager",object.getString("confirmId"));
delegateTask.setVariable("dl",object.getString("approveId")); delegateTask.setVariable("rzManager",object.getString("approveId"));
nextUserList.add(object.getString("approveId"));
delegateTask.setVariable("gcManagets",object.getString("confirmId"));
//截止时间 流程描述 创建人 //截止时间 流程描述 创建人
String user = object.getString("startUser"); String user = object.getString("startUser");
String username = object.getString("startUserName"); String username = object.getString("startUserName");
delegateTask.setVariable("startId",user); delegateTask.setVariable("startId",user);
delegateTask.setVariable("startName",username); delegateTask.setVariable("startName",username);
String prcName = "项目清单确认流程-产品工程经理分发清单"; String prcName = object.getString("projectNumber")+object.getString("projectName")+"清单确认";
QueryWrapper 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);
@@ -13,22 +13,22 @@ import java.util.List;
public class itemlistvalidationprocessStartBefore implements TaskListener { public class itemlistvalidationprocessStartBefore 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 queryWrapper1 = new QueryWrapper();
queryWrapper1.isNull("TASK_ID"); // queryWrapper1.isNull("TASK_ID");
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId()); // queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
List<BusProcessNew> list = busBean.list(queryWrapper1); // List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){ // if(!list.isEmpty()){
BusProcessNew one1 = list.get(0); // BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId()); // one1.setTaskId(delegateTask.getId());
one1.setTaskInfo(delegateTask.getName()); // one1.setTaskInfo(delegateTask.getName());
busBean.saveOrUpdate(one1); // busBean.saveOrUpdate(one1);
//
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); // CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 // // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep3?prcType=10"); // one1.setLink("xmqdqrStep3?prcType=10");
one1.setTaskInfo(delegateTask.getName()); // one1.setTaskInfo(delegateTask.getName());
oaService.sendTodoMq(one1); // oaService.sendTodoMq(one1);
} // }
} }
} }
@@ -62,7 +62,7 @@ public class Step5After implements TaskListener {
for (Object o : jsonArray) { for (Object o : jsonArray) {
JSONObject jsonObject = JSON.parseObject(o.toString()); JSONObject jsonObject = JSON.parseObject(o.toString());
if (null != jsonObject.getString("noCompliance")) { if (null != jsonObject.getString("noCompliance") && !"".equals(jsonObject.getString("noCompliance"))) {
SarStandUnqualified sarStandUnqualified = new SarStandUnqualified(); SarStandUnqualified sarStandUnqualified = new SarStandUnqualified();
//少一个standId 不合格原因 在研在产! //少一个standId 不合格原因 在研在产!
if (null!=map.get(jsonObject.getString("standId"))){ if (null!=map.get(jsonObject.getString("standId"))){