吉安感知网项目-后端
linwei
2026-01-29 1abd541be8d02dabaa77d3c6d2fecde5ef0e4b5b
drone-service/drone-system/src/main/java/org/sxkj/system/service/impl/RegionServiceImpl.java
@@ -27,8 +27,10 @@
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.tool.utils.*;
import org.sxkj.common.func.Streams;
import org.sxkj.system.cache.RegionCache;
import org.sxkj.system.entity.Region;
import org.sxkj.system.excel.RegionExcel;
import org.sxkj.system.excel.RegionImportExcel;
import org.sxkj.system.mapper.RegionMapper;
import org.sxkj.system.param.RegionPageParam;
import org.sxkj.system.service.IRegionService;
@@ -124,11 +126,47 @@
      return baseMapper.lazyTree(parentCode, param);
   }
   // WHEN
   //    region_level = '5' THEN town_name
   // WHEN
   //    region_level = '4' THEN district_name
   // WHEN
   //    region_level = '3' THEN city_name
   // WHEN
   //    region_level = '2' THEN province_name
   @Override
   public void importRegion(List<RegionExcel> data, Boolean isCovered) {
   public void importRegion(List<RegionImportExcel> data, Boolean isCovered) {
      List<Region> list = new ArrayList<>();
      data.forEach(regionExcel -> {
         Region region = BeanUtil.copy(regionExcel, Region.class);
         region.setRegionLevel(Integer.valueOf(regionExcel.getRegionLevel()));
         region.setCityName("吉安市");
         region.setCityCode("360800000000");
         region.setProvinceCode("360000000000");
         region.setProvinceName("江西省");
         if (region.getRegionLevel().equals(DISTRICT_LEVEL)) {
            region.setDistrictCode(region.getCode());
            region.setDistrictName(region.getName());
         }
         if (region.getRegionLevel().equals(TOWN_LEVEL)) {
            String parentCode = region.getParentCode();
            Region byCode = getByCode(parentCode);
            region.setDistrictCode(byCode.getCode());
            region.setDistrictName(byCode.getName());
            region.setTownCode(region.getCode());
            region.setTownName(region.getName());
         }
         if (region.getRegionLevel().equals(VILLAGE_LEVEL)) {
            String parentCode = region.getParentCode();
            Region byCode = getByCode(parentCode);
            region.setTownCode(byCode.getCode());
            region.setTownName(byCode.getName());
            Region byCode2 = getByCode(byCode.getParentCode());
            region.setDistrictCode(byCode2.getCode());
            region.setDistrictName(byCode2.getName());
            region.setVillageCode(region.getCode());
            region.setVillageName(region.getName());
         }
         list.add(region);
      });
      if (isCovered) {