From 448d2d4365f8ef78c61c58ee8cab3a5bd9081824 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Thu, 28 Dec 2023 15:04:33 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=B9=B4=E5=BA=A6=E5=88=B6=E4=BF=AE?= =?UTF-8?q?=E8=AE=A2=E6=B5=81=E7=A8=8B=E7=BB=93=E6=9D=9F=E5=90=8E=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E5=8F=91=E8=B5=B7=E4=BC=81=E6=A0=87=E5=88=B6=E4=BF=AE?= =?UTF-8?q?=E8=AE=A2=E6=B5=81=E7=A8=8B=E7=94=9F=E6=88=90=E4=BC=81=E6=A0=87?= =?UTF-8?q?=E7=BC=96=E5=8F=B7BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProcessESAnnualInitEndListener.java | 36 ++++++++++++++++--- .../ProcessESAnnualReportEndListener.java | 35 +++++++++++++++--- .../ProcessEsAnnualReportServiceImpl.java | 2 +- .../service/impl/EsRevisionServiceImpl.java | 5 ++- .../util/EnterpriseStandardUtil.java | 14 ++++++++ 5 files changed, 82 insertions(+), 10 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/listener/ProcessESAnnualInitEndListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/listener/ProcessESAnnualInitEndListener.java index 23f3e1b2..0fb29208 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/listener/ProcessESAnnualInitEndListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualInit/listener/ProcessESAnnualInitEndListener.java @@ -3,19 +3,25 @@ package com.jero.modules.activiti.process.esAnnualInit.listener; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 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.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.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 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; /** * @author: Mzaxd @@ -34,6 +40,9 @@ public class ProcessESAnnualInitEndListener implements ExecutionListener { @Resource private EsRevisionService esRevisionService; + @Resource + private EnterpriseStandardUtil esUtil; + /** * 流程结束之后需要把数据存入企标计划数据库 * @@ -58,16 +67,35 @@ public class ProcessESAnnualInitEndListener implements ExecutionListener { for (EnterpriseStandardPlan esp : enterpriseStandardPlans) { esp.setApplicationCategory(esp.getProjectType()); } - espService.saveBatch(enterpriseStandardPlans); - log.info("数据存入企标计划数据库"); - // 自动发起制修订流程 - log.info("自动发起企标制修订流程"); + // 生成企标编号 + Map map = new HashMap<>(); + String newStandardNumber; + // 获取当前年份 + Calendar date = Calendar.getInstance(); + String curYearNumber = String.valueOf(date.get(Calendar.YEAR)); for (EnterpriseStandardPlan esp : enterpriseStandardPlans) { + // 制定生成新企标编号 + if (esp.getApplicationCategory().equals(ESPRevisionType.ENACT.getValue())) { + map.put(FieldCommon.ENTERPRISE_STANDARD_CODE, esp.getEnStandardCode()); + map.put(FieldCommon.ENTERPRISE_NAME_CODE, esp.getEnNameCode()); + map.put(FieldCommon.STANDARD_CATEGORY_CODE, esp.getStandardCategoryCode()); + map.put(FieldCommon.YEAR_NUMBER, curYearNumber); + 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(); ProcessEsRevision revision = new ProcessEsRevision(); revision.setEspId(esp.getId()); revisionDataVO.setData(revision); esRevisionService.autoStartProcess(revisionDataVO); + log.info("自动发起企标制修订流程"); } } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/listener/ProcessESAnnualReportEndListener.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/listener/ProcessESAnnualReportEndListener.java index 9f4b4499..e6a3741a 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/listener/ProcessESAnnualReportEndListener.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/listener/ProcessESAnnualReportEndListener.java @@ -7,16 +7,21 @@ import com.jero.modules.activiti.process.esInitChange.entity.enums.ESPRevisionTy 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.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 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; /** * @author: Mzaxd @@ -35,6 +40,9 @@ public class ProcessESAnnualReportEndListener implements ExecutionListener { @Resource private EsRevisionService esRevisionService; + @Resource + private EnterpriseStandardUtil esUtil; + /** * 流程结束之后需要把数据存入企标计划数据库 * @@ -59,16 +67,35 @@ public class ProcessESAnnualReportEndListener implements ExecutionListener { for (EnterpriseStandardPlan esp : enterpriseStandardPlans) { esp.setApplicationCategory(esp.getProjectType()); } - espService.saveBatch(enterpriseStandardPlans); - log.info("数据存入企标计划数据库"); - // 自动发起制修订流程 - log.info("自动发起企标制修订流程"); + // 生成企标编号 + Map map = new HashMap<>(); + String newStandardNumber; + // 获取当前年份 + Calendar date = Calendar.getInstance(); + String curYearNumber = String.valueOf(date.get(Calendar.YEAR)); for (EnterpriseStandardPlan esp : enterpriseStandardPlans) { + // 制定生成新企标编号 + if (esp.getApplicationCategory().equals(ESPRevisionType.ENACT.getValue())) { + map.put(FieldCommon.ENTERPRISE_STANDARD_CODE, esp.getEnStandardCode()); + map.put(FieldCommon.ENTERPRISE_NAME_CODE, esp.getEnNameCode()); + map.put(FieldCommon.STANDARD_CATEGORY_CODE, esp.getStandardCategoryCode()); + map.put(FieldCommon.YEAR_NUMBER, curYearNumber); + 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(); ProcessEsRevision revision = new ProcessEsRevision(); revision.setEspId(esp.getId()); revisionDataVO.setData(revision); esRevisionService.autoStartProcess(revisionDataVO); + log.info("自动发起企标制修订流程"); } } } diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java index 461b7e52..d9178284 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esAnnualReport/service/impl/ProcessEsAnnualReportServiceImpl.java @@ -413,7 +413,7 @@ public class ProcessEsAnnualReportServiceImpl extends ServiceImpl