linwei
2024-02-02 461637bdee54fc0a270e2651f34b6957f8e47088
src/main/java/org/springblade/modules/place/service/impl/PlaceServiceImpl.java
@@ -39,6 +39,7 @@
import org.springblade.modules.house.entity.UserHouseLabelEntity;
import org.springblade.modules.house.service.IHouseholdService;
import org.springblade.modules.place.entity.*;
import org.springblade.modules.place.excel.NinePlaceExcel;
import org.springblade.modules.place.excel.PlaceAndRelExcel;
import org.springblade.modules.place.excel.PlaceExcel;
import org.springblade.modules.place.service.IPlaceExtService;
@@ -301,7 +302,7 @@
         if (null != gridId) {
            // 判断关联关系表是否存在
            QueryWrapper<GridRangeEntity> wrapper = new QueryWrapper<>();
            wrapper.eq("grid_id", gridId).eq("house_code", placeVO.getHouseCode());
            wrapper.eq("house_code", placeVO.getHouseCode());
            GridRangeEntity one = gridRangeService.getOne(wrapper);
            if (null == one) {
               // 新增
@@ -312,7 +313,7 @@
               gridRangeService.save(gridRangeEntity);
            }else {
               // 修改绑定
               one.setGridId(placeVO.getGridId());
               one.setGridId(gridId);
               // 修改
               gridRangeService.updateById(one);
            }
@@ -347,11 +348,12 @@
         //点坐标解析
         String point = "'POINT(" + placeVO.getLng() + " " + placeVO.getLat() +")'";
//         String point = "'POINT(" + villageInfoExcel.getLatitude() + " " + villageInfoExcel.getLongitude() +")'";
         GridEntity gridEntity = gridMapper.spatialAnalysis(point);
         if (null != gridEntity) {
         List<GridEntity> gridEntityList = gridMapper.spatialAnalysis(point);
         if (gridEntityList.size()>0) {
            GridEntity gridEntity = gridEntityList.get(0);
            // 判断关联关系表是否存在
            QueryWrapper<GridRangeEntity> wrapper = new QueryWrapper<>();
            wrapper.eq("grid_id", gridEntity.getId()).eq("house_code", placeVO.getHouseCode());
            wrapper.eq("house_code", placeVO.getHouseCode());
            GridRangeEntity one = gridRangeService.getOne(wrapper);
            if (null == one) {
               // 新增
@@ -362,7 +364,7 @@
               gridRangeService.save(gridRangeEntity);
            }else {
               // 修改绑定
               one.setGridId(placeVO.getGridId());
               one.setGridId(gridEntity.getId());
               // 修改
               gridRangeService.updateById(one);
            }
@@ -380,12 +382,15 @@
         //点坐标解析
         String point = "'POINT(" + placeVO.getLng() + " " + placeVO.getLat() +")'";
//         String point = "'POINT(" + villageInfoExcel.getLatitude() + " " + villageInfoExcel.getLongitude() +")'";
         GridEntity gridEntity = gridMapper.spatialAnalysis(point);
         if (null != gridEntity && !Strings.isBlank(gridEntity.getGridCode())) {
            // 场所编号绑定
            placeVO.setGridCode(gridEntity.getGridCode());
            // 更新场所信息
            updateById(placeVO);
         List<GridEntity> gridEntityList = gridMapper.spatialAnalysis(point);
         if (gridEntityList.size()>0) {
            GridEntity gridEntity = gridEntityList.get(0);
            if (null != gridEntity && !Strings.isBlank(gridEntity.getGridCode())) {
               // 场所编号绑定
               placeVO.setGridCode(gridEntity.getGridCode());
               // 更新场所信息
               updateById(placeVO);
            }
         }
      }
   }
@@ -1077,4 +1082,31 @@
         placePoiLabelService.remove(wrapper);
      }
   }
   /**
    * 九小场所档案
    * @param page
    * @param place
    * @return
    */
   @Override
   public IPage<PlaceVO> selectNinePlacePage(IPage<PlaceVO> page, PlaceVO place) {
      List<String> regionChildCodesList = SysCache.getRegionChildCodesByDeptId(AuthUtil.getDeptId());
      Integer isAdministrator = AuthUtil.isAdministrator()==true?1:2;
      List<String> list = new ArrayList<>();
      if (null!=place.getRoleName() && !place.getRoleName().equals("")){
         if (place.getRoleName().equals("网格员")){
            // 查询对应的房屋地址code
            list = gridService.getAddressCodeListByUserId(AuthUtil.getUserId());
         }
      }
      List<PlaceVO> placeVOS = baseMapper.selectNinePlacePage(page, place,list,regionChildCodesList,isAdministrator);
      // 返回
      return page.setRecords(placeVOS);
   }
   @Override
   public List<NinePlaceExcel> export(PlaceVO place) {
      return null;
   }
}