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);
if(dockUserList==null)dockUserList=new JSONArray();
JSONArray preDockUserListOrg=object.getJSONArray("dockUserList");
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("1".equals(object.getString("passFlag"))){
delegateTask.setVariable("passFlag","1");
delegateTask.setVariable("createUser",delegateTask.getVariable("creatUser",String.class));
nextUserList.add(delegateTask.getVariable("creatUser",String.class));
}else {
delegateTask.setVariable("passFlag","0");
JSONArray preDockUserListOrg = object.getJSONArray("dockUserList");
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){
preDockUserList.add(preDockUserOrg);
nextUserList.add(preDockUserOrg.getString("id"));
}
delegateTask.setVariable("preDockUserList", preDockUserList);
}
delegateTask.setVariable("preDockUserList",preDockUserList);
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 = delegateTask.getVariable("number",String.class);
String prcName = standName+"-未符合项整改";
QueryWrapper queryWrapper2 = new QueryWrapper();
@@ -100,7 +107,7 @@ public class SelectDockUserAfter implements TaskListener {
updataWapper.eq("P_ID",delegateTask.getProcessInstanceId());
busBean.update(busProcessNew,updataWapper);
if(!nextUserList.isEmpty()){
if(!"1".equals(object.getString("passFlag")) && !nextUserList.isEmpty()){
List<BusProcessNew> busProcessNews=new ArrayList<>();
for(String nextUser : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew();
@@ -116,15 +123,20 @@ public class SelectDockUserAfter implements TaskListener {
}
busBean.saveBatch(busProcessNews);
}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);
if (null!= nextUserList && !nextUserList.isEmpty()) {
for (String nextUser : nextUserList) {
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setTaskInfo("重新起草");
busProcessNewNext.setFinishFlag("0");
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 user = object.getString("prcCreateUser");
String username = object.getString("prcCreateUserName");
// object.getString("standName")
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");
@@ -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.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.IOaTaskExecService;
import com.ydw.bat.wkflow.business_mq.service.CreateMQService;
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.TaskListener;
import java.util.List;
public class confirmBefore implements TaskListener {
public class StartSurveyAgainBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
IOaTaskExecService execService = SpringContextUtil.getBean(IOaTaskExecService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.isNull("TASK_ID");
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
@@ -30,14 +27,8 @@ public class confirmBefore implements TaskListener {
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep2?prcType=10&routerType=oa");
one1.setLink("wfhxzgStep1?prcType=8");
one1.setTaskInfo(delegateTask.getName());
// 干活节点流程
one1.setTaskStatus(2);
JSONObject object = JSONObject.parseObject(one1.getMesg());
one1.setEndTime(Utils.interceptTime(object.getString("endTime")));
oaService.sendTodoMq(one1);
}
}
@@ -36,13 +36,8 @@ public class Step1After implements TaskListener {
delegateTask.setVariable("objectJson",object);
List<String> nextUserList = new ArrayList();
if (object.getString("detailPeople").contains(",")){
nextUserList.addAll(new ArrayList<>(Arrays.asList(object.getString("detailPeople").split(","))));
}else {
nextUserList.add(object.getString("detailPeople"));
}
delegateTask.setVariable("qrPeopleList",nextUserList);
nextUserList.add(delegateTask.getVariable("gcManagets",String.class));
delegateTask.setVariable("cpManager",delegateTask.getVariable("gcManagets",String.class));
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("startId",String.class);
@@ -52,11 +47,7 @@ public class Step1After implements TaskListener {
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
if ("0".equals(object.getString("passFlag"))) {
one1.setOverTime(OVERTIME);
}
one1.setPrcType("10");
// one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
@@ -70,6 +61,7 @@ public class Step1After implements TaskListener {
List<BusProcessNew> list = busBean.list(queryWrapper3);
if (!list.isEmpty()) {
BusProcessNew busProcessNews = list.get(0);
busProcessNews.setTaskInfo(delegateTask.getName());
busProcessNews.setTaskId(delegateTask.getId());
busProcessNews.setCommitText(object.getString("commentText"));
busBean.saveOrUpdate(busProcessNews);
@@ -27,7 +27,7 @@ public class Step1Before implements TaskListener {
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep3?prcType=10");
one1.setLink("xmqdqrStep2?prcType=10");
one1.setTaskInfo(delegateTask.getName());
oaService.sendTodoMq(one1);
}
@@ -1,32 +1,30 @@
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_auth.LawsUserInfoService;
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.business_slrs.dao.StandProjectRelationDto;
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.Arrays;
import java.util.Date;
import java.util.List;
//评估
public class bzApproveAfter implements TaskListener {
//分发
public class Step2After 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);
LawsUserInfoService lawsUserInfoService=SpringContextUtil.getBean(LawsUserInfoService.class);
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
@@ -36,43 +34,18 @@ public class bzApproveAfter implements TaskListener {
delegateTask.setVariable("objectJson",object);
List<String> nextUserList = new ArrayList();
if ("0".equals(object.getString("passFlag"))) {
delegateTask.setVariable("passFlag","0");
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));
}
nextUserList.add(delegateTask.getVariable("startId",String.class));
delegateTask.setVariable("cpManagerSum",delegateTask.getVariable("startId",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="";
if ("0".equals(object.getString("passFlag"))) {
prcName = "项目清单确认流程";
}else {
prcName = "项目清单确认流程-产品工程经理查看汇总清单";
}
String prcName = "项目清单确认流程-确认人确认";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
if ("0".equals(object.getString("passFlag"))) {
one1.setOverTime(OVERTIME);
}
one1.setPrcType("10");
// one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
@@ -86,6 +59,7 @@ public class bzApproveAfter implements TaskListener {
List<BusProcessNew> list = busBean.list(queryWrapper3);
if (!list.isEmpty()) {
BusProcessNew busProcessNews = list.get(0);
busProcessNews.setTaskInfo(delegateTask.getName());
busProcessNews.setTaskId(delegateTask.getId());
busProcessNews.setCommitText(object.getString("commentText"));
busBean.saveOrUpdate(busProcessNews);
@@ -10,12 +10,13 @@ import org.activiti.engine.delegate.TaskListener;
import java.util.List;
public class bzApproveBefore implements TaskListener {
public class Step2Before implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.isNull("TASK_ID");
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
@@ -1,5 +1,6 @@
package com.ydw.bat.wkflow.listener.itemlistvalidationprocess;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -36,10 +37,18 @@ public class Step3After implements TaskListener {
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
delegateTask.setVariable("objectJson",object);
List<String> nextUserList = new ArrayList();
nextUserList.add(object.getString("approveId"));
delegateTask.setVariable("approveId",object.getString("approveId"));
// 入库操作
List<StandProjectRelationDto> dtoList=new ArrayList<>();
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 user = delegateTask.getVariable("startId",String.class);
@@ -50,7 +59,7 @@ public class Step3After implements TaskListener {
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
one1.setPrcType("10");
// one1.setPrcName(prcName);
one1.setOverTime(OVERTIME);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
@@ -63,24 +72,23 @@ public class Step3After implements TaskListener {
List<BusProcessNew> list = busBean.list(queryWrapper3);
if (!list.isEmpty()) {
BusProcessNew busProcessNews = list.get(0);
busProcessNews.setTaskInfo(delegateTask.getName());
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());
busProcessNewNext.setUserId(nextUser);
busProcessNewNext.setPrcName(prcName);
busBean.save(busProcessNewNext);
}
}
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("end");
busProcessNewNext.setPrcName(prcName);
busBean.save(busProcessNewNext);
}
}
@@ -27,7 +27,7 @@ public class Step3Before implements TaskListener {
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep3?prcType=10");
one1.setLink("xmqdqrStep4?prcType=10");
one1.setTaskInfo(delegateTask.getName());
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);
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 username = object.getString("startUserName");
delegateTask.setVariable("startId",user);
delegateTask.setVariable("startName",username);
String prcName = "项目清单确认流程-产品工程经理分发清单";
String prcName = object.getString("projectNumber")+object.getString("projectName")+"清单确认";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
@@ -13,22 +13,22 @@ import java.util.List;
public class itemlistvalidationprocessStartBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.isNull("TASK_ID");
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
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);
CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
one1.setLink("xmqdqrStep3?prcType=10");
one1.setTaskInfo(delegateTask.getName());
oaService.sendTodoMq(one1);
}
// IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
// QueryWrapper queryWrapper1 = new QueryWrapper();
// queryWrapper1.isNull("TASK_ID");
// queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
// 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);
//
// CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class);
// // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型
// one1.setLink("xmqdqrStep3?prcType=10");
// one1.setTaskInfo(delegateTask.getName());
// oaService.sendTodoMq(one1);
// }
}
}
@@ -62,7 +62,7 @@ public class Step5After implements TaskListener {
for (Object o : jsonArray) {
JSONObject jsonObject = JSON.parseObject(o.toString());
if (null != jsonObject.getString("noCompliance")) {
if (null != jsonObject.getString("noCompliance") && !"".equals(jsonObject.getString("noCompliance"))) {
SarStandUnqualified sarStandUnqualified = new SarStandUnqualified();
//少一个standId 不合格原因 在研在产!
if (null!=map.get(jsonObject.getString("standId"))){