项目清单确认流程
This commit is contained in:
@@ -17,6 +17,7 @@ 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;
|
||||||
//分发
|
//分发
|
||||||
@@ -36,11 +37,17 @@ public class Step1After implements TaskListener {
|
|||||||
|
|
||||||
List<String> nextUserList = new ArrayList();
|
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);
|
||||||
//截止时间 流程描述 创建人
|
//截止时间 流程描述 创建人
|
||||||
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 = "项目清单确认流程-确认人确认";
|
||||||
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);
|
||||||
|
|||||||
+4
-15
@@ -15,6 +15,7 @@ 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.rmi.activation.ActivationException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
@@ -36,26 +37,14 @@ public class Step3After implements TaskListener {
|
|||||||
delegateTask.setVariable("objectJson",object);
|
delegateTask.setVariable("objectJson",object);
|
||||||
|
|
||||||
List<String> nextUserList = new ArrayList();
|
List<String> nextUserList = new ArrayList();
|
||||||
//设计一个确认人的计数器
|
nextUserList.add(object.getString("approveId"));
|
||||||
if (null!=delegateTask.getVariable("count")){
|
delegateTask.setVariable("approveId",object.getString("approveId"));
|
||||||
delegateTask.setVariable("count",delegateTask.getVariable("count",Integer.class)+1);
|
|
||||||
}else {
|
|
||||||
delegateTask.setVariable("count",1);
|
|
||||||
}
|
|
||||||
//判断是否为最后一步 决定数据是否需要合并***---***
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//截止时间 流程描述 创建人
|
//截止时间 流程描述 创建人
|
||||||
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 = "项目清单确认流程-标准法规部经理审批";
|
||||||
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
-6
@@ -42,21 +42,28 @@ public class bzApproveAfter implements TaskListener {
|
|||||||
JSONArray jsonArray = JSONArray.parseArray(object.getString("dataList"));
|
JSONArray jsonArray = JSONArray.parseArray(object.getString("dataList"));
|
||||||
for (Object os : jsonArray) {
|
for (Object os : jsonArray) {
|
||||||
JSONObject jsonObject = JSONObject.parseObject(os.toString());
|
JSONObject jsonObject = JSONObject.parseObject(os.toString());
|
||||||
StandProjectRelationDto standProjectRelationDto = new StandProjectRelationDto();
|
if ("涉及".equals(jsonObject.getString("involve"))) {
|
||||||
standProjectRelationDto.setProjectId(object.getString("projectId"));
|
StandProjectRelationDto standProjectRelationDto = new StandProjectRelationDto();
|
||||||
standProjectRelationDto.setStandId(jsonObject.getString("id"));
|
standProjectRelationDto.setProjectId(object.getString("projectId"));
|
||||||
standProjectRelationDtos.add(standProjectRelationDto);
|
standProjectRelationDto.setStandId(jsonObject.getString("standId"));
|
||||||
|
standProjectRelationDtos.add(standProjectRelationDto);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
lawsUserInfoService.batchInsert(standProjectRelationDtos);
|
lawsUserInfoService.batchInsert(standProjectRelationDtos);
|
||||||
}else {
|
}else {
|
||||||
delegateTask.setVariable("passFlag","1");
|
delegateTask.setVariable("passFlag","1");
|
||||||
nextUserList.add(delegateTask.getVariable("confirmId",String.class));
|
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);
|
||||||
|
|||||||
+73
-14
@@ -1,25 +1,23 @@
|
|||||||
package com.ydw.bat.wkflow.listener.itemlistvalidationprocess;
|
package com.ydw.bat.wkflow.listener.itemlistvalidationprocess;
|
||||||
|
|
||||||
|
|
||||||
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;
|
||||||
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.ActivitiException;
|
||||||
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.*;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
|
||||||
//确认
|
//确认
|
||||||
public class confirmAfter implements TaskListener {
|
public class confirmAfter implements TaskListener {
|
||||||
@Override
|
@Override
|
||||||
@@ -35,18 +33,55 @@ public class confirmAfter 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();
|
List<String> nextUserList = new ArrayList();
|
||||||
if (!object.getString("detailPeople").contains(",")){
|
//设计一个确认人的计数器
|
||||||
nextUserList.addAll(new ArrayList<>(Arrays.asList(object.getString("detailPeople").split(","))));
|
if (null!=delegateTask.getVariable("count")){
|
||||||
|
delegateTask.setVariable("count",delegateTask.getVariable("count",Integer.class)+1);
|
||||||
}else {
|
}else {
|
||||||
nextUserList.add(object.getString("detailPeople"));
|
delegateTask.setVariable("count",1);
|
||||||
}
|
}
|
||||||
delegateTask.setVariable("qrPeopleList",nextUserList);
|
//判断是否为最后一步 决定数据是否需要合并***---***
|
||||||
|
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);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//草拟吗
|
||||||
|
map.keySet().forEach(s -> {
|
||||||
|
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 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 = "项目清单确认流程-产品工程经理查看汇总清单";
|
||||||
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);
|
||||||
@@ -58,8 +93,6 @@ public class confirmAfter implements TaskListener {
|
|||||||
one1.setCreatUserName(username);
|
one1.setCreatUserName(username);
|
||||||
busProcessNameService.saveOrUpdate(one1);
|
busProcessNameService.saveOrUpdate(one1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(!nextUserList.isEmpty()){
|
if(!nextUserList.isEmpty()){
|
||||||
for(String nextUser : nextUserList){
|
for(String nextUser : nextUserList){
|
||||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||||
@@ -69,10 +102,36 @@ public class confirmAfter implements TaskListener {
|
|||||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||||
busProcessNewNext.setFinishFlag("0");
|
busProcessNewNext.setFinishFlag("0");
|
||||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||||
|
if (delegateTask.getVariable("qrPeopleList",List.class).size()!=delegateTask.getVariable("count",Integer.class)){
|
||||||
|
busProcessNewNext.setTaskId("xmqd");
|
||||||
|
}
|
||||||
busProcessNewNext.setUserId(nextUser);
|
busProcessNewNext.setUserId(nextUser);
|
||||||
busProcessNewNext.setPrcName(prcName);
|
busProcessNewNext.setPrcName(prcName);
|
||||||
busBean.save(busProcessNewNext);
|
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"))){
|
||||||
|
object11.put("remarks",object1.getString("currentPerson")+":"+object11.getString("remarks"));
|
||||||
|
standIds.add(object11.getString("standId"));
|
||||||
|
map.put(object11.getString("standId"),object11);
|
||||||
|
}else {
|
||||||
|
if (!successIds.contains(object11.getString("standId"))) {
|
||||||
|
successmap.put(object11.getString("standId"),object11);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}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);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -42,7 +42,7 @@ public class itemlistvalidationprocessStartAfter implements TaskListener {
|
|||||||
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 = "项目清单确认流程-产品工程经理分发清单";
|
||||||
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);
|
||||||
|
|||||||
Reference in New Issue
Block a user