标准化活动入会流程v3

This commit is contained in:
Kevin
2021-10-25 15:35:36 +08:00
parent 5f6a72a2d7
commit abc898e14f
19 changed files with 133 additions and 72 deletions
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
@@ -11,13 +11,12 @@ import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
import com.ydw.bat.wkflow.util.SpringContextUtil; import com.ydw.bat.wkflow.util.SpringContextUtil;
import io.swagger.models.auth.In; import org.activiti.engine.ActivitiException;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
@@ -55,7 +54,27 @@ public class ChargeVerifyAfter implements TaskListener {
delegateTask.setVariable("chargePassList", objects); delegateTask.setVariable("chargePassList", objects);
} }
// 审批 // 审批
//防止重复审批同一对象
List<String> idList = new ArrayList<>();
if(null == delegateTask.getVariable("chargeIdList")){
delegateTask.setVariable("chargeIdList", idList);
}
int rat = 0;
idList = delegateTask.getVariable("chargeIdList",List.class);
if(!idList.isEmpty()){
for(String a : idList){
if(a.equals(object.getString("member"))){
rat = 1;
break;
}
}
}
if(rat == 0){
if("1".equals(object.getString("passFlag"))){//通过 if("1".equals(object.getString("passFlag"))){//通过
idList.add(object.getString("member"));
delegateTask.setVariable("chargeIdList",idList);
delegateTask.setVariable("pass2",1);//排他通道 delegateTask.setVariable("pass2",1);//排他通道
count = delegateTask.getVariable("chargePassCount",Integer.class); count = delegateTask.getVariable("chargePassCount",Integer.class);
delegateTask.setVariable("chargePassCount",count + 1); delegateTask.setVariable("chargePassCount",count + 1);
@@ -76,6 +95,9 @@ public class ChargeVerifyAfter implements TaskListener {
delegateTask.setVariable("member", nextUserList); delegateTask.setVariable("member", nextUserList);
}//驳回重写 }//驳回重写
} }
}else{
throw new ActivitiException("审批过了");
}
// 存储当前节点意见 // 存储当前节点意见
if (null != object.getString("commentText")) { if (null != object.getString("commentText")) {
QueryWrapper queryWrapper3 = new QueryWrapper(); QueryWrapper queryWrapper3 = new QueryWrapper();
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -10,12 +10,11 @@ import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
import com.ydw.bat.wkflow.util.SpringContextUtil; import com.ydw.bat.wkflow.util.SpringContextUtil;
import org.activiti.engine.ActivitiException;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
@@ -48,7 +47,27 @@ public class DirectorChooseAfter implements TaskListener {
delegateTask.setVariable("memberList", passMemberList); delegateTask.setVariable("memberList", passMemberList);
} }
//防止重复审批同一对象
List<String> idList = new ArrayList<>();
if(null == delegateTask.getVariable("memberIdList")){
delegateTask.setVariable("memberIdList", idList);
}
int rat = 0;
idList = delegateTask.getVariable("memberIdList",List.class);
if(!idList.isEmpty()){
for(String a : idList){
if(a.equals(object.getString("member"))){
rat = 1;
break;
}
}
}
if(rat == 0){
if("1".equals(object.getString("passFlag"))) { if("1".equals(object.getString("passFlag"))) {
idList.add(object.getString("member"));
delegateTask.setVariable("memberIdList",idList);
nextUserList.add(object.getString("memberId")); nextUserList.add(object.getString("memberId"));
if (null!=delegateTask.getVariable("memberList")) { if (null!=delegateTask.getVariable("memberList")) {
List<String> middle=delegateTask.getVariable("memberList",List.class); List<String> middle=delegateTask.getVariable("memberList",List.class);
@@ -59,6 +78,9 @@ public class DirectorChooseAfter implements TaskListener {
} }
delegateTask.setVariable("memberCount",delegateTask.getVariable("memberList",List.class).size()); delegateTask.setVariable("memberCount",delegateTask.getVariable("memberList",List.class).size());
} }
}else{
throw new ActivitiException("此对象已经审批过了");
}
// 存储当前节点意见 // 存储当前节点意见
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -15,7 +15,6 @@ import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -12,11 +12,9 @@ import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
import com.ydw.bat.wkflow.util.SpringContextUtil; import com.ydw.bat.wkflow.util.SpringContextUtil;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
/** /**
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -10,6 +10,7 @@ import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService;
import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService;
import com.ydw.bat.wkflow.business_main.datas.service.IDatasService; import com.ydw.bat.wkflow.business_main.datas.service.IDatasService;
import com.ydw.bat.wkflow.util.SpringContextUtil; import com.ydw.bat.wkflow.util.SpringContextUtil;
import org.activiti.engine.ActivitiException;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
@@ -44,8 +45,28 @@ public class ManageSignAfter implements TaskListener {
if(null == delegateTask.getVariable("managePassCount")){ if(null == delegateTask.getVariable("managePassCount")){
delegateTask.setVariable("managePassCount",count); delegateTask.setVariable("managePassCount",count);
} }
//999999999 //防止重复审批同一对象
List<String> idList = new ArrayList<>();
if(null == delegateTask.getVariable("manageIdList")){
delegateTask.setVariable("manageIdList", idList);
}
int rat = 0;
idList = delegateTask.getVariable("manageIdList",List.class);
if(!idList.isEmpty()){
for(String a : idList){
if(a.equals(object.getString("manageDepartment"))){
rat = 1;
break;
}
}
}
if(rat == 0){
if("1".equals(object.getString("passFlag"))) {//通过 if("1".equals(object.getString("passFlag"))) {//通过
idList.add(object.getString("manageDepartment"));
delegateTask.setVariable("manageIdList",idList);
count = delegateTask.getVariable("managePassCount",Integer.class); count = delegateTask.getVariable("managePassCount",Integer.class);
count++; count++;
delegateTask.setVariable("managePassCount",count); delegateTask.setVariable("managePassCount",count);
@@ -64,6 +85,9 @@ public class ManageSignAfter implements TaskListener {
delegateTask.setVariable("engineerSum", nextUserList); delegateTask.setVariable("engineerSum", nextUserList);
} }
} }
}else{
throw new ActivitiException("此对象已经审批过了");
}
// 存储当前节点意见 // 存储当前节点意见
if (null != object.getString("commentText")) { if (null != object.getString("commentText")) {
QueryWrapper queryWrapper3 = new QueryWrapper(); QueryWrapper queryWrapper3 = new QueryWrapper();
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -15,7 +15,6 @@ import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -14,10 +14,8 @@ import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -15,7 +15,6 @@ import org.activiti.engine.delegate.TaskListener;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
@@ -1,4 +1,4 @@
package com.ydw.bat.wkflow.listener.StandardApplyMeetProcess; package com.ydw.bat.wkflow.listener.standardApplyMeetProcess;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.delegate.TaskListener; import org.activiti.engine.delegate.TaskListener;