fix: 81954 年度计划--修订--归档节点需要校验入库的企标编号的唯一性
This commit is contained in:
+27
-9
@@ -1,27 +1,33 @@
|
||||
package com.jero.modules.activiti.process.esAnnualInit.listener;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.activiti.entity.ProcessAll;
|
||||
import com.jero.modules.activiti.enums.ProcessStatusEnum;
|
||||
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
||||
import com.jero.modules.activiti.process.esAnnualInit.entity.ProcessEsAnnualInit;
|
||||
import com.jero.modules.activiti.process.esAnnualInit.service.impl.ProcessEsAnnualInitServiceImpl;
|
||||
import com.jero.modules.activiti.process.esInitChange.entity.ProcessEsInitChange;
|
||||
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPRevisionType;
|
||||
import com.jero.modules.activiti.process.esRevision.entity.ProcessEsRevision;
|
||||
import com.jero.modules.activiti.process.esRevision.entity.vo.ESRevisionDataVO;
|
||||
import com.jero.modules.activiti.process.esRevision.service.EsRevisionService;
|
||||
import com.jero.modules.activiti.service.ProcessAllService;
|
||||
import com.jero.modules.laws.common.constant.FieldCommon;
|
||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardPlan;
|
||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService;
|
||||
import com.jero.modules.laws.enterprise.util.BeanCopyUtils;
|
||||
import com.jero.modules.laws.enterprise.util.EnterpriseStandardUtil;
|
||||
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.activiti.engine.delegate.DelegateExecution;
|
||||
import org.activiti.engine.delegate.ExecutionListener;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author: Mzaxd
|
||||
@@ -43,6 +49,9 @@ public class ProcessESAnnualInitEndListener implements ExecutionListener {
|
||||
@Resource
|
||||
private EnterpriseStandardUtil esUtil;
|
||||
|
||||
@Resource
|
||||
private ProcessAllService processAllService;
|
||||
|
||||
/**
|
||||
* 流程结束之后需要把数据存入企标计划数据库
|
||||
*
|
||||
@@ -77,6 +86,20 @@ public class ProcessESAnnualInitEndListener implements ExecutionListener {
|
||||
// 获取当前年份
|
||||
Calendar date = Calendar.getInstance();
|
||||
String curYearNumber = String.valueOf(date.get(Calendar.YEAR));
|
||||
List<EnterpriseStandardPlan> needValidList = new ArrayList<>();
|
||||
for (EnterpriseStandardPlan esp : enterpriseStandardPlans) {
|
||||
// 修订只改年代号
|
||||
if (esp.getApplicationCategory().equals(ESPRevisionType.MODIFY.getValue())) {
|
||||
newStandardNumber = esUtil.changeStandardNumberYearNumber(esp.getOriginEnStandardNo(), curYearNumber);
|
||||
esp.setNewEnStandardNo(newStandardNumber);
|
||||
needValidList.add(esp);
|
||||
}
|
||||
}
|
||||
List<String> duplicateStandardNumbers = esUtil.verifyEsNumberByPlans(needValidList);
|
||||
if (duplicateStandardNumbers != null && !duplicateStandardNumbers.isEmpty()) {
|
||||
throw new JeroBootException("原企标编号" + String.join(",", duplicateStandardNumbers) + "修订后,与已存在的企标编号重复,请删除后重新提交");
|
||||
}
|
||||
// 判断修订的新标准号是否有效
|
||||
for (EnterpriseStandardPlan esp : enterpriseStandardPlans) {
|
||||
// 制定生成新企标编号
|
||||
if (esp.getApplicationCategory().equals(ESPRevisionType.ENACT.getValue())) {
|
||||
@@ -87,11 +110,6 @@ public class ProcessESAnnualInitEndListener implements ExecutionListener {
|
||||
newStandardNumber = esUtil.generateStandardNumber(map);
|
||||
esp.setNewEnStandardNo(newStandardNumber);
|
||||
}
|
||||
// 修订只改年代号
|
||||
if (esp.getApplicationCategory().equals(ESPRevisionType.MODIFY.getValue())) {
|
||||
newStandardNumber = esUtil.changeStandardNumberYearNumber(esp.getOriginEnStandardNo(), curYearNumber);
|
||||
esp.setNewEnStandardNo(newStandardNumber);
|
||||
}
|
||||
espService.save(esp);
|
||||
log.info("数据存入企标计划数据库");
|
||||
ESRevisionDataVO revisionDataVO = new ESRevisionDataVO();
|
||||
|
||||
+16
-9
@@ -1,6 +1,7 @@
|
||||
package com.jero.modules.activiti.process.esAnnualReport.listener;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.modules.activiti.process.esAnnualReport.entity.ProcessEsAnnualReport;
|
||||
import com.jero.modules.activiti.process.esAnnualReport.service.impl.ProcessEsAnnualReportServiceImpl;
|
||||
import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPRevisionType;
|
||||
@@ -18,10 +19,7 @@ import org.activiti.engine.delegate.ExecutionListener;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* @author: Mzaxd
|
||||
@@ -73,6 +71,20 @@ public class ProcessESAnnualReportEndListener implements ExecutionListener {
|
||||
// 获取当前年份
|
||||
Calendar date = Calendar.getInstance();
|
||||
String curYearNumber = String.valueOf(date.get(Calendar.YEAR));
|
||||
List<EnterpriseStandardPlan> needValidList = new ArrayList<>();
|
||||
for (EnterpriseStandardPlan esp : enterpriseStandardPlans) {
|
||||
// 修订只改年代号
|
||||
if (esp.getApplicationCategory().equals(ESPRevisionType.MODIFY.getValue())) {
|
||||
newStandardNumber = esUtil.changeStandardNumberYearNumber(esp.getOriginEnStandardNo(), curYearNumber);
|
||||
esp.setNewEnStandardNo(newStandardNumber);
|
||||
needValidList.add(esp);
|
||||
}
|
||||
}
|
||||
List<String> duplicateStandardNumbers = esUtil.verifyEsNumberByPlans(needValidList);
|
||||
if (duplicateStandardNumbers != null && !duplicateStandardNumbers.isEmpty()) {
|
||||
throw new JeroBootException("原企标编号" + String.join(",", duplicateStandardNumbers) + "修订后,与已存在的企标编号重复,请删除后重新提交");
|
||||
}
|
||||
// 判断修订的新标准号是否有效
|
||||
for (EnterpriseStandardPlan esp : enterpriseStandardPlans) {
|
||||
// 制定生成新企标编号
|
||||
if (esp.getApplicationCategory().equals(ESPRevisionType.ENACT.getValue())) {
|
||||
@@ -83,11 +95,6 @@ public class ProcessESAnnualReportEndListener implements ExecutionListener {
|
||||
newStandardNumber = esUtil.generateStandardNumber(map);
|
||||
esp.setNewEnStandardNo(newStandardNumber);
|
||||
}
|
||||
// 修订只改年代号
|
||||
if (esp.getApplicationCategory().equals(ESPRevisionType.MODIFY.getValue())) {
|
||||
newStandardNumber = esUtil.changeStandardNumberYearNumber(esp.getOriginEnStandardNo(), curYearNumber);
|
||||
esp.setNewEnStandardNo(newStandardNumber);
|
||||
}
|
||||
espService.save(esp);
|
||||
log.info("数据存入企标计划数据库");
|
||||
ESRevisionDataVO revisionDataVO = new ESRevisionDataVO();
|
||||
|
||||
Reference in New Issue
Block a user