diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java index 8cfe95113f..eff9f0bdd2 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java @@ -30,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.HashSet; import java.util.Iterator; import java.util.List; @@ -151,17 +152,22 @@ public class GovOrgServiceImpl implements GovOrgService { List usedAreaCodeList1 = customerAgencyDao.selectUsedAreaCodeList(formDTO.getAreaCode()); //外部子客户: List usedAreaCodeList2 = customerRelation.selectUsedAreaCodeList(formDTO.getAreaCode()); + List list=new ArrayList<>(); + if(CollectionUtils.isNotEmpty(usedAreaCodeList1)){ + list.addAll(usedAreaCodeList1); + } + if(CollectionUtils.isNotEmpty(usedAreaCodeList2)){ + list.addAll(usedAreaCodeList2); + } + HashSet set = new HashSet(list); + list.clear(); + list.addAll(set); //已经被使用的移除不显示 Iterator iterator = allList.iterator(); while (iterator.hasNext()) { NextAreaCodeResultDTO next = iterator.next(); - for (String usedAreaCode1 : usedAreaCodeList1) { - if (next.getAreaCode().equals(usedAreaCode1)) { - iterator.remove(); - } - } - for (String usedAreaCode2 : usedAreaCodeList2) { - if (next.getAreaCode().contains(usedAreaCode2)) { + for (String areaCode : list) { + if (next.getAreaCode().equals(areaCode)) { iterator.remove(); } }