From 8ba58d07b874982ab2f773e7457369125cc437be Mon Sep 17 00:00:00 2001 From: caihaohan Date: Mon, 4 Mar 2024 09:53:10 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=A2=AB=E4=BB=A3=E6=9B=BF=E6=A0=87?= =?UTF-8?q?=E5=87=86=E8=87=AA=E5=8A=A8=E5=BA=9F=E6=AD=A2=E9=80=BB=E8=BE=91?= =?UTF-8?q?=E9=9C=80=E6=B1=82=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/LawsCommonServiceImpl.java | 27 +++++++++++++++---- .../service/ILawsReplacedStandardService.java | 7 +++++ .../impl/LawsReplacedStandardServiceImpl.java | 27 +++++++++---------- 3 files changed, 41 insertions(+), 20 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java index 4703ab1c..c8e9740a 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java @@ -17,6 +17,7 @@ import com.jero.common.exception.JeroBootException; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.MessageUtils; import com.jero.common.util.MinioUtil; +import com.jero.modules.activiti.process.common.enums.StandardStateEnum; import com.jero.modules.activiti.process.fb.service.IProcessFbStandardConsultationService; import com.jero.modules.laws.common.constant.FieldCommon; import com.jero.modules.laws.common.mapper.LawsCommonMapper; @@ -667,7 +668,7 @@ public class LawsCommonServiceImpl implements ILawsCommonService { parameterMap.put(FieldCommon.STANDARD_SYSTEM, ""); // 处理新增和编辑时的代替标准、引用标准 - processReplaced(parameterMap, standardNumber); + processReplaced(parameterMap, standardNumber, module); // 获取要操作的表名 String tableName = TableNameEnum.getTableName(module); @@ -819,7 +820,7 @@ public class LawsCommonServiceImpl implements ILawsCommonService { String standardNumber = singleStandard.getStandardNumber(); // 处理新增和编辑时的代替标准、引用标准 - processReplaced(parameterMap, standardNumber); + processReplaced(parameterMap, standardNumber, module); // 获取数据库里没修改的数据 Map oldDataMap = getByIdAndModule(id, module, "2", standardNumber); @@ -938,14 +939,30 @@ public class LawsCommonServiceImpl implements ILawsCommonService { * @Date: 2023/9/19 11:53 * @Description: 处理新增和编辑时的代替标准、引用标准 **/ - private void processReplaced(Map parameterMap, String standardNumber) { + private void processReplaced(Map parameterMap, String standardNumber, String module) { // 代替标准 String replacedStandard = (String) parameterMap.get(FieldCommon.REPLACED_STANDARD); + // 获取标准状态 + String standardState = (String) parameterMap.get(FieldCommon.STANDARD_STATE); + // 如果标准状态不是现行有效则不处理代替标准 + boolean replaceFlag = false; + if (StringUtils.isNotBlank(standardState)) { + // 企标需要自动拼装标准号 + if (module.equals(TableNameEnum.ENTERPRISE_STANDARDS.getValue())) { + if (standardState.equals(StandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue())) { + replaceFlag = true; + } + } else { + if (standardState.equals(OutStandardStateEnum.CURRENTLY_EFFECTIVE.getStateValue())) { + replaceFlag = true; + } + } + } // 先删除已经存储的关联 lawsReplacedStandardService.removeRelation(standardNumber, 1); if (StringUtils.isNotBlank(replacedStandard)) { // 再添加新的关联 - lawsReplacedStandardService.addRelation(replacedStandard, standardNumber, 1); + lawsReplacedStandardService.addRelationWithReplaceFlag(replacedStandard, standardNumber, 1, replaceFlag); /*parameterMap.put(FieldCommon.REPLACED_STANDARD, ""); parameterMap.put(FieldCommon.REPLACED_BY_STANDARD, "");*/ } @@ -955,7 +972,7 @@ public class LawsCommonServiceImpl implements ILawsCommonService { lawsReplacedStandardService.removeRelation(standardNumber, 2); if (StringUtils.isNotBlank(referenceStandard)) { // 再添加新的关联 - lawsReplacedStandardService.addRelation(referenceStandard, standardNumber, 2); + lawsReplacedStandardService.addRelationWithReplaceFlag(referenceStandard, standardNumber, 2, replaceFlag); /*parameterMap.put(FieldCommon.REFERENCE_STANDARD, ""); parameterMap.put(FieldCommon.REFERENCED_STANDARD, "");*/ } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsReplacedStandardService.java b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsReplacedStandardService.java index 9245faa8..f6d4a347 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsReplacedStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/standard/service/ILawsReplacedStandardService.java @@ -18,6 +18,13 @@ public interface ILawsReplacedStandardService extends IService replacedList = Arrays.asList(replaced.split(",")); - List replacedStandardList = new ArrayList<>(); - replacedList.forEach(e -> { - LawsReplacedStandard replacedStandard = new LawsReplacedStandard(); - replacedStandard.setReplaced(e); - replacedStandard.setReplacedBy(replacedBy); - replacedStandard.setType(type); - replacedStandardList.add(replacedStandard); - }); - saveBatch(replacedStandardList); + this.addRelationWithReplaceFlag(replaced, replacedBy, type, false); } /**