diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java index 9d09ed5526..1505018fa9 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java @@ -926,6 +926,7 @@ public class AgencyServiceImpl implements AgencyService { @Override public List getCustomerTree(TokenDto tokenDto) { + List resultList = new ArrayList<>(); List rootList = customerAgencyDao.selectRootCustomer(null, null); List treeList = new ArrayList<>(); Map treeMap = new HashMap<>(); @@ -934,26 +935,13 @@ public class AgencyServiceImpl implements AgencyService { rootList.forEach(item -> { customerHandle(item, treeList); }); - treeMap = treeList.stream().collect(Collectors.toMap(CustomerTreeDTO::getAreaCode, Function.identity(), (val1, val2) -> val2)); +// treeMap = treeList.stream().collect(Collectors.toMap(CustomerTreeDTO::getAreaCode, Function.identity(), (val1, val2) -> val2)); // 组合成组织树 - rootList = getCustomerTree(treeList); - // 回显客户名称 - rootList.forEach(item -> { - List customerNames = new ArrayList<>(); - List subList = customerAgencyDao.selectRootCustomer(item.getAreaCode(), item.getLevel()); - if (!subList.isEmpty()) { - CustomerDTO customerDTO = new CustomerDTO(); - customerDTO.setId(item.getCustomerId()); - Result customerResult = operCrmFeignClient.getCustomerInfo(customerDTO); - if (customerResult.success() && null != customerResult.getData()) { - customerNames.add(customerResult.getData().getCustomerName()); - } - } - item.setCustomerName(Joiner.on(",").join(customerNames)); - }); + resultList = getCustomerTree(treeList); + } - return rootList; + return resultList; } private CustomerAgencyEntity constructInsertEntity(AddAgencyV2FormDTO formDTO, CustomerAgencyDTO parent) { @@ -1027,12 +1015,27 @@ public class AgencyServiceImpl implements AgencyService { * * @param * @return com.epmet.dto.result.CustomerTreeDTO - * @author zhy + * @author wgf * @date 2022/7/6 13:54 */ private List getCustomerTree(List treeList) { treeList = treeList.stream().distinct().collect(Collectors.toList()); + // 回显客户名称 + treeList.forEach(item -> { + List customerNames = new ArrayList<>(); + List subList = customerAgencyDao.selectRootCustomer(item.getAreaCode(), item.getLevel()); + subList.forEach(customer -> { + CustomerDTO customerDTO = new CustomerDTO(); + customerDTO.setId(customer.getCustomerId()); + Result customerResult = operCrmFeignClient.getCustomerInfo(customerDTO); + if (customerResult.success() && null != customerResult.getData()) { + customerNames.add(customerResult.getData().getCustomerName()); + } + }); + item.setCustomerName(Joiner.on(",").join(customerNames)); + }); + // 省 List province = new ArrayList(); // 市 @@ -1043,35 +1046,35 @@ public class AgencyServiceImpl implements AgencyService { List street = new ArrayList(); // 社区 List community = new ArrayList(); - for(int i = 0 ; i < treeList.size() ; i++){ - if("province".equals(treeList.get(i).getLevel())){ + for (int i = 0; i < treeList.size(); i++) { + if ("province".equals(treeList.get(i).getLevel())) { province.add(treeList.get(i)); - } else if("city".equals(treeList.get(i).getLevel())){ + } else if ("city".equals(treeList.get(i).getLevel())) { city.add(treeList.get(i)); - } else if("district".equals(treeList.get(i).getLevel())){ + } else if ("district".equals(treeList.get(i).getLevel())) { district.add(treeList.get(i)); - } else if("street".equals(treeList.get(i).getLevel())){ + } else if ("street".equals(treeList.get(i).getLevel())) { street.add(treeList.get(i)); - } else if("community".equals(treeList.get(i).getLevel())){ + } else if ("community".equals(treeList.get(i).getLevel())) { community.add(treeList.get(i)); } } // 组装街道树 - for(CustomerTreeDTO streetDto : street){ - this.addChild(streetDto,community); + for (CustomerTreeDTO streetDto : street) { + this.addChild(streetDto, community); } // 组装区树 - for(CustomerTreeDTO districtDto : district){ - this.addChild(districtDto,street); + for (CustomerTreeDTO districtDto : district) { + this.addChild(districtDto, street); } // 组装市树 - for(CustomerTreeDTO cityDto : city){ - this.addChild(cityDto,district); + for (CustomerTreeDTO cityDto : city) { + this.addChild(cityDto, district); } // 组装省树 - for(CustomerTreeDTO provinceDto : province){ - this.addChild(provinceDto,city); + for (CustomerTreeDTO provinceDto : province) { + this.addChild(provinceDto, city); } return province; @@ -1080,13 +1083,14 @@ public class AgencyServiceImpl implements AgencyService { /** * 组装子项 + * * @param parentDto * @param childList */ - private void addChild(CustomerTreeDTO parentDto,List childList){ + private void addChild(CustomerTreeDTO parentDto, List childList) { List children = new ArrayList(); - for(CustomerTreeDTO childDto : childList){ - if(parentDto.getAreaCode().equals(childDto.getParentCode())){ + for (CustomerTreeDTO childDto : childList) { + if (parentDto.getAreaCode().equals(childDto.getParentCode())) { children.add(childDto); } }