From 6027b0d691e1fdd8f8df0970b90b085fb9c718f3 Mon Sep 17 00:00:00 2001 From: wangzhijiang <1358525938@qq.com> Date: Sun, 4 Feb 2024 17:57:23 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=81=E6=A0=87=E5=88=B6=E4=BF=AE=E8=AE=A2-?= =?UTF-8?q?=E6=8A=80=E6=9C=AF=E6=A0=87=E5=87=86=E6=B5=81=E7=A8=8B-?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=9B=BE=E3=80=81=E6=B5=81=E7=A8=8B=E5=8E=86?= =?UTF-8?q?=E5=8F=B2=E6=94=B9=E9=80=A0=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bussLibrary/BussLibrary10After.java | 66 +++++++++++++ .../bussLibrary/BussLibrary11After.java | 66 +++++++++++++ .../bussLibrary/BussLibrary2After.java | 38 ++++++++ .../bussLibrary/BussLibrary3After.java | 37 ++++++++ .../bussLibrary/BussLibrary4After.java | 87 ++++++++++++++++++ .../bussLibrary/BussLibrary5After.java | 45 +++++++-- .../bussLibrary/BussLibrary6After.java | 37 ++++++++ .../bussLibrary/BussLibrary7After.java | 75 +++++++++++++-- .../bussLibrary/BussLibrary8After.java | 67 ++++++++++++++ .../bussLibrary/BussLibrary9After.java | 92 +++++++++++++++++++ .../bussLibrary/BussLibraryC3After.java | 39 ++++++++ .../bussLibrary/BussLibraryC6After.java | 36 ++++++++ 12 files changed, 669 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary10After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary10After.java index 74da9b56..9afbbeb2 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary10After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary10After.java @@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.util.ArrayList; @@ -94,9 +99,70 @@ public class BussLibrary10After implements TaskListener{ }else { throw new ActivitiException("1#2 提交OR驳回参数不存在"); } + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + + Integer fzrFlag = (Integer) delegateTask.getVariable("fzrFlag"); + if (fzrFlag == 0) { + String zhrUserId = json.getString("zhrUserId"); + // 如果存在 批准 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, zhrUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 批准 + BusProcessHistory pzBph = new BusProcessHistory(); + pzBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + pzBph.setUserId(zhrUserId); + pzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue()); + pzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + pzBph.setIsSub("2"); + pzBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue()); + pzBph.setOrderNum(orderNum + 1); + bphList.add(pzBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size()); + } + } else if (fzrFlag == 1) { + String cxdUserId = (String) delegateTask.getVariable("cxdUserId"); + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cxdUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 重新技术委员会评审、评审意见修改 + BusProcessHistory psyjxgBph = new BusProcessHistory(); + psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + psyjxgBph.setUserId(cxdUserId); + psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + psyjxgBph.setIsSub("2"); + psyjxgBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue()); + psyjxgBph.setOrderNum(orderNum + 1); + bphList.add(psyjxgBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size()); + } + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary11After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary11After.java index 904b7fd7..ae5a728f 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary11After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary11After.java @@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.util.ArrayList; @@ -95,9 +100,70 @@ public class BussLibrary11After implements TaskListener{ }else { throw new ActivitiException("1#2 提交OR驳回参数不存在"); } + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + + Integer zrFlag = (Integer) delegateTask.getVariable("zrFlag"); + if (zrFlag == 0) { + String pxUserId = json.getString("pxUserId"); + // 如果存在 批准 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, pxUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY12.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 培训 + BusProcessHistory pxBph = new BusProcessHistory(); + pxBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + pxBph.setUserId(pxUserId); + pxBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY12.getValue()); + pxBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + pxBph.setIsSub("2"); + pxBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue()); + pxBph.setOrderNum(orderNum + 1); + bphList.add(pxBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size()); + } + } else if (zrFlag == 1) { + String cxdUserId = (String) delegateTask.getVariable("cxdUserId"); + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cxdUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 重新技术委员会评审、评审意见修改 + BusProcessHistory psyjxgBph = new BusProcessHistory(); + psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + psyjxgBph.setUserId(cxdUserId); + psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + psyjxgBph.setIsSub("2"); + psyjxgBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY11.getValue()); + psyjxgBph.setOrderNum(orderNum + 1); + bphList.add(psyjxgBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size()); + } + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary2After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary2After.java index 858ad26e..a8d3f929 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary2After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary2After.java @@ -4,16 +4,22 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; +import com.ydw.bat.wkflow.util.enums.StandardCommentNewProcessNodeKeyEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; @@ -107,9 +113,41 @@ public class BussLibrary2After implements TaskListener{ busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + String hzUserId = json.getString("hzUserId"); + + // 如果存在企标编写汇总节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,hzUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 企标编写汇总 + BusProcessHistory qbbxhzBph = new BusProcessHistory(); + qbbxhzBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + qbbxhzBph.setUserId(hzUserId); + qbbxhzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getValue()); + qbbxhzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + qbbxhzBph.setIsSub("2"); + qbbxhzBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue()); + qbbxhzBph.setOrderNum(orderNum + 1); + bphList.add(qbbxhzBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary3After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary3After.java index 4ad95eaa..d57a4a94 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary3After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary3After.java @@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; @@ -95,9 +100,41 @@ public class BussLibrary3After implements TaskListener{ busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + String bzhUserId = json.getString("bzhUserId"); + + // 如果存在标准化初审节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,bzhUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 标准化初审 + BusProcessHistory bzhcsBph = new BusProcessHistory(); + bzhcsBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + bzhcsBph.setUserId(bzhUserId); + bzhcsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue()); + bzhcsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + bzhcsBph.setIsSub("2"); + bzhcsBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY3.getValue()); + bzhcsBph.setOrderNum(orderNum + 1); + bphList.add(bzhcsBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary4After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary4After.java index 617f8c46..704b7bad 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary4After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary4After.java @@ -3,21 +3,27 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.UUID; /** * 初审,标准化员审批后 @@ -123,9 +129,90 @@ public class BussLibrary4After implements TaskListener{ }else { throw new ActivitiException("1#2 提交OR驳回参数不存在"); } + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + + Integer bzhFlag = (Integer) delegateTask.getVariable("bzhFlag"); + if (bzhFlag == 1) { + String chzUserId = json.getString("chzUserId"); + + // 如果存在 重新企标编写汇总 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,chzUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C3.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 重新企标编写汇总 + BusProcessHistory cxqbbzhzBph = new BusProcessHistory(); + cxqbbzhzBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + cxqbbzhzBph.setUserId(chzUserId); + cxqbbzhzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C3.getValue()); + cxqbbzhzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + cxqbbzhzBph.setIsSub("2"); + cxqbbzhzBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue()); + cxqbbzhzBph.setOrderNum(orderNum + 1); + + bphList.add(cxqbbzhzBph); + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } else { + // 征求意见 + List hqUserIdList = Arrays.asList(json.getString("hqUserId").split(",")); + if (CollectionUtils.isNotEmpty(hqUserIdList)) { + List bphList = new ArrayList<>(); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue()); + String zqyjPBphId = UUID.randomUUID().toString(); + for (String userId : hqUserIdList) { + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,userId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + BusProcessHistory zqyjBph = new BusProcessHistory(); + zqyjBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + zqyjBph.setUserId(userId); + zqyjBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue()); + zqyjBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + zqyjBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getOrderNum()); + zqyjBph.setIsSub("2"); + zqyjBph.setIsMany("1"); + zqyjBph.setManyPId(zqyjPBphId); + zqyjBph.setOrderNum(orderNum + 1); + bphList.add(zqyjBph); + } + } + + if (CollectionUtils.isNotEmpty(bphList)) { + BusProcessHistory zqyjPBph = new BusProcessHistory(); + zqyjPBph.setId(zqyjPBphId); + zqyjPBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + zqyjPBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue()); + zqyjPBph.setFlowType(FlowTypeEnum.BZZQYJLC.getValue()); + zqyjPBph.setOrderNum(BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getOrderNum()); + zqyjPBph.setIsSub("2"); + zqyjPBph.setIsMany("1"); + zqyjPBph.setOrderNum(orderNum + 1); + bphList.add(zqyjPBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary5After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary5After.java index 33474e0b..916193f1 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary5After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary5After.java @@ -4,18 +4,15 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessEvaluationHis; -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.IBusProcessEvaluationHisService; -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.business_main.datas.entity.*; +import com.ydw.bat.wkflow.business_main.datas.service.*; import com.ydw.bat.wkflow.util.SpringContextUtil; +import com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; @@ -119,9 +116,41 @@ public class BussLibrary5After implements TaskListener{ busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + String xdUserId = json.getString("xdUserId"); + + // 如果存在 技术委员会评审、评审意见修改 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,xdUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 技术委员会评审、评审意见修改 + BusProcessHistory psyjxgBph = new BusProcessHistory(); + psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + psyjxgBph.setUserId(xdUserId); + psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getValue()); + psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + psyjxgBph.setIsSub("2"); + psyjxgBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY5.getValue()); + psyjxgBph.setOrderNum(orderNum + 1); + bphList.add(psyjxgBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary6After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary6After.java index f18a6246..029454e5 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary6After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary6After.java @@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.util.ArrayList; @@ -100,6 +105,7 @@ public class BussLibrary6After implements TaskListener{ busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } + this.addBusProcessHistory(object,delegateTask); // 评分存储 BussUtils.evalSave(delegateTask, object, prcName, delegateTask.getAssignee()); } @@ -107,4 +113,35 @@ public class BussLibrary6After implements TaskListener{ private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + String fggcsUserId = json.getString("fggcsUserId"); + + // 如果存在 技术委员会评审、评审意见修改 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,fggcsUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 标准化复审 + BusProcessHistory hzhfsBph = new BusProcessHistory(); + hzhfsBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + hzhfsBph.setUserId(fggcsUserId); + hzhfsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue()); + hzhfsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + hzhfsBph.setIsSub("2"); + hzhfsBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY6.getValue()); + hzhfsBph.setOrderNum(orderNum + 1); + bphList.add(hzhfsBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary7After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary7After.java index 79b2e41a..c854d921 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary7After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary7After.java @@ -4,18 +4,15 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessEvaluationHis; -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.IBusProcessEvaluationHisService; -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.business_main.datas.entity.*; +import com.ydw.bat.wkflow.business_main.datas.service.*; import com.ydw.bat.wkflow.util.SpringContextUtil; +import com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; @@ -118,6 +115,8 @@ public class BussLibrary7After implements TaskListener{ throw new ActivitiException("1#2 提交OR驳回参数不存在"); } + this.addBusProcessHistory(object,delegateTask); + // 存储当前节点意见 // BusProcessNew busProcessNew = new BusProcessNew(); // busProcessNew.setMsgType("clause"); @@ -154,4 +153,64 @@ public class BussLibrary7After implements TaskListener{ private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + + Integer fs7Flag = (Integer) delegateTask.getVariable("fs7Flag"); + if (fs7Flag == 0) { + String jsfzrUserId = json.getString("jsfzrUserId"); + // 如果存在 起草单位高级经理审核 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,jsfzrUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 起草单位高级经理审核 + BusProcessHistory qcdwgjjlshBph = new BusProcessHistory(); + qcdwgjjlshBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + qcdwgjjlshBph.setUserId(jsfzrUserId); + qcdwgjjlshBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue()); + qcdwgjjlshBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + qcdwgjjlshBph.setIsSub("2"); + qcdwgjjlshBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue()); + qcdwgjjlshBph.setOrderNum(orderNum + 1); + bphList.add(qcdwgjjlshBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + }else { + String cxdUserId = (String) delegateTask.getVariable("cxdUserId"); + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,cxdUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 重新技术委员会评审、评审意见修改 + BusProcessHistory psyjxgBph = new BusProcessHistory(); + psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + psyjxgBph.setUserId(cxdUserId); + psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + psyjxgBph.setIsSub("2"); + psyjxgBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue()); + psyjxgBph.setOrderNum(orderNum + 1); + bphList.add(psyjxgBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary8After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary8After.java index 003e3f53..d853a8e8 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary8After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary8After.java @@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.util.ArrayList; @@ -95,9 +100,71 @@ public class BussLibrary8After implements TaskListener{ }else { throw new ActivitiException("1#2 提交OR驳回参数不存在"); } + + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + + Integer jsfzrFlag = (Integer) delegateTask.getVariable("jsfzrFlag"); + if (jsfzrFlag == 0) { + String bzUserId = json.getString("bzUserId"); + // 如果存在 标准法规部高级经理审核 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,bzUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 标准法规部高级经理审核 + BusProcessHistory bzfgbgjjlshBph = new BusProcessHistory(); + bzfgbgjjlshBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + bzfgbgjjlshBph.setUserId(bzUserId); + bzfgbgjjlshBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue()); + bzfgbgjjlshBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + bzfgbgjjlshBph.setIsSub("2"); + bzfgbgjjlshBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue()); + bzfgbgjjlshBph.setOrderNum(orderNum + 1); + bphList.add(bzfgbgjjlshBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + }else { + String cxdUserId = (String) delegateTask.getVariable("cxdUserId"); + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,cxdUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 重新技术委员会评审、评审意见修改 + BusProcessHistory psyjxgBph = new BusProcessHistory(); + psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + psyjxgBph.setUserId(cxdUserId); + psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + psyjxgBph.setIsSub("2"); + psyjxgBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY8.getValue()); + psyjxgBph.setOrderNum(orderNum + 1); + bphList.add(psyjxgBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary9After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary9After.java index 503b9519..91af693e 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary9After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibrary9After.java @@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.util.ArrayList; @@ -149,9 +154,96 @@ public class BussLibrary9After implements TaskListener{ }else { throw new ActivitiException("1#2 提交OR驳回参数不存在"); } + this.addBusProcessHistory(object,delegateTask); } private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + + Integer bzFlag = (Integer) delegateTask.getVariable("bzFlag"); + if (bzFlag == 0) { + String fzrUserId = json.getString("fzrUserId"); + // 如果存在 审定-起草单位中心主任 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, fzrUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 审定-起草单位中心主任 + BusProcessHistory sdBph = new BusProcessHistory(); + sdBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + sdBph.setUserId(fzrUserId); + sdBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY10.getValue()); + sdBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + sdBph.setIsSub("2"); + sdBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue()); + sdBph.setOrderNum(orderNum + 1); + bphList.add(sdBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size()); + } + } else if (bzFlag == 1) { + String cxdUserId = (String) delegateTask.getVariable("cxdUserId"); + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cxdUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 重新技术委员会评审、评审意见修改 + BusProcessHistory psyjxgBph = new BusProcessHistory(); + psyjxgBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + psyjxgBph.setUserId(cxdUserId); + psyjxgBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + psyjxgBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + psyjxgBph.setIsSub("2"); + psyjxgBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue()); + psyjxgBph.setOrderNum(orderNum + 1); + bphList.add(psyjxgBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size()); + } + } else if (bzFlag == 2) { + String cfqUserId = (String) delegateTask.getVariable("cfqUserId"); + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId, delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId, cfqUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 重新起草 + BusProcessHistory cxqcBph = new BusProcessHistory(); + cxqcBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + cxqcBph.setUserId(cfqUserId); + cxqcBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY_C1.getValue()); + cxqcBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + cxqcBph.setIsSub("2"); + cxqcBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(), BussLibraryNodeKeyEnum.BUSS_LIBRARY9.getValue()); + cxqcBph.setOrderNum(orderNum + 1); + bphList.add(cxqcBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(), orderNum + 1, bphList.size()); + } + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC3After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC3After.java index 68519ec6..51db3b9f 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC3After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC3After.java @@ -3,16 +3,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; @@ -100,9 +105,43 @@ public class BussLibraryC3After implements TaskListener { busProcessNewNext.setPrcName(prcName); busBean.save(busProcessNewNext); } + + this.addBusProcessHistory(objectNew,delegateTask); } private String verifyObj(String str) { return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + String bzhUserId = json.getString("bzhUserId"); + + // 如果存在标准化初审节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,bzhUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 标准化初审 + BusProcessHistory pzBph = new BusProcessHistory(); + pzBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + pzBph.setUserId(bzhUserId); + pzBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY4.getValue()); + pzBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + pzBph.setIsSub("2"); + pzBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY_C3.getValue()); + pzBph.setOrderNum(orderNum + 1); + + bphList.add(pzBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC6After.java b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC6After.java index c29e14cb..98e0616d 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC6After.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/bussLibrary/BussLibraryC6After.java @@ -2,16 +2,21 @@ package com.ydw.bat.wkflow.listener.bussLibrary; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessHistory; 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.IBusProcessHistoryService; 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 com.ydw.bat.wkflow.util.enums.BussLibraryNodeKeyEnum; +import com.ydw.bat.wkflow.util.enums.FlowTypeEnum; import org.activiti.engine.ActivitiException; import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.TaskListener; +import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; @@ -113,4 +118,35 @@ public class BussLibraryC6After implements TaskListener{ private String verifyObj(String str){ return (str == null || str.equals("")) ? "" : str; } + + public void addBusProcessHistory(JSONObject json,DelegateTask delegateTask) { + IBusProcessHistoryService bphService = SpringContextUtil.getBean(IBusProcessHistoryService.class); + String fggcsUserId = json.getString("fggcsUserId"); + + // 如果存在 技术委员会评审、评审意见修改 节点的数据,taskId为空。 不用添加,否则需要添加。 + QueryWrapper bphQueryWrap = new QueryWrapper<>(); + bphQueryWrap.lambda().eq(BusProcessHistory::getActiProcInstId,delegateTask.getProcessInstanceId()); + bphQueryWrap.lambda().eq(BusProcessHistory::getUserId,fggcsUserId); + bphQueryWrap.lambda().eq(BusProcessHistory::getTaskKey, BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue()); + bphQueryWrap.lambda().isNull(BusProcessHistory::getTaskId); + + List busProcessHistoryList = bphService.list(bphQueryWrap); + if (CollectionUtils.isEmpty(busProcessHistoryList)) { + List bphList = new ArrayList<>(); + // 标准化复审 + BusProcessHistory hzhfsBph = new BusProcessHistory(); + hzhfsBph.setActiProcInstId(delegateTask.getProcessInstanceId()); + hzhfsBph.setUserId(fggcsUserId); + hzhfsBph.setTaskKey(BussLibraryNodeKeyEnum.BUSS_LIBRARY7.getValue()); + hzhfsBph.setFlowType(FlowTypeEnum.QBZXD_JSBZ.getValue()); + hzhfsBph.setIsSub("2"); + hzhfsBph.setIsMany("2"); + int orderNum = bphService.getMaxOrderNum(delegateTask.getProcessInstanceId(),BussLibraryNodeKeyEnum.BUSS_LIBRARY_C6.getValue()); + hzhfsBph.setOrderNum(orderNum + 1); + bphList.add(hzhfsBph); + + bphService.insertBatch(bphList); + bphService.updateOrderNum(delegateTask.getProcessInstanceId(),orderNum + 1,bphList.size()); + } + } }