| | |
| | | List<RegionVo> regionVoList = regionMapper.listRegionVo(); |
| | | List<RegionVo> regionVoList1 = new ArrayList<>(); |
| | | List<RegionVo> regionVoList2 = new ArrayList<>(); |
| | | List<RegionVo> regionVoList3 = new ArrayList<>(); |
| | | // 将地区按照级别分别存放到不同的列表中 |
| | | for (RegionVo regionVo : regionVoList) { |
| | | if (regionVo.getLevel() == 1) { |
| | |
| | | if (regionVo.getLevel() == 2) { |
| | | regionVoList2.add(regionVo); |
| | | } |
| | | if (regionVo.getLevel() == 3) { |
| | | regionVoList3.add(regionVo); |
| | | } |
| | | } |
| | | RegionVo children; |
| | | Iterator<RegionVo> regionVoIterator2; |
| | | |
| | | for (RegionVo regionVo : regionVoList2) { |
| | | if (null == regionVo.getChildren()) { |
| | | regionVo.setChildren(new ArrayList<>()); |
| | | } |
| | | regionVoIterator2 = regionVoList3.iterator(); |
| | | while (regionVoIterator2.hasNext()) { |
| | | children = regionVoIterator2.next(); |
| | | if (regionVo.getId().equals(children.getParentId())) { |
| | | regionVo.getChildren().add(children); |
| | | regionVoIterator2.remove(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 将第二级地区挂到第一级地区下面 |
| | | for (RegionVo regionVo : regionVoList1) { |
| | | if (null == regionVo.getChildren()) { |
| | |
| | | return regionVoList1; |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public List<RegionVo> listRegions(Long pid) { |
| | | return regionMapper.listRegions(pid); |
| | | } |
| | | |
| | | /** |
| | | * @param |
| | | * @return List<RegionVo> |