| | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.ComMngAreaVO; |
| | | import com.panzhihua.common.model.vos.community.ComMngCityVO; |
| | | import com.panzhihua.common.model.vos.community.ComMngDistrictVO; |
| | | import com.panzhihua.common.model.vos.community.ComMngProvinceVO; |
| | |
| | | import javax.annotation.Resource; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @Service |
| | | public class ComMngProvinceServiceImpl implements ComMngProvinceService { |
| | |
| | | return R.ok(vos); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public R getDistrictByCityCode(Integer cityAdcode) { |
| | | List<ComMngDistrictDO> comMngDistrictDOS = comMngDistrictDAO.selectList(new QueryWrapper<ComMngDistrictDO>().lambda().eq(ComMngDistrictDO::getCityAdcode,cityAdcode)); |
| | |
| | | }); |
| | | return R.ok(vos); |
| | | } |
| | | |
| | | @Override |
| | | public R getCityTreeByProvinceCode(Integer provinceAdcode) { |
| | | List<ComMngProvinceDO> provinceDOS = comMngProvinceDAO.selectList(new QueryWrapper<ComMngProvinceDO>().lambda().eq(ComMngProvinceDO::getProvinceAdcode, provinceAdcode)); |
| | | List<ComMngCityDO> cityDOS = comMngCityDAO.selectList(null); |
| | | List<ComMngDistrictDO> districtDOS = comMngDistrictDAO.selectList(null); |
| | | List<ComMngAreaVO> vos = new ArrayList<>(); |
| | | provinceDOS.forEach(p -> { |
| | | ComMngAreaVO pvo = new ComMngAreaVO(p.getProvinceAdcode(), p.getProvinceName()); |
| | | vos.add(pvo); |
| | | List<ComMngCityDO> citys = cityDOS.stream().filter(city -> city.getProvinceAdcode().equals(p.getProvinceAdcode())).collect(Collectors.toList()); |
| | | citys.forEach(c -> { |
| | | ComMngAreaVO cityVo = new ComMngAreaVO(c.getCityAdcode(), c.getCityName()); |
| | | BeanUtils.copyProperties(c, cityVo); |
| | | pvo.getChildren().add(cityVo); |
| | | List<ComMngDistrictDO> districts = districtDOS.stream().filter(district -> district.getCityAdcode().equals(c.getCityAdcode())).collect(Collectors.toList()); |
| | | districts.forEach(d -> { |
| | | ComMngAreaVO districtVo = new ComMngAreaVO(d.getDistrictAdcode(), d.getDistrictName()); |
| | | BeanUtils.copyProperties(d, districtVo); |
| | | cityVo.getChildren().add(districtVo); |
| | | }); |
| | | }); |
| | | }); |
| | | return R.ok(vos); |
| | | } |
| | | } |