add 未合规整改模块

This commit is contained in:
yinglong zhang
2021-07-13 15:37:31 +08:00
parent 39dc1d27e7
commit 34d5a31bc9
10 changed files with 350 additions and 61 deletions
@@ -1,5 +1,7 @@
package com.ydw.bat.wkflow;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
@@ -27,6 +29,8 @@ public class BatWkflowApplication {
public static void main(String[] args) {
SpringApplication.run(BatWkflowApplication.class, args);
// JSONObject jsonObject= JSON.parseObject("{\"startUser\":\"WY8J26MH23\",\"engineer\":\"engineer\",\"dockUserList\":[{\"id\":\"zqazqazqa\"},{\"id\":\"xwsxwsxws\"},{\"id\":\"cedcedced\"}],\"actionFlag\":\"0\",\"responUserList\":[{\"id\":\"zqazqazqa\"},{\"id\":\"xwsxwsxws\"},{\"id\":\"cedcedced\"}]}");
// System.out.println(jsonObject.toJSONString());
}
}
@@ -0,0 +1,104 @@
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 DockingApprovalAfter 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 ("1".equals(object.getString("actionFlag"))) {
delegateTask.setVariable("actionFlag", 1);
} else {
delegateTask.setVariable("actionFlag", 0);
}
//截止时间 流程描述 创建人
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 = "";
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("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.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);
Integer count=delegateTask.getVariable("dockUserApprovalState",Integer.class);
JSONArray responUserList=delegateTask.getVariable("dockUserList", JSONArray.class);
if(count==null)count=0;
count++;
delegateTask.setVariable("dockUserApprovalState",count);
if(delegateTask.getVariable("actionFlag",Integer.class)==0){
if(count>=responUserList.size()){
}
}else{
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo("责任人上传调研结果");
busProcessNewNext.setUserId(delegateTask.getVariable("responUser",JSONObject.class).getString("id"));
busBean.save(busProcessNewNext);
}
}
}
@@ -0,0 +1,30 @@
package com.ydw.bat.wkflow.listener.NonConformanceRectification;
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.util.SpringContextUtil;
import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener;
import java.util.List;
public class DockingApprovalBefore 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()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
one1.setTaskInfo(delegateTask.getName());
busBean.saveOrUpdate(one1);
}
}
}
@@ -73,7 +73,7 @@ public class SelectDockUserAfter implements TaskListener {
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
one1.setOverTime(OVERTIME);
one1.setPrcType("1");
one1.setPrcType("8");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
@@ -100,6 +100,7 @@ public class SelectDockUserAfter implements TaskListener {
busBean.update(busProcessNew,updataWapper);
if(!nextUserList.isEmpty()){
List<BusProcessNew> busProcessNews=new ArrayList<>();
for(String nextUser : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
@@ -109,8 +110,9 @@ public class SelectDockUserAfter implements TaskListener {
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(nextUser);
busBean.save(busProcessNewNext);
busProcessNews.add(busProcessNewNext);
}
busBean.saveBatch(busProcessNews);
}else{
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
@@ -19,6 +19,7 @@ import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
public class SelectResponUserAfter implements TaskListener {
@Override
@@ -52,7 +53,6 @@ public class SelectResponUserAfter implements TaskListener {
delegateTask.setVariable("dockUserList", dockUserList);
JSONArray preResponUserList = object.getJSONArray("responUserList");
for (Object o : preResponUserList) {
@@ -60,22 +60,34 @@ public class SelectResponUserAfter implements TaskListener {
boolean ok = true;
for (Object o1 : responUserList) {
JSONObject responUser = (JSONObject) o1;
if(responUser.getString("id").equals(preResponUser.get("id"))&&responUser.getString("dockUser").equals(delegateTask.getAssignee())){
ok=false;break;
if (responUser.getString("id").equals(preResponUser.get("id"))
&& responUser.getString("dockUser").equals(delegateTask.getAssignee())) {
ok = false;
break;
}
}
if (ok) {
preResponUser.put("dockUser", delegateTask.getAssignee());
responUserList.add(preResponUser);
JSONArray standardInfoList = preResponUser.getJSONArray("standardInfoList");
for (int i = 0; i < standardInfoList.size(); i++) {
JSONObject jsonObject=new JSONObject();
jsonObject.put("id",preResponUser.getString("id"));
jsonObject.put("name",preResponUser.getString("name"));
jsonObject.put("dockUser",preResponUser.getString("dockUser"));
jsonObject.put("info",standardInfoList.get(i));
responUserList.add(jsonObject);
}
}
}
delegateTask.setVariable("responUserList",responUserList);
}
delegateTask.setVariable("responUserList", responUserList);
delegateTask.setVariable("objectJson", object);
delegateTask.setVariable("dockUserApprovalState", 0);
//截止时间 流程描述 创建人
@@ -90,7 +102,7 @@ public class SelectResponUserAfter implements TaskListener {
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if (one1 != null) {
one1.setOverTime(OVERTIME);
one1.setPrcType("1");
one1.setPrcType("8");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
@@ -98,7 +110,6 @@ public class SelectResponUserAfter implements TaskListener {
}
// 存储当前节点意见
BusProcessNew busProcessNew = new BusProcessNew();
busProcessNew.setMsgType("clause");
@@ -135,8 +146,12 @@ public class SelectResponUserAfter implements TaskListener {
busBean.save(busProcessNewNext);
} else {
List<BusProcessNew> busProcessNews = new ArrayList<>();
for (Object o : responUserList) {
JSONObject responUser = (JSONObject) o;
object.put("info",responUser);
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
@@ -145,9 +160,9 @@ public class SelectResponUserAfter implements TaskListener {
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(responUser.getString("id"));
busBean.save(busProcessNewNext);
busProcessNews.add(busProcessNewNext);
}
busBean.saveBatch(busProcessNews);
}
}
@@ -51,7 +51,7 @@ public class StartSurveyAfter implements TaskListener {
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
if(one1!=null){
one1.setOverTime(OVERTIME);
one1.setPrcType("1");
one1.setPrcType("8");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
@@ -0,0 +1,127 @@
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 UploadCommentAfter 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());
List<String> nextUserList = new ArrayList();
delegateTask.setVariable("actionFlag",0);
JSONArray responUserList=(delegateTask.getVariable("responUserList",JSONArray.class));
JSONObject responUser = delegateTask.getVariable("responUser", JSONObject.class);
for (int i = 0; i < responUserList.size(); i++) {
JSONObject obj=(JSONObject)responUserList.get(i);
if(responUser.getString("id").equals(obj.get("id"))
&&responUser.getString("dockUser").equals(obj.get("dockUser"))
){
obj.put("info",object.get("info"));
responUserList.set(i,obj);
break;
}
}
delegateTask.setVariable("responUserList",responUserList);
// 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"))){
// ok=false;break;
// }
// }
// if(ok){
// preDockUserList.add(preDockUserOrg);
// nextUserList.add(preDockUserOrg.getString("id"));
// }
// }
// 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 = "";
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("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());
QueryWrapper updataWapper=new QueryWrapper();
updataWapper.eq("TASK_ID",delegateTask.getId());
updataWapper.eq("P_ID",delegateTask.getProcessInstanceId());
busBean.update(busProcessNew,updataWapper);
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(object.toJSONString());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo("下发至标准法规工程师");
busProcessNewNext.setUserId(delegateTask.getVariable("responUser",JSONObject.class).getString("dockUser"));
busBean.save(busProcessNewNext);
}
}
@@ -1,5 +1,7 @@
package com.ydw.bat.wkflow.listener.NonConformanceRectification;
import com.alibaba.fastjson.JSON;
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;
@@ -20,6 +22,9 @@ public class UploadCommentBefore implements TaskListener {
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
JSONObject jsonObject = JSON.parseObject(one1.getMesg());
jsonObject.put("responUserInfo",delegateTask.getVariable("responUser"));
one1.setMesg(jsonObject.toJSONString());
one1.setTaskId(delegateTask.getId());
one1.setTaskInfo(delegateTask.getName());
busBean.saveOrUpdate(one1);
@@ -124,6 +124,7 @@ public class SelectResponsibleUserAfter implements TaskListener {
if(nextUserList != null && !nextUserList.isEmpty()){
List<BusProcessNew> busProcessNews=new ArrayList<>();
for(Map<String,Object> zqa : respon){
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
@@ -134,8 +135,9 @@ public class SelectResponsibleUserAfter implements TaskListener {
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId((String) zqa.get("id"));
busBean.save(busProcessNewNext);
busProcessNews.add(busProcessNewNext);
}
busBean.saveBatch(busProcessNews);
}
}
}
@@ -45,7 +45,7 @@ public class UploadResearchResultAfter implements TaskListener {
JSONArray info = jsonObject.getObject("info", JSONArray.class);
info.addAll(object.getJSONArray("info"));
jsonObject.put("info",info);
jsonObject.put("info",object.getJSONArray("info"));
object.put("responUser",jsonObject.getString("id"));
object.put("responUserName",jsonObject.getString("name"));