From f37d65bcd0a4eaea820cd32e1e4f933ce9f725a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Mon, 9 Sep 2024 18:09:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AF=BC=E5=85=A5=E6=9D=A1?= =?UTF-8?q?=E6=AC=BE=E6=B6=89=E5=8F=8A=E7=B3=BB=E7=BB=9F/=E9=83=A8?= =?UTF-8?q?=E4=BB=B6=E4=B8=8E=E4=B8=93=E4=B8=9A=E9=A2=86=E5=9F=9F=E9=AA=8C?= =?UTF-8?q?=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/FileSplitItemsEOServiceImpl.java | 75 +++++++++++++------ 1 file changed, 53 insertions(+), 22 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java index 37e3ac5c..6568ecd2 100644 --- a/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java @@ -3196,33 +3196,69 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl sysDictItemLists = sysDictItemService.list(new LambdaQueryWrapper() .eq(SysDictItem::getDictId, firstDict.get().getId())); - List sysDictItemList = getLevelPath(sysDictItemLists); + String[] treePathList = value.split(","); for (String treePath : treePathList) { List path = - sysDictItemList.stream().filter(o -> treePath.equals(o.getLevelPath())) + sysDictItemLists.stream().filter(o -> treePath.equals(o.getItemText())) .collect(Collectors.toList()); if (!path.isEmpty()){ - if (path.size() > 1) { + // 如果有多个,按照全路径去匹配一遍 + if(path.size() > 1){ + List sysDictItemList = getLevelPath(sysDictItemLists); + List pathOther = + sysDictItemList.stream().filter(o -> treePath.equals(o.getLevelPath())) + .collect(Collectors.toList()); + if(pathOther.isEmpty()){ + if (path.size() > 1) { + if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())) { + errorMsg += fieldName + "中" + treePath + "存在多个;"; + countError++; + valueList = Collections.emptyList(); + } else { + errorMsg += fieldName + " " + treePath + "Exist in multiple;"; + } + break; + } + valueList.add(pathOther.get(0).getItemValue()); + }else{ + if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())) { + errorMsg += fieldName + "中" + treePath + "存在多个;"; + countError++; + valueList = Collections.emptyList(); + } else { + errorMsg += fieldName + " " + treePath + "Not exist;"; + } + break; + } + } + }else { + List sysDictItemList = getLevelPath(sysDictItemLists); + List pathOther = + sysDictItemList.stream().filter(o -> treePath.equals(o.getLevelPath())) + .collect(Collectors.toList()); + if(!pathOther.isEmpty()){ + if (path.size() > 1) { + if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())) { + errorMsg += fieldName + "中" + treePath + "存在多个;"; + countError++; + valueList = Collections.emptyList(); + } else { + errorMsg += fieldName + " " + treePath + "Exist in multiple;"; + } + break; + } + valueList.add(pathOther.get(0).getItemValue()); + }else{ if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())) { - errorMsg += fieldName + "中" + treePath + "存在多个;"; + errorMsg += fieldName + "中" + treePath + "不存在;"; countError++; valueList = Collections.emptyList(); } else { - errorMsg += fieldName + " " + treePath + "Exist in multiple;"; + errorMsg += fieldName + " " + treePath + "Not exist;"; } break; } - valueList.add(path.get(0).getItemValue()); - }else { - if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())) { - errorMsg += fieldName + "中" + treePath + "不存在;"; - countError++; - valueList = Collections.emptyList(); - } else { - errorMsg += fieldName + " " + treePath + "Not exist;"; - } - break; } } } @@ -3231,15 +3267,10 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl partNames = IPartNameService.list(new LambdaQueryWrapper().ne(PartName::getCode, "Part")); - partNameList = partNameGetLevelPath(partNames); - } String[] treePathList = value.split(","); for (String treePath : treePathList) { - List path = - partNameList.stream().filter(o -> treePath.equals(o.getLevelPath())) - .collect(Collectors.toList()); + List path = IPartNameService.list(new LambdaQueryWrapper() + .eq(PartName::getName, treePath)); if (!path.isEmpty()){ if (path.size() > 1) { if(MessageUtils.getLanguage().getValue().equals(LanguageEnum.CN.getValue())) {