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 35810970..52cfd7df 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 @@ -669,9 +669,16 @@ public class LawsCommonServiceImpl implements ILawsCommonService { // 企标需要自动拼装标准号 if (module.equals(TableNameEnum.ENTERPRISE_STANDARDS.getValue()) && null == parameterMap.get(FieldCommon.STANDARD_NUMBER)) { - // 生成企标编号 - String standardNumber = esUtil.generateStandardNumber(parameterMap); - String standardNumberTmp = EnterpriseStandardUtil.getSequenceNoFromStandardNo(standardNumber); + String standardNumberTmp = (String) parameterMap.get(FieldCommon.STANDARD_NUMBER_TEMP); + String standardNumber = ""; + if (StringUtils.isNotBlank(standardNumberTmp)) { + // 组合企标编号 + standardNumber = esUtil.combineStandardNumber(parameterMap); + } else { + // 生成企标编号 + standardNumber = esUtil.generateStandardNumber(parameterMap); + standardNumberTmp = EnterpriseStandardUtil.getSequenceNoFromStandardNo(standardNumber); + } parameterMap.put(FieldCommon.STANDARD_NUMBER, standardNumber); parameterMap.put(FieldCommon.STANDARD_NUMBER_TEMP, standardNumberTmp); } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java index 74158b8a..5c073b3a 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java @@ -115,6 +115,30 @@ public class EnterpriseStandardUtil { return standardNumber; } + /** + * 组合企标编号 + * + * @param parameterMap + * @return + */ + public String combineStandardNumber(Map parameterMap) { + // 标准类别 + String esCodeDictValue = (String) parameterMap.get(FieldCommon.ENTERPRISE_STANDARD_CODE); + String esNameCodeDictValue = (String) parameterMap.get(FieldCommon.ENTERPRISE_NAME_CODE); + String categoryCodeDictValue = (String) parameterMap.get(FieldCommon.STANDARD_CATEGORY_CODE); + String sequenceNumber = (String) parameterMap.get(FieldCommon.STANDARD_NUMBER_TEMP); + String yearNumber = (String) parameterMap.get(FieldCommon.YEAR_NUMBER); + + String esCode = this.transEsCode(esCodeDictValue); + String esNameCode = this.transEsNameCode(esNameCodeDictValue); + String categoryCode = this.transCategoryCode(categoryCodeDictValue); + + // 最后生成的企标编号 + String standardNumber = esCode + "/" + esNameCode + " " + categoryCode + sequenceNumber + "-" + yearNumber; + log.info("组合企标标准号:{}", standardNumber); + return standardNumber; + } + /** * 改变企标编号的年代号 *