提交标准分解单流程
This commit is contained in:
@@ -43,8 +43,8 @@ public class ChooseZrAfter 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");
|
||||
String user = object.getString("applyUserId");
|
||||
String username = object.getString("applyUserIdName");
|
||||
String standName = "";
|
||||
if(object.getString("standInData").equals("0")){
|
||||
standName = "国内";
|
||||
@@ -57,7 +57,7 @@ public class ChooseZrAfter implements TaskListener{
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setOverTime(OVERTIME);
|
||||
one1.setPrcType("1");
|
||||
one1.setPrcType("9");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
@@ -77,7 +77,7 @@ public class ChooseZrAfter implements TaskListener{
|
||||
if(nextUserList != null && !nextUserList.isEmpty()){
|
||||
for(String nextUser : nextUserList){
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("2");
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
|
||||
@@ -17,6 +17,8 @@ public class ChooseZrBefore implements TaskListener{
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.standardRead;
|
||||
|
||||
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;
|
||||
@@ -11,7 +12,10 @@ import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
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;
|
||||
|
||||
/**
|
||||
@@ -28,50 +32,62 @@ public class DeptApplayAfter implements TaskListener{
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson", object);
|
||||
|
||||
List<String> nextUserList = new ArrayList();
|
||||
//部长进行审批(1:通过)
|
||||
if(object.getString("bzApplyFlag").equals("1")){
|
||||
delegateTask.setVariable("bzFlag",1);
|
||||
func1(delegateTask, busBean, object,"0");
|
||||
}else {
|
||||
if(StringUtils.isNotBlank(object.getString("zxUserId"))){
|
||||
if(StringUtils.isNotBlank(object.getString("zxUserId"))){
|
||||
delegateTask.setVariable("zxUserId",object.getString("zxUserId"));
|
||||
nextUserList.add(object.getString("zxUserId"));
|
||||
}
|
||||
}
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("2");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busProcessNew.setUserId(object.getString("zxUserId"));
|
||||
busBean.save(busProcessNew);
|
||||
func1(delegateTask, busBean, object,"1");
|
||||
delegateTask.setVariable("bzFlag",2);
|
||||
if (object.getString("gcApplyFlag").equals("1")) {
|
||||
delegateTask.setVariable("bzFlag", 1);
|
||||
} else {
|
||||
delegateTask.setVariable("bzFlag", 2);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
* @param delegateTask
|
||||
* @param busBean
|
||||
* @param object
|
||||
* @param commitFlag
|
||||
*/
|
||||
private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object,String commitFlag) {
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.eq("TASK_ID",delegateTask.getId());
|
||||
BusProcessNew one1 = busBean.getOne(queryWrapper1);
|
||||
//截止时间 流程描述 创建人
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("applyUserId");
|
||||
String username = object.getString("applyUserIdName");
|
||||
String standName = "";
|
||||
if(object.getString("standInData").equals("INLAND")){
|
||||
standName = "国内";
|
||||
}else {
|
||||
standName = "国外";
|
||||
}
|
||||
String prcName = standName+"-标准解读流程";
|
||||
QueryWrapper queryWrapper2 = new QueryWrapper();
|
||||
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setCommitFlag(commitFlag);
|
||||
one1.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one1);
|
||||
one1.setOverTime(OVERTIME);
|
||||
one1.setPrcType("9");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
busProcessNameService.saveOrUpdate(one1);
|
||||
}
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
|
||||
QueryWrapper updataWapper = new QueryWrapper();
|
||||
updataWapper.eq("TASK_ID",delegateTask.getId());
|
||||
updataWapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
busBean.update(busProcessNew,updataWapper);
|
||||
if (delegateTask.getVariable("bzFlag").equals("2")) {
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.eq("TASK_ID",delegateTask.getId());
|
||||
BusProcessNew one2 = busBean.getOne(queryWrapper1);
|
||||
if(one2!=null){
|
||||
one2.setCommitFlag("0");
|
||||
one2.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,8 @@ public class DeptApplayBefore implements TaskListener{
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.ydw.bat.wkflow.listener.standardRead;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
@@ -8,15 +10,13 @@ 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.standardRead.vo.JSONArrayVo;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
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.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 下发至部门责任人发起后
|
||||
@@ -34,24 +34,31 @@ public class DeptZrAfter implements TaskListener{
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
//获取全局变量里的数据
|
||||
JSONArray responUserList = (delegateTask.getVariable("zxUserList", JSONArray.class));
|
||||
if (responUserList == null)
|
||||
responUserList = new JSONArray();
|
||||
//数组去重
|
||||
JSONArray responUserList1 = object.getJSONArray("itemList");
|
||||
List<JSONArrayVo> list = responUserList1.toJavaList(JSONArrayVo.class);
|
||||
Map<String,List<JSONArrayVo>> userGroupMap = list.stream().collect(Collectors.groupingBy(JSONArrayVo::getZxUserId));
|
||||
Set<String> set = userGroupMap.keySet();
|
||||
List<String> nextUserList = new ArrayList();
|
||||
if(StringUtils.isNotBlank(object.getString("zxUserId"))){
|
||||
if(object.getString("zxUserId").contains(",")){
|
||||
nextUserList = Arrays.asList(object.getString("zxUserId").split(","));
|
||||
}else {
|
||||
nextUserList.add(object.getString("zxUserId"));
|
||||
}
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("zxUserList",nextUserList);
|
||||
for (String str : set) {
|
||||
nextUserList.add(str);
|
||||
JSONObject jsonObject = new JSONObject();
|
||||
jsonObject.put("id",str);
|
||||
jsonObject.put("applyUserId",delegateTask.getAssignee());
|
||||
responUserList.add(jsonObject);
|
||||
}
|
||||
delegateTask.setVariable("zxUserList",responUserList);
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("prcCreateUser");
|
||||
String username = object.getString("prcCreateUserName");
|
||||
String user = object.getString("applyUserId");
|
||||
String username = object.getString("applyUserIdName");
|
||||
String standName = "";
|
||||
if(object.getString("standInData").equals("0")){
|
||||
if(object.getString("standInData").equals("INLAND")){
|
||||
standName = "国内";
|
||||
}else {
|
||||
standName = "国外";
|
||||
@@ -62,7 +69,7 @@ public class DeptZrAfter implements TaskListener{
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setOverTime(OVERTIME);
|
||||
one1.setPrcType("1");
|
||||
one1.setPrcType("9");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
@@ -70,7 +77,7 @@ public class DeptZrAfter implements TaskListener{
|
||||
}
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("2");
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
@@ -78,11 +85,17 @@ public class DeptZrAfter implements TaskListener{
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
|
||||
QueryWrapper updataWapper = new QueryWrapper();
|
||||
updataWapper.eq("TASK_ID",delegateTask.getId());
|
||||
updataWapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
busBean.update(busProcessNew,updataWapper);
|
||||
if(nextUserList != null && !nextUserList.isEmpty()){
|
||||
for(String nextUser : nextUserList){
|
||||
for(String nextUser : nextUserList){ //2次
|
||||
List<JSONArrayVo> listRes = userGroupMap.get(nextUser);
|
||||
object.put("itemList", JSON.toJSONString(listRes));
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("2");
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
|
||||
@@ -17,6 +17,8 @@ public class DeptZrBefore implements TaskListener{
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.standardRead;
|
||||
|
||||
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;
|
||||
@@ -11,7 +12,10 @@ import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
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;
|
||||
|
||||
/**
|
||||
@@ -28,55 +32,78 @@ public class EngineerApplayAfter implements TaskListener{
|
||||
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
|
||||
Datas datas = datasService.getOne(queryWrapper);
|
||||
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson", object);
|
||||
|
||||
List<String> nextUserList = new ArrayList();
|
||||
//工程师是否要进行审核
|
||||
if(object.getString("gcApplyFlag").equals("1")){
|
||||
delegateTask.setVariable("gcFlag",1);
|
||||
if(StringUtils.isNotBlank(object.getString("deptUserId"))){
|
||||
if(StringUtils.isNotBlank(object.getString("deptUserId"))){
|
||||
delegateTask.setVariable("deptUserId",object.getString("deptUserId"));
|
||||
}
|
||||
if (object.getString("zrApplyFlag").equals("1")) {
|
||||
delegateTask.setVariable("gcFlag", 1);
|
||||
if (StringUtils.isNotBlank(object.getString("deptUserId"))) {
|
||||
delegateTask.setVariable("deptUserId", object.getString("deptUserId"));
|
||||
nextUserList.add(object.getString("deptUserId"));
|
||||
}
|
||||
func1(delegateTask, busBean, object,"0");
|
||||
}else {
|
||||
if(StringUtils.isNotBlank(object.getString("zxUserId"))){
|
||||
if(StringUtils.isNotBlank(object.getString("zxUserId"))){
|
||||
delegateTask.setVariable("zxUserId",object.getString("zxUserId"));
|
||||
nextUserList.add(object.getString("zxUserId"));
|
||||
}
|
||||
}
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("2");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busProcessNew.setUserId(object.getString("zxUserId"));
|
||||
busBean.save(busProcessNew);
|
||||
func1(delegateTask, busBean, object,"1");
|
||||
delegateTask.setVariable("gcFlag",2);
|
||||
} else {
|
||||
delegateTask.setVariable("gcFlag", 2);
|
||||
}
|
||||
}
|
||||
//截止时间 流程描述 创建人
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("applyUserId");
|
||||
String username = object.getString("applyUserIdName");
|
||||
String standName = "";
|
||||
if (object.getString("standInData").equals("INLAND")) {
|
||||
standName = "国内";
|
||||
} else {
|
||||
standName = "国外";
|
||||
}
|
||||
String prcName = standName + "-标准解读流程";
|
||||
QueryWrapper queryWrapper2 = new QueryWrapper();
|
||||
queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId());
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if (one1 != null) {
|
||||
one1.setOverTime(OVERTIME);
|
||||
one1.setPrcType("9");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
busProcessNameService.saveOrUpdate(one1);
|
||||
}
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
* @param delegateTask
|
||||
* @param busBean
|
||||
* @param object
|
||||
* @param commitFlag
|
||||
*/
|
||||
private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object,String commitFlag) {
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.eq("TASK_ID",delegateTask.getId());
|
||||
BusProcessNew one1 = busBean.getOne(queryWrapper1);
|
||||
if(one1!=null){
|
||||
one1.setCommitFlag(commitFlag);
|
||||
one1.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one1);
|
||||
QueryWrapper updataWapper = new QueryWrapper();
|
||||
updataWapper.eq("TASK_ID", delegateTask.getId());
|
||||
updataWapper.eq("P_ID", delegateTask.getProcessInstanceId());
|
||||
busBean.update(busProcessNew, updataWapper);
|
||||
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);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
} else {
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.eq("TASK_ID",delegateTask.getId());
|
||||
BusProcessNew one2 = busBean.getOne(queryWrapper1);
|
||||
if(one2!=null){
|
||||
one2.setCommitFlag("0");
|
||||
one2.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,8 @@ public class EngineerApplayBefore implements TaskListener{
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.ydw.bat.wkflow.listener.standardRead;
|
||||
|
||||
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;
|
||||
@@ -11,11 +12,8 @@ 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 org.apache.commons.lang.StringUtils;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 下发执行人发起后
|
||||
@@ -34,32 +32,17 @@ public class ExpainAfter implements TaskListener{
|
||||
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
List<String> nextUserList = new ArrayList();
|
||||
JSONArray responUserList = new JSONArray();
|
||||
//是否要进行审核
|
||||
if(object.getString("resolveFlag").equals("1")){
|
||||
delegateTask.setVariable("jdFlag",1);
|
||||
if(StringUtils.isNotBlank(object.getString("applyUserId"))){
|
||||
if(StringUtils.isNotBlank(object.getString("applyUserId"))){
|
||||
delegateTask.setVariable("applyUserId",object.getString("applyUserId"));
|
||||
nextUserList.add(object.getString("applyUserId"));
|
||||
}
|
||||
}
|
||||
}else {
|
||||
delegateTask.setVariable("jdFlag",2);
|
||||
if(StringUtils.isNotBlank(object.getString("xzUserId"))){
|
||||
if(StringUtils.isNotBlank(object.getString("xzUserId"))){
|
||||
delegateTask.setVariable("xzUserId",object.getString("xzUserId"));
|
||||
nextUserList.add(object.getString("xzUserId"));
|
||||
}
|
||||
}
|
||||
}
|
||||
delegateTask.setVariable("jdFlag",1);
|
||||
responUserList = (delegateTask.getVariable("zxUserList", JSONArray.class));
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("prcCreateUser");
|
||||
String username = object.getString("prcCreateUserName");
|
||||
String user = object.getString("applyUserId");
|
||||
String username = object.getString("applyUserIdName");
|
||||
String standName = "";
|
||||
if(object.getString("standInData").equals("0")){
|
||||
if(object.getString("standInData").equals("INLAND")){
|
||||
standName = "国内";
|
||||
}else {
|
||||
standName = "国外";
|
||||
@@ -70,7 +53,7 @@ public class ExpainAfter implements TaskListener{
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setOverTime(OVERTIME);
|
||||
one1.setPrcType("1");
|
||||
one1.setPrcType("9");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
@@ -78,7 +61,7 @@ public class ExpainAfter implements TaskListener{
|
||||
}
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("2");
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
@@ -86,9 +69,14 @@ public class ExpainAfter implements TaskListener{
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
if(nextUserList != null && !nextUserList.isEmpty()){
|
||||
for(String nextUser : nextUserList){
|
||||
|
||||
QueryWrapper updataWapper = new QueryWrapper();
|
||||
updataWapper.eq("TASK_ID",delegateTask.getId());
|
||||
updataWapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
busBean.update(busProcessNew,updataWapper);
|
||||
if(responUserList != null){
|
||||
for (Object obj:responUserList) {
|
||||
JSONObject object1 = (JSONObject)obj;
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
@@ -96,7 +84,7 @@ public class ExpainAfter implements TaskListener{
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getName());
|
||||
busProcessNewNext.setUserId(nextUser);
|
||||
busProcessNewNext.setUserId(object1.getString("applyUserId"));
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,8 @@ public class ExpainBefore implements TaskListener{
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package com.ydw.bat.wkflow.listener.standardRead;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName;
|
||||
@@ -8,15 +10,13 @@ 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.standardRead.vo.JSONArrayVo;
|
||||
import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
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.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 标准解读发起后
|
||||
@@ -37,22 +37,22 @@ public class ResolveAfter implements TaskListener{
|
||||
delegateTask.setVariable("objectJson",object);
|
||||
|
||||
List<String> nextUserList = new ArrayList();
|
||||
if(StringUtils.isNotBlank(object.getString("zrUserId"))){
|
||||
if(object.getString("zrUserId").contains(",")){
|
||||
nextUserList = Arrays.asList(object.getString("zrUserId").split(","));
|
||||
}else {
|
||||
nextUserList.add(object.getString("zrUserId"));
|
||||
}
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("zrUserList",nextUserList);
|
||||
JSONArray responUserList = object.getJSONArray("itemList");
|
||||
List<JSONArrayVo> list = responUserList.toJavaList(JSONArrayVo.class);
|
||||
Map<String,List<JSONArrayVo>> userGroupMap = list.stream().collect(Collectors.groupingBy(JSONArrayVo::getZrUserId));
|
||||
Set<String> set = userGroupMap.keySet();
|
||||
for (String str : set) {
|
||||
nextUserList.add(str);
|
||||
}
|
||||
// 配置多实例
|
||||
delegateTask.setVariable("zrUserList", nextUserList);
|
||||
|
||||
//截止时间 流程描述 创建人
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("prcCreateUser");
|
||||
String username = object.getString("prcCreateUserName");
|
||||
String user = object.getString("applyUserId");
|
||||
String username = object.getString("applyUserIdName");
|
||||
String standName = "";
|
||||
if(object.getString("standInData").equals("0")){
|
||||
if(object.getString("standInData").equals("INLAND")){
|
||||
standName = "国内";
|
||||
}else {
|
||||
standName = "国外";
|
||||
@@ -63,7 +63,7 @@ public class ResolveAfter implements TaskListener{
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setOverTime(OVERTIME);
|
||||
one1.setPrcType("1");
|
||||
one1.setPrcType("9");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
@@ -81,10 +81,14 @@ public class ResolveAfter implements TaskListener{
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busBean.save(busProcessNew);
|
||||
if(nextUserList != null && !nextUserList.isEmpty()){
|
||||
for(String nextUser : nextUserList){
|
||||
for(String nextUser : nextUserList){ //2次
|
||||
List<JSONArrayVo> listRes = userGroupMap.get(nextUser);
|
||||
object.put("itemList", JSON.toJSONString(listRes));
|
||||
|
||||
BusProcessNew busProcessNewNext = new BusProcessNew();
|
||||
busProcessNewNext.setMsgType("2");
|
||||
busProcessNewNext.setMsgType("clause");
|
||||
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
|
||||
//busProcessNewNext.setMesg(StringEscapeUtils.unescapeJavaScript(object.toJSONString()));//返转义函数
|
||||
busProcessNewNext.setMesg(object.toJSONString());
|
||||
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNewNext.setFinishFlag("0");
|
||||
@@ -94,4 +98,6 @@ public class ResolveAfter implements TaskListener{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.ydw.bat.wkflow.listener.standardRead;
|
||||
|
||||
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;
|
||||
@@ -11,7 +12,9 @@ import com.ydw.bat.wkflow.util.SpringContextUtil;
|
||||
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;
|
||||
|
||||
/**
|
||||
@@ -33,50 +36,73 @@ public class ZrApplayAfter implements TaskListener{
|
||||
|
||||
List<String> nextUserList = new ArrayList();
|
||||
//责任人是否要进行审核
|
||||
if(object.getString("zrApplyFlag").equals("1")){
|
||||
if(object.getString("resolveFlag").equals("1")){
|
||||
delegateTask.setVariable("zrFlag",1);
|
||||
if(StringUtils.isNotBlank(object.getString("engineerUserId"))){
|
||||
if(StringUtils.isNotBlank(object.getString("engineerUserId"))){
|
||||
delegateTask.setVariable("engineerUserId",object.getString("engineerUserId"));
|
||||
}
|
||||
if(StringUtils.isNotBlank(object.getString("applyUserId"))){
|
||||
delegateTask.setVariable("engineerUserId",object.getString("applyUserId"));
|
||||
nextUserList.add(object.getString("applyUserId"));
|
||||
}
|
||||
func1(delegateTask, busBean, object,"0");
|
||||
}else {
|
||||
if(StringUtils.isNotBlank(object.getString("zxUserId"))){
|
||||
if(StringUtils.isNotBlank(object.getString("zxUserId"))){
|
||||
delegateTask.setVariable("zxUserId",object.getString("zxUserId"));
|
||||
nextUserList.add(object.getString("zxUserId"));
|
||||
}
|
||||
}
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("2");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
busProcessNew.setUserId(object.getString("zxUserId"));
|
||||
busBean.save(busProcessNew);
|
||||
func1(delegateTask, busBean, object,"1");
|
||||
delegateTask.setVariable("zrFlag",2);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批意见
|
||||
* @param delegateTask
|
||||
* @param busBean
|
||||
* @param object
|
||||
* @param commitFlag
|
||||
*/
|
||||
private void func1(DelegateTask delegateTask, IBusProcessNewService busBean, JSONObject object,String commitFlag) {
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.eq("TASK_ID",delegateTask.getId());
|
||||
BusProcessNew one1 = busBean.getOne(queryWrapper1);
|
||||
//截止时间 流程描述 创建人
|
||||
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
|
||||
String user = object.getString("applyUserId");
|
||||
String username = object.getString("applyUserIdName");
|
||||
String standName = "";
|
||||
if(object.getString("standInData").equals("INLAND")){
|
||||
standName = "国内";
|
||||
}else {
|
||||
standName = "国外";
|
||||
}
|
||||
String prcName = standName+"-标准解读流程";
|
||||
QueryWrapper queryWrapper2 = new QueryWrapper();
|
||||
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
|
||||
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
|
||||
if(one1!=null){
|
||||
one1.setCommitFlag(commitFlag);
|
||||
one1.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one1);
|
||||
one1.setOverTime(OVERTIME);
|
||||
one1.setPrcType("9");
|
||||
one1.setPrcName(prcName);
|
||||
one1.setCreatUser(user);
|
||||
one1.setCreatUserName(username);
|
||||
busProcessNameService.saveOrUpdate(one1);
|
||||
}
|
||||
// 存储当前节点意见
|
||||
BusProcessNew busProcessNew = new BusProcessNew();
|
||||
busProcessNew.setMsgType("clause");
|
||||
busProcessNew.setPId(delegateTask.getProcessInstanceId());
|
||||
busProcessNew.setMesg(object.toJSONString());
|
||||
busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey());
|
||||
busProcessNew.setTaskId(delegateTask.getId());
|
||||
busProcessNew.setCommitText(object.getString("commentText"));
|
||||
busProcessNew.setFinishFlag("0");
|
||||
busProcessNew.setTaskInfo(delegateTask.getName());
|
||||
|
||||
QueryWrapper updataWapper = new QueryWrapper();
|
||||
updataWapper.eq("TASK_ID",delegateTask.getId());
|
||||
updataWapper.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
busBean.update(busProcessNew,updataWapper);
|
||||
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);
|
||||
busBean.save(busProcessNewNext);
|
||||
}
|
||||
} else {
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.eq("TASK_ID",delegateTask.getId());
|
||||
BusProcessNew one2 = busBean.getOne(queryWrapper1);
|
||||
if(one2!=null){
|
||||
one2.setCommitFlag("0");
|
||||
one2.setCommitText(object.getString("commentText"));
|
||||
busBean.saveOrUpdate(one2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,8 @@ public class ZrApplayBefore implements TaskListener{
|
||||
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
|
||||
QueryWrapper queryWrapper1 = new QueryWrapper();
|
||||
queryWrapper1.isNull("TASK_ID");
|
||||
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
|
||||
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
|
||||
List<BusProcessNew> list = busBean.list(queryWrapper1);
|
||||
if(!list.isEmpty()){
|
||||
BusProcessNew one1 = list.get(0);
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
package com.ydw.bat.wkflow.listener.standardRead.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class JSONArrayVo {
|
||||
private String id;
|
||||
|
||||
private String infoId;
|
||||
|
||||
private String itemsNum;
|
||||
|
||||
private String itemsName;
|
||||
|
||||
private String itermsConditions;
|
||||
|
||||
private String newcarPutTime;
|
||||
|
||||
private String productPutTime;
|
||||
|
||||
private String menuId;
|
||||
|
||||
private String svpps;
|
||||
|
||||
private String applyArctic;
|
||||
|
||||
private String referenceStand;
|
||||
|
||||
private String specialRequest;
|
||||
|
||||
private String relevanceFile;
|
||||
|
||||
private String remarks;
|
||||
|
||||
private String validFlag;
|
||||
|
||||
private String creationUser;
|
||||
|
||||
private String creationTime;
|
||||
|
||||
private String modifyTime;
|
||||
|
||||
private String modifyUser;
|
||||
|
||||
private String infoIdList;
|
||||
|
||||
private String idList;
|
||||
|
||||
private String itemValEOList;
|
||||
|
||||
private String delItemIds;
|
||||
|
||||
private String sMenuId;
|
||||
|
||||
private String relevanceFileAttid;
|
||||
|
||||
private String fo;
|
||||
|
||||
private String dutyEngineer;
|
||||
|
||||
private String claimType;
|
||||
|
||||
private String busStandCover;
|
||||
|
||||
private String fileType;
|
||||
|
||||
private String foShow;
|
||||
|
||||
private String dutyEngineerShow;
|
||||
|
||||
private String svppsShow;
|
||||
|
||||
private String claimTypeShow;
|
||||
|
||||
private String busStandCoverShow;
|
||||
|
||||
private String fileTypeShow;
|
||||
|
||||
private String responsibleUnit;
|
||||
|
||||
private String responsibleUnitShow;
|
||||
|
||||
private String itemsCondi;
|
||||
//部门责任人
|
||||
private String zrUserId;
|
||||
//选择执行人
|
||||
private String zxUserId;
|
||||
|
||||
private String zxUserIdName;
|
||||
|
||||
private String zrUserIdName;
|
||||
|
||||
private List<ParamVo> paramsList;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.ydw.bat.wkflow.listener.standardRead.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class ParamVo {
|
||||
|
||||
private String id;
|
||||
|
||||
private String itemId;
|
||||
|
||||
private String description;
|
||||
|
||||
private String figure;
|
||||
|
||||
private String validFlag;
|
||||
|
||||
private String creationTime;
|
||||
|
||||
private String modifyTime;
|
||||
|
||||
private String infoId;
|
||||
}
|
||||
Reference in New Issue
Block a user