From 64ef3715d6f4a1deba80635fae046e91d29cfce5 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 8 Jan 2021 13:43:12 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=8C=E6=94=BF=E5=9C=B0=E5=8C=BA=E7=BC=96?= =?UTF-8?q?=E7=A0=81=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AreaCodeServiceImpl.java | 35 +++++++++---------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/AreaCodeServiceImpl.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/AreaCodeServiceImpl.java index ae06d00ccc..b05d8a6943 100644 --- a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/AreaCodeServiceImpl.java +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/service/impl/AreaCodeServiceImpl.java @@ -232,33 +232,32 @@ public class AreaCodeServiceImpl extends BaseServiceImpl getTreeByRootAreaCode(List tree , String rootAreaCode){ List result = new ArrayList<>(); - AtomicReference flag = new AtomicReference<>(false); if (!CollectionUtils.isEmpty(tree)){ // 省级获取 - tree.forEach(t -> { - if (rootAreaCode.equals(t.getCode())){ - result.add(t); - flag.set(true); + for (AreaCodeDictResultDTO dto : tree) { + if (rootAreaCode.equals(dto.getCode())){ + result.add(dto); + return result; } // 市级获取 - if (!CollectionUtils.isEmpty(t.getChildren()) && flag.get() == false){ - t.getChildren().forEach(c -> { - if (rootAreaCode.equals(c.getCode())){ - result.add(c); - flag.set(true); + if (!CollectionUtils.isEmpty(dto.getChildren())){ + for (AreaCodeDictResultDTO child : dto.getChildren()) { + if (rootAreaCode.equals(child.getCode())){ + result.add(child); + return result; } // 区级获取 - if (!CollectionUtils.isEmpty(c.getChildren()) && flag.get() == false){ - c.getChildren().forEach(three -> { - if (rootAreaCode.equals(three.getCode()) && flag.get() == false){ - result.add(three); - flag.set(true); + if (!CollectionUtils.isEmpty(child.getChildren())){ + for (AreaCodeDictResultDTO threeChild : child.getChildren()) { + if (rootAreaCode.equals(threeChild.getCode())){ + result.add(threeChild); + return result; } - }); + } } - }); + } } - }); + } } return result; }