From 6df10430c0c254939dcaef9e91bbd58f1f3c9f3c Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 13 Sep 2024 20:18:07 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AF=BC=E5=85=A5=E4=BC=81=E6=A0=87?= =?UTF-8?q?=E5=BC=95=E7=94=A8=E6=A0=87=E5=87=86=E8=87=AA=E5=8A=A8=E5=B8=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/LawsCommonServiceImpl.java | 8 +++- .../modules/laws/common/util/ImportUtil.java | 42 ++++++++++++++----- 2 files changed, 39 insertions(+), 11 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 c32fd67a..2866b2dc 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 @@ -1720,10 +1720,16 @@ public class LawsCommonServiceImpl implements ILawsCommonService { headerList.remove(headerList.size() - 1); headerList.add(inspectContentTag); } + + List list = lawsDomesticStandardService.list(); + List standardNoList = list.stream().map(LawsDomesticStandard::getStandardNumber) + .filter(e -> !e.contains("-") & !e.contains("—")) + .collect(Collectors.toList()); // 获取错误信息 errMsgList = importUtil.validExcelData(sheet, headerList, fileMap, insertDataList, treeNodeMap, treeNodePathMap, - sysDeaprtMap, sysDepartPathMap); + sysDeaprtMap, sysDepartPathMap, + standardNoList); } return errMsgList; } diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java b/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java index eff4fb78..3a5e6ae2 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/util/ImportUtil.java @@ -77,7 +77,8 @@ public class ImportUtil { Map> treeNodeMap, Map treeNodePathMap, Map> sysDepartMap, - Map sysDepartPathMap + Map sysDepartPathMap, + List fbStandardNoList ) { List errMsgList = new ArrayList<>(); Map keyMap = new HashMap<>(); @@ -273,7 +274,6 @@ public class ImportUtil { cellValue = this.convertDictValue(tag.getDictField(), cellValue); } } - // 组织机构 if (FieldShowTypeEnum.SINGLE_ORGANIZATION_DIALOG.getValue().equals(tag.getFieldShowType()) || FieldShowTypeEnum.MULTI_ORGANIZATION_DIALOG.getValue().equals(tag.getFieldShowType())) { @@ -392,14 +392,8 @@ public class ImportUtil { // 企标稽查内容文件导入 if (FieldCommon.REFERENCE_STANDARD.equals(tag.getDbFieldName()) && TableNameEnum.ENTERPRISE_STANDARDS.getValue().equals(tag.getIsModel())) { -// if (!this.inspectContentFileValid(cellValue, fileMap)) { -// log.error("第" + row + "列" + tag.getDbFieldTxt() + "填写错误 "); -// errMsg.append("第").append(row).append("列").append(tag.getDbFieldTxt()).append("填写错误 "); -// } else { -// // 转为List -// // 将转好的值加入Map -// parameterMap.put(tag.getDbFieldName(), this.convertInspectContentFile(cellValue, fileMap)); -// } + // 将转好的值加入Map + parameterMap.put(FieldCommon.REFERENCE_STANDARD, this.convertReferenceStandard(cellValue, fbStandardNoList)); } } if (errMsg.toString().contains("列") || errMsg.toString().contains("重复") || errMsg.toString().contains("已存在")) { @@ -411,6 +405,34 @@ public class ImportUtil { return errMsgList; } + private String convertReferenceStandard(String cellValue, List fbStandardNoList) { + if (StrUtil.isBlank(cellValue)) { + return ""; + } + List standardNoList = new ArrayList<>(Arrays.asList(cellValue.split(","))); + Iterator iterator = standardNoList.iterator(); + List addStandardNoList = new ArrayList<>(); + while (iterator.hasNext()) { + String standardNo = iterator.next(); + if (standardNo.contains("-") || standardNo.contains("—")) { + continue; + } + List match = fbStandardNoList.stream().filter(s -> s.contains(standardNo)).collect(Collectors.toList()); + if (!match.isEmpty()) { + iterator.remove(); + addStandardNoList.addAll(match); + } + } + String result = String.join(",", standardNoList); + if (!addStandardNoList.isEmpty()) { + if (!result.isEmpty()) { + result += ","; + } + result += String.join(",", addStandardNoList); + } + return result; + } + // 体系校验 public boolean standardSystemValid(String cellValue, Map> treeNodeMap, Map treeNodePathMap) { String[] cellValues = cellValue.split(",");