Merge remote-tracking branch 'origin/develop' into develop

# Conflicts:
#	src/main/java/com/ydw/bat/wkflow/listener/StandardCommentProcess/StartSurveyAfter.java
#	src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/StartSurveyAfter.java
This commit is contained in:
zj
2021-07-29 16:51:01 +08:00
35 changed files with 1838 additions and 11 deletions
@@ -22,7 +22,7 @@ public class ProjectAssessDTO {
private String saleMarket;
private Date modifyTime;
private String targetMarket;
// private Children children;
// private PCAchildren children;
private List<Children> children;
private String id;
private String productType;
@@ -728,7 +728,7 @@ public class TodoTaskController extends BaseAction {
}
ProjectAssessDTO projectAssess = projectAssessDTOList.get(0);
projectAssess.setChildren(children);
// List<Children> childrenList = projectAssess.getChildren();
// List<PCAchildren> childrenList = projectAssess.getChildren();
// childrenList.get(0).setItemsList(itemsLists);
// projectAssess.setChildren(childrenList);
projectAssessResultList.add(projectAssess);
@@ -0,0 +1,27 @@
/**
* Copyright 2021 bejson.com
*/
package com.ydw.bat.wkflow.business_main.datas.dto.PCA;
import lombok.Data;
import java.util.Date;
/**
* Auto-generated: 2021-07-22 18:56:38
*
* @author bejson.com (i@bejson.com)
* @website http://www.bejson.com/java2pojo/
*/
@Data
public class PCAbreakdownList {
private String id;
private String standId;
private String itemsNum;
private String itemsName;
private String responsibleUnit;
private String responsibleEngineer;
private String workPeople;
private String workPeopleId;
}
@@ -0,0 +1,33 @@
/**
* Copyright 2021 bejson.com
*/
package com.ydw.bat.wkflow.business_main.datas.dto.PCA;
import lombok.Data;
import java.util.Date;
/**
* Auto-generated: 2021-07-27 14:7:5
*
* @author bejson.com (i@bejson.com)
* @website http://www.bejson.com/java2pojo/
*/
@Data
public class PCAchildren {
private String id;
private String key;
private String standId;
private String itemsNum;
private String itemsName;
private String workPeople;
private String workPeopleId;
private String noCompliance;
private String zcNoCompliance;
private String complianceReasons;
private String countermeasures;
private String zcCountermeasures;
private Date zcCompletionTime;
private Date completionTime;
private String zcComplianceReasons;
}
@@ -0,0 +1,45 @@
/**
* Copyright 2021 bejson.com
*/
package com.ydw.bat.wkflow.business_main.datas.dto.PCA;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* Auto-generated: 2021-07-22 18:56:38
*
* @author bejson.com (i@bejson.com)
* @website http://www.bejson.com/java2pojo/
*/
@Data
public class PCAdataList {
private Date ssrq;
private String zrbm;
private String standId;
private String cycvppsbm;
private String cycvppscn;
private String kccvppsbm;
private String kccvppscn;
private String standName;
private Date xcxssrqgj;
private Date zccssrqgj;
private String standEnName;
private String liablePeople;
private String liablePeopleId;
private String workPeople;
private String workPeopleId;
private List<PCAchildren> children;
private String noCompliance;
private String zcNoCompliance;
private String complianceReasons;
private String countermeasures;
private String zcCountermeasures;
private Date zcCompletionTime;
private Date completionTime;
private String zcComplianceReasons;
}
@@ -0,0 +1,39 @@
/**
* Copyright 2021 bejson.com
*/
package com.ydw.bat.wkflow.business_main.datas.dto.PCA;
import lombok.Data;
import java.util.List;
/**
* Auto-generated: 2021-07-22 18:56:38
*
* @author bejson.com (i@bejson.com)
* @website http://www.bejson.com/java2pojo/
*/
@Data
public class PCAtotal {
private String BZFlag;
private String jgUser;
private List<PCAdataList> dataList;
private String jgUserId;
private String startUser;
private List<String> taskBreak;
private String commentText;
private String projectName;
private List<PCAbreakdownList> breakdownList;
private String prcCreateUser;
private String projectNumber;
private String startUserName;
private String serviceManager;
private String statuteMinister;
private String prcCreateUserName;
private String engineeringManager;
private String serviceManagerName;
private String statuteMinisterName;
private String engineeringManagerName;
private String bZFlag;
private List<PCAchildren> children;
}
@@ -0,0 +1,90 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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.ArrayList;
import java.util.Date;
import java.util.List;
public class PCAComplianceAssessmentAfter 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);
//根据流程id找到流程信息
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<>();
JSONArray jsonArray=JSONArray.parseArray(object.getString("dataList"));
JSONObject jsonObject=JSONObject.parseObject(jsonArray.get(0).toString());
nextUserList.add(jsonObject.getString("liablePeopleId"));
delegateTask.setVariable("ffUserId",jsonObject.getString("liablePeopleId"));
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAComplianceAssessmentBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,133 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.tmsps.fk.common.util.JsonUtil;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAtotal;
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 org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class PCAbafgManagerApproveAfter 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);
//根据流程id找到流程信息
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("bzFlag"))) {
nextUserList.add(String.valueOf(delegateTask.getVariable("prcCreateUser")));
delegateTask.setVariable("sum", delegateTask.getVariable("prcCreateUser"));
delegateTask.setVariable("bzFlag", "1");
if (null != delegateTask.getVariable("pass")) {
delegateTask.setVariable("pass", String.valueOf(Integer.valueOf(String.valueOf(delegateTask.getVariable("pass"))) + 1));
} else {
delegateTask.setVariable("pass", "1");
}
} else {
nextUserList.add(String.valueOf(delegateTask.getVariable("workPeople")));
delegateTask.setVariable("bzFlag", "2");
}
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser", String.class);
String username = delegateTask.getVariable("prcCreateUserName", 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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 (Integer.valueOf(delegateTask.getVariable("pass", String.class)) !=
delegateTask.getVariable("workPeoples", List.class).size()) {
if (nextUserList != null && !nextUserList.isEmpty()) {
for (String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}else {
List<BusProcessNew> busProcessNews=busBean.findLastworkPeople("Projectcomplianceassessment10",delegateTask.getProcessInstanceId());
PCAtotal res = new PCAtotal();
for (BusProcessNew bus:busProcessNews) {
PCAtotal pcAtotal=JSONObject.parseObject(bus.getMesg(),PCAtotal.class);
if ("1".equals(pcAtotal.getBZFlag())) {
if (StringUtils.isNotEmpty(res.getBZFlag())) {
res.getDataList().addAll(pcAtotal.getDataList());
} else {
BeanUtils.copyProperties(pcAtotal, res);
}
}
}
if (nextUserList != null && !nextUserList.isEmpty()) {
for (String userId : nextUserList) {
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(JsonUtil.toJson(res));
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(userId);
busBean.save(busProcessNewNext);
}
}
}
}
}
@@ -0,0 +1,97 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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.dto.*;
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 org.springframework.beans.BeanUtils;
import java.text.SimpleDateFormat;
import java.util.*;
public class PCAbzManagerApproveAfter 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);
//根据流程id找到流程信息
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("BZFlag"))){
delegateTask.setVariable("BZFlag","1");
delegateTask.setVariable("GCUserId",String.valueOf(delegateTask.getVariable("gcjl")));
nextUserList.add(String.valueOf(delegateTask.getVariable("gcjl")));
}else {
//流程直接结束,抄送消息提示
delegateTask.setVariable("BZFlag","2");
}
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAbzManagerApproveBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAbzfgManagerApproveBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,213 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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.dto.PCA.PCAchildren;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAtotal;
import com.ydw.bat.wkflow.business_main.datas.dto.SarStandUnqualified;
import com.ydw.bat.wkflow.business_main.datas.dto.SarStandardComplianceProductAssess;
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 PCAdlApproveAfter 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);
//根据流程id找到流程信息
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.get("dlFlag"))) {
//后续节点所需要的数据
PCAtotal res = JSONObject.parseObject(datas.getFormValsJson(), PCAtotal.class);
//不一致项 存储集合
List<SarStandUnqualified> standUnqualifieds = new ArrayList<>();
//评估结果存储集合
List<SarStandardComplianceProductAssess> sarStandardComplianceProductAssesses = new ArrayList<>();
res.getDataList().forEach(pcAdataList -> {
//标准一级别
if (null != pcAdataList.getNoCompliance()) {
SarStandUnqualified sarStandUnqualified = new SarStandUnqualified();
//少一个standId 不合格原因 在研在产!
sarStandUnqualified.setStandId(pcAdataList.getStandId());
sarStandUnqualified.setStandName(pcAdataList.getStandName());
sarStandUnqualified.setCreateById(delegateTask.getVariable("prcCreateUser", String.class));
sarStandUnqualified.setCloseState(1);
sarStandUnqualified.setCreateTime(new Date());
sarStandUnqualified.setProductName(res.getProjectName());
sarStandUnqualified.setResponsibleUnit(pcAdataList.getZrbm());
sarStandUnqualified.setProductType("research");
sarStandUnqualified.setReason(pcAdataList.getNoCompliance());
sarStandUnqualified.setPlanCloseTime(pcAdataList.getCompletionTime());
standUnqualifieds.add(sarStandUnqualified);
}
if (null != pcAdataList.getZcNoCompliance()) {
SarStandUnqualified sarStandUnqualified = new SarStandUnqualified();
//少一个standId 不合格原因 在研在产!
sarStandUnqualified.setStandId(pcAdataList.getStandId());
sarStandUnqualified.setStandName(pcAdataList.getStandName());
sarStandUnqualified.setCreateById(delegateTask.getVariable("prcCreateUser", String.class));
sarStandUnqualified.setCloseState(1);
sarStandUnqualified.setCreateTime(new Date());
sarStandUnqualified.setProductName(res.getProjectName());
sarStandUnqualified.setResponsibleUnit(pcAdataList.getZrbm());
sarStandUnqualified.setReason(pcAdataList.getZcNoCompliance());
sarStandUnqualified.setProductType("product");
sarStandUnqualified.setPlanCloseTime(pcAdataList.getZcCompletionTime());
standUnqualifieds.add(sarStandUnqualified);
}
//合估评规 结果!
SarStandardComplianceProductAssess sarStandard = new SarStandardComplianceProductAssess();
// sarStandard.setProductLineId(o.getProductLine());
sarStandard.setStandName(pcAdataList.getStandName());
sarStandard.setStandNumber(pcAdataList.getStandId());
//111
sarStandard.setProductionCompletionTime(pcAdataList.getZcCompletionTime());
sarStandard.setProductionCountermeasures(pcAdataList.getZcCountermeasures());
sarStandard.setProductionCompliance(pcAdataList.getZcNoCompliance());
sarStandard.setResearchCompletionTime(pcAdataList.getCompletionTime());
sarStandard.setResearchCountermeasures(pcAdataList.getCountermeasures());
sarStandard.setResearchNonCompliance(pcAdataList.getNoCompliance());
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sarStandard.setResearchImplementationTime(pcAdataList.getXcxssrqgj());
// simpleDateFormat.parse(String.valueOf(delegateTask.getVariable("XCXSSRQ")))
sarStandard.setProductionImplementationTime(pcAdataList.getZccssrqgj());
sarStandardComplianceProductAssesses.add(sarStandard);
//遍历条目
for (PCAchildren pcAchildren : pcAdataList.getChildren()) {
if (null != pcAchildren.getNoCompliance()) {
SarStandUnqualified sarStandUnqualified = new SarStandUnqualified();
//少一个standId 不合格原因 在研在产!
sarStandUnqualified.setStandId(pcAchildren.getStandId());
sarStandUnqualified.setStandName(pcAdataList.getStandName());
sarStandUnqualified.setItemsNum(pcAchildren.getItemsNum());
sarStandUnqualified.setCreateById(delegateTask.getVariable("prcCreateUser", String.class));
sarStandUnqualified.setItemsName(pcAchildren.getItemsName());
sarStandUnqualified.setCloseState(1);
sarStandUnqualified.setCreateTime(new Date());
sarStandUnqualified.setProductName(res.getProjectName());
sarStandUnqualified.setResponsibleUnit(pcAdataList.getZrbm());
sarStandUnqualified.setProductType("research");
sarStandUnqualified.setReason(pcAchildren.getNoCompliance());
sarStandUnqualified.setPlanCloseTime(pcAchildren.getCompletionTime());
standUnqualifieds.add(sarStandUnqualified);
}
if (null != pcAdataList.getZcNoCompliance()) {
SarStandUnqualified sarStandUnqualified = new SarStandUnqualified();
//少一个standId 不合格原因 在研在产!
sarStandUnqualified.setStandId(pcAchildren.getStandId());
sarStandUnqualified.setStandName(pcAdataList.getStandName());
sarStandUnqualified.setItemsNum(pcAchildren.getItemsNum());
sarStandUnqualified.setCreateById(delegateTask.getVariable("prcCreateUser", String.class));
sarStandUnqualified.setItemsName(pcAchildren.getItemsName());
sarStandUnqualified.setCloseState(1);
sarStandUnqualified.setCreateTime(new Date());
sarStandUnqualified.setProductName(res.getProjectName());
sarStandUnqualified.setResponsibleUnit(pcAdataList.getZrbm());
sarStandUnqualified.setResponsibleUnit(pcAdataList.getZrbm());
sarStandUnqualified.setReason(pcAchildren.getZcNoCompliance());
sarStandUnqualified.setProductType("product");
sarStandUnqualified.setPlanCloseTime(pcAchildren.getZcCompletionTime());
standUnqualifieds.add(sarStandUnqualified);
}
//合估评规 结果!
SarStandardComplianceProductAssess sarStandardChild = new SarStandardComplianceProductAssess();
// sarStandard.setProductLineId(o.getProductLine());
sarStandardChild.setStandName(pcAdataList.getStandName());
sarStandardChild.setStandNumber(pcAdataList.getStandId());
sarStandardChild.setProductionCompletionTime(pcAchildren.getZcCompletionTime());
sarStandardChild.setProductionCountermeasures(pcAchildren.getZcCountermeasures());
sarStandardChild.setProductionCompliance(pcAchildren.getZcNoCompliance());
sarStandardChild.setResearchCompletionTime(pcAchildren.getCompletionTime());
sarStandardChild.setResearchCountermeasures(pcAchildren.getCountermeasures());
sarStandardChild.setResearchNonCompliance(pcAchildren.getNoCompliance());
sarStandardChild.setResearchImplementationTime(pcAdataList.getXcxssrqgj());
sarStandardChild.setProductionImplementationTime(pcAdataList.getZccssrqgj());
sarStandardComplianceProductAssesses.add(sarStandardChild);
}
});
//数据入库!!!!
lawsUserInfoService.addsarStandUnqualified(standUnqualifieds);
lawsUserInfoService.addProduct(sarStandardComplianceProductAssesses);
delegateTask.setVariable("dlFlag","1");
}else {
delegateTask.setVariable("dlFlag","2");
nextUserList.add(String.valueOf(delegateTask.getVariable("sum")));
}
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAdlApproveBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,93 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAffLiableApproveAfter 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);
//根据流程id找到流程信息
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("ffFlag"))) {
nextUserList.add(String.valueOf(delegateTask.getVariable("JGUserId")));
delegateTask.setVariable("JGManager", delegateTask.getVariable("JGUserId"));
delegateTask.setVariable("ffFlag", "1");
}else {
nextUserList.add(String.valueOf(delegateTask.getVariable("workPeople")));
delegateTask.setVariable("ffFlag", "2");
}
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAffLiableApproveBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAffLiableDistirbuteBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,119 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
import com.alibaba.druid.support.json.JSONUtils;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.tmsps.fk.common.util.JsonUtil;
import com.ydw.bat.wkflow.business_main.datas.dto.DataList;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAchildren;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAdataList;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAtotal;
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 org.springframework.beans.BeanUtils;
import java.text.SimpleDateFormat;
import java.util.*;
public class PCAffLiableDistributeAfter 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);
//根据流程id找到流程信息
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);
PCAtotal pcAtotal=JSONObject.parseObject(datas.getFormValsJson(),PCAtotal.class);
//后续节点所需要的数据
List<String> nextUserList=new ArrayList<>();
//猜测写代码
//准备标准数据
Map<String,PCAdataList> mapData=new HashMap<>();
pcAtotal.getDataList().forEach(pcAdataList -> {
List<PCAchildren> pcAchildren=new ArrayList<>();
pcAdataList.setChildren(pcAchildren);
mapData.put(pcAdataList.getStandId(),pcAdataList);
});
Map<String, PCAtotal> map=new HashMap<>();
//获取被分发的条款
pcAtotal.getChildren().forEach(o -> {
if (null!=map.get(o.getWorkPeopleId())){
map.get(o.getWorkPeopleId()).getChildren().add(o);
int flag=0;
for (PCAdataList ps: map.get(o.getWorkPeopleId()).getDataList()) {
if (ps.getStandId().equals(mapData.get(o.getKey()).getStandId())){
flag++;
}
}
}else {
PCAtotal pcs=new PCAtotal();
BeanUtils.copyProperties(pcAtotal,pcs);
//建立空的子 为了后面遍历
List<PCAchildren> list=new ArrayList<>();
list.add(o);
pcs.setChildren(list);
List<PCAdataList> list2=new ArrayList<>();
PCAdataList adataLists=new PCAdataList();
BeanUtils.copyProperties(mapData.get(o.getKey()),adataLists);
adataLists.setChildren(list);
list2.add(adataLists);
pcs.setDataList(list2);
map.put(o.getWorkPeopleId(),pcs);
}
});
map.forEach((s, pcAtotal1) -> {
nextUserList.add(s);
});
delegateTask.setVariable("workPeoples",nextUserList);
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见
if(nextUserList != null && !nextUserList.isEmpty()){
for(String userId : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(String.valueOf(JSONObject.toJSON(map.get(userId))));
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,95 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAgcManagerApproveAfter 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);
//根据流程id找到流程信息
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("gcFlag"))) {
nextUserList.add(String.valueOf(delegateTask.getVariable("bzfgl")));
delegateTask.setVariable("bzManager", delegateTask.getVariable("bzfgl"));
delegateTask.setVariable("gcFlag","1");
}else {
nextUserList.add(String.valueOf(delegateTask.getVariable("workPeople")));
delegateTask.setVariable("gcFlag", "2");
}
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAgcManagerApproveBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,93 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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.ArrayList;
import java.util.Date;
import java.util.List;
public class PCAgcManagerDeliverAfter 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);
//根据流程id找到流程信息
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!=object.getString("jgUserId")){
delegateTask.setVariable("JGUserId",object.getString("jgUserId"));
nextUserList.add(object.getString("jgUserId"));
}else {
throw new ActivitiException("请选择架构经理!");
}
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAgcManagerDeliverBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,95 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 org.apache.commons.lang.StringUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class PCAjgManagerApproveAfter 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);
//根据流程id找到流程信息
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("jgFlag"))) {
nextUserList.add(String.valueOf(delegateTask.getVariable("gcjl")));
delegateTask.setVariable("gcManager", delegateTask.getVariable("gcjl"));
delegateTask.setVariable("jgFlag","1");
}else {
nextUserList.add(String.valueOf(delegateTask.getVariable("workPeople")));
delegateTask.setVariable("jgFlag", "2");
}
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAjgManagerApproveBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,119 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.tmsps.fk.common.util.JsonUtil;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAbreakdownList;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAdataList;
import com.ydw.bat.wkflow.business_main.datas.dto.PCA.PCAtotal;
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 org.springframework.beans.BeanUtils;
import java.text.SimpleDateFormat;
import java.util.*;
public class PCAjgManagerDistributeAfter 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);
//根据流程id找到流程信息
QueryWrapper<Datas> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId());
Datas datas = datasService.getOne(queryWrapper);
JSONObject object = JSONObject.parseObject(datas.getFormValsJson());
PCAtotal pcAtotal=JSONObject.parseObject(datas.getFormValsJson(),PCAtotal.class);
delegateTask.setVariable("objectJson", object);
//后续节点所需要的数据
List<String> nextUserList=new ArrayList<>();
Map<String,PCAtotal> map=new HashMap<>();
//遍历下发任务!!
pcAtotal.getDataList().forEach(pcAdataList -> {
if (null==map.get(pcAdataList.getLiablePeopleId())){
PCAtotal mis=new PCAtotal();
BeanUtils.copyProperties(pcAtotal,mis);
List<PCAdataList> pcAdataLists=new ArrayList<>();
pcAdataLists.add(pcAdataList);
List<PCAbreakdownList> pcAbreakdownLists=new ArrayList<>();
for (PCAbreakdownList ps:pcAtotal.getBreakdownList()) {
if (ps.getStandId().equals(pcAdataList.getStandId())){
pcAbreakdownLists.add(ps);
}
}
mis.setBreakdownList(pcAbreakdownLists);
mis.setDataList(pcAdataLists);
map.put(pcAdataList.getLiablePeopleId(),mis);
nextUserList.add(pcAdataList.getLiablePeopleId());
}else {
map.get(pcAdataList.getLiablePeopleId()).getDataList().add(pcAdataList);
List<PCAbreakdownList> pcAbreakdownLists=new ArrayList<>();
for (PCAbreakdownList ps:pcAtotal.getBreakdownList()) {
if (ps.getStandId().equals(pcAdataList.getStandId())){
pcAbreakdownLists.add(ps);
}
}
map.get(pcAdataList.getLiablePeopleId()).getBreakdownList().addAll(pcAbreakdownLists);
}
});
delegateTask.setVariable("liablePeopleList",nextUserList);
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : nextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
busProcessNewNext.setMesg(JsonUtil.toJson(map.get(userId)));
busProcessNewNext.setTaskInfo(delegateTask.getTaskDefinitionKey());
busProcessNewNext.setFinishFlag("0");
busProcessNewNext.setTaskInfo(delegateTask.getName());
busProcessNewNext.setUserId(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAjgManagerDistributeBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -0,0 +1,83 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAstartAfter 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);
//根据流程id找到流程信息
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);
//获取对象中的项目的数据
// 获取标准,项目相关信息!预测在下发阶段需要分散 但是在非下发阶段要带着数据!所以此步骤只需要拿到预存的id就好了
delegateTask.setVariable("ywjl",object.getString("serviceManager"));
delegateTask.setVariable("gcjl",object.getString("engineeringManager"));
delegateTask.setVariable("bzfgl",object.getString("statuteMinister"));
//标准法规部业务经理Id
List<String> nextUserList = new ArrayList();
//赋值标准法规工程师,工程经理,标准法规部部长
nextUserList.add(object.getString("serviceManager"));
delegateTask.setVariable("BZUserId",object.getString("serviceManager"));
//截止时间 流程描述 创建人
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("prcCreateUser", user);
delegateTask.setVariable("prcCreateUserName", username);
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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见
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);
}
}
}
}
@@ -0,0 +1,21 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener;
public class PCAstartBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
// IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
// QueryWrapper queryWrapper1 = new QueryWrapper();
// queryWrapper1.isNull("TASK_ID");
// List<BusProcessNew> list = busBean.list(queryWrapper1);
// if(!list.isEmpty()){
// BusProcessNew one1 = list.get(0);
// one1.setTaskId(delegateTask.getId());
// busBean.saveOrUpdate(one1);
// }
}
}
@@ -0,0 +1,87 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAsumAfter 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);
//根据流程id找到流程信息
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<>();
nextUserList.add(delegateTask.getVariable("bzfgl",String.class));
delegateTask.setVariable("DLUserId",delegateTask.getVariable("bzfgl",String.class));
//截止时间 流程描述 创建人
String OVERTIME = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
String user = delegateTask.getVariable("prcCreateUser",String.class);
String username = delegateTask.getVariable("prcCreateUserName",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("6");
one1.setPrcName(prcName);
one1.setCreatUser(user);
one1.setCreatUserName(username);
busProcessNameService.saveOrUpdate(one1);
}
// 存储当前节点意见1
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 != null && !nextUserList.isEmpty()){
for(String userId : 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(userId);
busBean.save(busProcessNewNext);
}
}
}
}
@@ -0,0 +1,29 @@
package com.ydw.bat.wkflow.listener.ProjectComplianceAssessment;
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 PCAsumBefore implements TaskListener {
@Override
public void notify(DelegateTask delegateTask) {
IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class);
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("P_ID",delegateTask.getProcessInstanceId());
queryWrapper1.eq("USER_ID",delegateTask.getAssignee());
queryWrapper1.isNull("TASK_ID");
List<BusProcessNew> list = busBean.list(queryWrapper1);
if(!list.isEmpty()){
BusProcessNew one1 = list.get(0);
one1.setTaskId(delegateTask.getId());
busBean.saveOrUpdate(one1);
}
}
}
@@ -56,7 +56,7 @@ public class PEPstartAfter implements TaskListener {
String username = object.getString("prcCreateUserName");
delegateTask.setVariable("prcCreateUser", user);
delegateTask.setVariable("prcCreateUserName", username);
String prcName = "标准项目合规评估流程-审批";
String prcName = "标准-标准项目合规评估流程-审批";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID", delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
@@ -59,7 +59,13 @@ public class ApplyApplicantAfter implements TaskListener{
}else {
standName = "国外";
}
String prcName = standName+"-标准入库";
String standAllName = "";
if(object.getString("standYear") != null && !object.getString("standYear").equals("")){
standAllName = verifyObj(object.getString("standSortShow")) + " " + verifyObj(object.getString("standNumber")) + "-" + verifyObj(object.getString("standYear"));
}else {
standAllName = verifyObj(object.getString("standSort")) + " " + verifyObj(object.getString("standNumber"));
}
String prcName = standAllName+"-"+standName+"标准入库";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
@@ -96,6 +102,8 @@ public class ApplyApplicantAfter implements TaskListener{
busBean.save(busProcessNew);
}
}
}
private String verifyObj(String str){
return (str == null || str.equals("")) ? "" : str;
}
}
@@ -58,7 +58,13 @@ public class CountersignAfter implements TaskListener{
}else {
standName = "国外";
}
String prcName = standName+"-标准入库";
String standAllName = "";
if(object.getString("standYear") != null && !object.getString("standYear").equals("")){
standAllName = verifyObj(object.getString("standSortShow")) + " " + verifyObj(object.getString("standNumber")) + "-" + verifyObj(object.getString("standYear"));
}else {
standAllName = verifyObj(object.getString("standSort")) + " " + verifyObj(object.getString("standNumber"));
}
String prcName = standAllName+"-"+standName+"标准入库";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
@@ -94,6 +100,9 @@ public class CountersignAfter implements TaskListener{
busBean.save(busProcessNew);
}
}
}
private String verifyObj(String str){
return (str == null || str.equals("")) ? "" : str;
}
}
@@ -82,7 +82,13 @@ public class SLApplicantAfter implements TaskListener{
}else {
standName = "国外";
}
String prcName = standName+"-标准入库";
String standAllName = "";
if(object.getString("standYear") != null && !object.getString("standYear").equals("")){
standAllName = verifyObj(object.getString("standSortShow")) + " " + verifyObj(object.getString("standNumber")) + "-" + verifyObj(object.getString("standYear"));
}else {
standAllName = verifyObj(object.getString("standSort")) + " " + verifyObj(object.getString("standNumber"));
}
String prcName = standAllName+"-"+standName+"标准入库";
QueryWrapper queryWrapper2 = new QueryWrapper();
queryWrapper2.eq("PRC_ID",delegateTask.getProcessInstanceId());
BusProcessName one1 = busProcessNameService.getOne(queryWrapper2);
@@ -121,4 +127,7 @@ public class SLApplicantAfter implements TaskListener{
}
}
}
private String verifyObj(String str){
return (str == null || str.equals("")) ? "" : str;
}
}
@@ -54,12 +54,12 @@ public class SRPstartAfter implements TaskListener {
if(object.getString("signFlag").equals("1")){
delegateTask.setVariable("hqFlag",1);
if(StringUtils.isNotBlank(object.getString("zrUserId"))){
if(StringUtils.isNotBlank(object.getString("dockUser"))){
if(object.getString("zrUserId").contains(",")){
nextUserList = Arrays.asList(object.getString("zrUserId").split(","));
if(object.getString("dockUser").contains(",")){
nextUserList = Arrays.asList(object.getString("dockUser").split(","));
}else {
nextUserList.add(object.getString("zrUserId"));
nextUserList.add(object.getString("dockUser"));
}
// 配置多实例
delegateTask.setVariable("hqUserList",nextUserList);