diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct10After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct10After.java index d31b35b8..f1670e9d 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct10After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct10After.java @@ -14,6 +14,7 @@ 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.apache.commons.lang3.ObjectUtils; import java.util.ArrayList; import java.util.Arrays; @@ -62,20 +63,24 @@ public class BussLibraryProduct10After implements TaskListener{ if(StringUtils.isNotBlank(approvalOpinion)){ if ("0".equalsIgnoreCase(approvalOpinion)) { if(StringUtils.isNotBlank(object.getString("bussUser12"))){ + delegateTask.setVariable("approveUserThrough", (Integer) delegateTask.getVariable("approveUserThrough") + 1); + if (ObjectUtils.equals(delegateTask.getVariable("approveUserThrough"),delegateTask.getVariable("approveUserSize"))) { + if(object.getString("bussUser12").contains(",")){ + nextUserList = Arrays.asList(object.getString("bussUser12").split(",")); + }else { + nextUserList.add(object.getString("bussUser12")); + } - if(object.getString("bussUser12").contains(",")){ - nextUserList = Arrays.asList(object.getString("bussUser12").split(",")); - }else { - nextUserList.add(object.getString("bussUser12")); + BussUtils.approvalFunc2(delegateTask, object, prcName, nextUserList); + delegateTask.setVariable("bussUser12",object.getString("bussUser12")); + delegateTask.setVariable("bussP10Flag", 0); } - BussUtils.approvalFunc2(delegateTask, object, prcName, nextUserList); - delegateTask.setVariable("bussUser12",object.getString("bussUser12")); - delegateTask.setVariable("bussP10Flag", 0); }else { throw new ActivitiException("1#2总院技术管理中心主任/各事业部主管标准业务高级经理参数不存在,请配置相关用户"); } } else { + delegateTask.setVariable("approveReject",1); if(StringUtils.isNotBlank(object.getString("bussUser6"))) { BusProcessNew busProcessNew = new BusProcessNew(); busProcessNew.setMsgType("clause"); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct7After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct7After.java index 3e51a31a..4eb3f184 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct7After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct7After.java @@ -76,6 +76,10 @@ public class BussLibraryProduct7After implements TaskListener{ BussUtils.approvalFunc2(delegateTask, object, prcName, nextUserList); delegateTask.setVariable("bussP7Flag", 0); + + //设置下个审批节点操作人数量+通过人数量 + delegateTask.setVariable("auditUserSize",nextUserList.size()); + delegateTask.setVariable("auditUserThrough",0); }else { throw new ActivitiException("1#2总院标准法规部产品标准工程师/各事业部标准法规部参数不存在,请配置相关用户"); } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct8After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct8After.java index b9fcbe52..29078819 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct8After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibraryProduct/BussLibraryProduct8After.java @@ -14,10 +14,12 @@ 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.apache.commons.lang3.ObjectUtils; import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.Set; /** * 总院项目总工/各事业部整车所产品经理审核后 @@ -62,23 +64,31 @@ public class BussLibraryProduct8After implements TaskListener{ if(StringUtils.isNotBlank(approvalOpinion)){ if ("0".equalsIgnoreCase(approvalOpinion)) { if(StringUtils.isNotBlank(object.getString("bussUser10"))){ + delegateTask.setVariable("auditUserThrough", (Integer) delegateTask.getVariable("auditUserThrough") + 1); + if (ObjectUtils.equals(delegateTask.getVariable("auditUserSize"),delegateTask.getVariable("auditUserThrough"))) { + if(object.getString("bussUser10").contains(",")){ + nextUserList = Arrays.asList(object.getString("bussUser10").split(",")); + }else { + nextUserList.add(object.getString("bussUser10")); + } - if(object.getString("bussUser10").contains(",")){ - nextUserList = Arrays.asList(object.getString("bussUser10").split(",")); - }else { - nextUserList.add(object.getString("bussUser10")); + // 配置多实例 + delegateTask.setVariable("bussUser10List",nextUserList); + delegateTask.addCandidateUsers(nextUserList); + + BussUtils.approvalFunc2(delegateTask, object, prcName, nextUserList); + delegateTask.setVariable("bussP8Flag", 0); + + //设置下个审定节点操作人数量+通过人数量 + delegateTask.setVariable("approveUserSize",nextUserList.size()); + delegateTask.setVariable("approveUserThrough",0); } - // 配置多实例 - delegateTask.setVariable("bussUser10List",nextUserList); - delegateTask.addCandidateUsers(nextUserList); - - BussUtils.approvalFunc2(delegateTask, object, prcName, nextUserList); - delegateTask.setVariable("bussP8Flag", 0); }else { throw new ActivitiException("1#2总院标准法规部高级经理/各事业部标准业务/认证业务经理参数不存在,请配置相关用户"); } } else { + delegateTask.setVariable("auditReject",1); if(StringUtils.isNotBlank(object.getString("bussUser6"))) { BusProcessNew busProcessNew = new BusProcessNew(); busProcessNew.setMsgType("clause"); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java index 0638286d..9b0ebf05 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java @@ -129,6 +129,9 @@ public class DeptApplayAfter implements TaskListener{ delegateTask.setVariable("lastCount",delegateTask.getVariable("lastCount",Integer.class)+1); } } else { + if (null==delegateTask.getVariable("lastCount")){ + delegateTask.setVariable("lastCount",0); + } delegateTask.setVariable("bzFlag", 2); // prcName=prcName+"-填写解读分析"; JSONObject object1=object.getJSONObject("RollBack"); @@ -172,7 +175,20 @@ public class DeptApplayAfter implements TaskListener{ updataWapper.eq("TASK_ID",delegateTask.getId()); updataWapper.eq("P_ID",delegateTask.getProcessInstanceId()); busBean.update(busProcessNew,updataWapper); - if (delegateTask.getVariable("bzFlag").equals("2")) { + 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); + busProcessNewNext.setPrcName(prcName); + busBean.save(busProcessNewNext); + } + }else { QueryWrapper queryWrapper1 = new QueryWrapper(); queryWrapper1.eq("TASK_ID",delegateTask.getId()); BusProcessNew one2 = busBean.getOne(queryWrapper1); @@ -181,5 +197,8 @@ public class DeptApplayAfter implements TaskListener{ busBean.saveOrUpdate(one2); } } + /*if (delegateTask.getVariable("bzFlag").equals("2")) { + + }*/ } }