| | |
| | | package com.panzhihua.sangeshenbian.service.impl; |
| | | |
| | | import com.panzhihua.sangeshenbian.dao.SystemUserMapper; |
| | | import com.panzhihua.sangeshenbian.model.entity.BcRegion; |
| | | import com.panzhihua.sangeshenbian.dao.BcRegionMapper; |
| | | import com.panzhihua.sangeshenbian.model.vo.RegionVO; |
| | | import com.panzhihua.sangeshenbian.service.IBcRegionService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.context.annotation.Lazy; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | * @since 2025-02-23 |
| | | */ |
| | | @Service |
| | | @RequiredArgsConstructor(onConstructor_ = {@Lazy}) |
| | | public class BcRegionServiceImpl extends ServiceImpl<BcRegionMapper, BcRegion> implements IBcRegionService { |
| | | private final SystemUserMapper systemUserMapper; |
| | | /** |
| | | * 判断区县是否存在 |
| | | * @param districtName |
| | |
| | | return this.lambdaQuery() |
| | | .eq(BcRegion::getRegionName, districtName) |
| | | .eq(BcRegion::getDeleteFlag, 0) |
| | | .eq(BcRegion::getHierarchyOrder, 2).last("LIMIT 1").one(); |
| | | .eq(BcRegion::getHierarchyOrder, 3).last("LIMIT 1").one(); |
| | | } |
| | | |
| | | @Override |
| | | public BcRegion getDistrictByCode(String districtCode) { |
| | | return this.lambdaQuery().eq(BcRegion::getRegionCode, districtCode).last("LIMIT 1").one(); |
| | | } |
| | | /** |
| | | * 获取区县-街道-社区树 |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<RegionVO> regionTree() { |
| | | List<RegionVO> regionTree = systemUserMapper.getRegion("510400"); |
| | | systemUserMapper.getStreet("510400"); |
| | | regionTree.forEach(district -> { |
| | | List<RegionVO> streets = systemUserMapper.getStreet(district.getId()); |
| | | district.setChildren(streets); |
| | | streets.forEach(street -> { |
| | | List<RegionVO> communities = systemUserMapper.getCommunity(street.getId()); |
| | | street.setChildren(communities); |
| | | }); |
| | | }); |
| | | return regionTree; |
| | | } |
| | | } |