linwe
2024-05-29 c10d6358b9f014375a13821465bc978d0c0da22e
src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -882,17 +882,18 @@
            // 加入集合
            districtService.save(districtEntity);
//            aoiList.add(districtEntity);
         } else {
            // 更新
            one.setCommunityCode(addressEntity.getNeiCode());
            one.setAoiCode(addressEntity.getAoiCode());
            one.setName(addressEntity.getAoiName());
            one.setAddress(addressEntity.getAddressName());
            one.setLng(addressEntity.getX());
            one.setLat(addressEntity.getY());
            // 加入集合
            districtService.updateById(one);
         }
//         else {
//            // 更新
//            one.setCommunityCode(addressEntity.getNeiCode());
//            one.setAoiCode(addressEntity.getAoiCode());
//            one.setName(addressEntity.getAoiName());
//            one.setAddress(addressEntity.getAddressName());
//            one.setLng(addressEntity.getX());
//            one.setLat(addressEntity.getY());
//            // 加入集合
//            districtService.updateById(one);
//         }
      }
      // 批量插入
//      districtService.saveBatch(aoiList);
@@ -908,54 +909,53 @@
   @Override
   @Transactional(rollbackFor = Exception.class)
   public Object placeDataHandle(String townName) {
      // 查询所有的地址表和场所表差集集合
      List<DoorplateAddressEntity> list = baseMapper.getNotInPlaceList(townName);
      // 创建场所集合对象
      List<PlaceEntity> placeList = new ArrayList<>();
      if (list.size() > 0) {
         // 将场所数据保存到场所表中
         for (DoorplateAddressEntity addressEntity : list) {
            // pio 名称不为空的进行插入操作
//            if (!Strings.isBlank(addressEntity.getPoi())) {
            PlaceEntity placeEntity = new PlaceEntity();
            placeEntity.setHouseCode(addressEntity.getAddressCode());
            placeEntity.setPlaceName(addressEntity.getPoi());
            placeEntity.setLng(addressEntity.getX());
            placeEntity.setLat(addressEntity.getY());
            placeEntity.setLocation(addressEntity.getAddressName());
            // 设置来源( 1:地址总表  2:国控采集 3:商超)
            placeEntity.setSource(1);
            // 待完善
            placeEntity.setStatus(1);
            // 默认为非九小场所
            placeEntity.setIsNine(2);
            // 默认为现场采集
            placeEntity.setIsScene(1);
            // 根据位置设置网格,警格编号
            String point = "'POINT(" + addressEntity.getX() + " " + addressEntity.getY() + ")'";
            //点坐标解析网格
            List<GridEntity> gridEntityList = gridService.spatialAnalysis(point);
            if (gridEntityList.size() > 0) {
               GridEntity gridEntity = gridEntityList.get(0);
               placeEntity.setGridId(gridEntity.getId());
               placeEntity.setGridCode(gridEntity.getGridCode());
      // 查询总数
      Integer count = baseMapper.getNotPlaceListCount(townName);
      if (count > 0) {
         int num = count / 1000;
         for (int i = 0; i <= num + 1; i++) {
            // 查询所有的地址表和场所表差集集合
            List<DoorplateAddressEntity> list = baseMapper.getNotInPlaceList(townName);
            if (list.size() > 0) {
               // 将场所数据保存到场所表中
               for (DoorplateAddressEntity addressEntity : list) {
                  // pio 名称不为空的进行插入操作
                  PlaceEntity placeEntity = new PlaceEntity();
                  placeEntity.setHouseCode(addressEntity.getAddressCode());
                  placeEntity.setPlaceName(addressEntity.getPoi());
                  placeEntity.setLng(addressEntity.getX());
                  placeEntity.setLat(addressEntity.getY());
                  placeEntity.setLocation(addressEntity.getAddressName());
                  // 设置来源( 1:地址总表  2:国控采集 3:商超)
                  placeEntity.setSource(1);
                  // 待完善
                  placeEntity.setStatus(1);
                  // 默认为非九小场所
                  placeEntity.setIsNine(2);
                  // 默认为现场采集
                  placeEntity.setIsScene(1);
                  // 根据位置设置网格,警格编号
                  String point = "'POINT(" + addressEntity.getX() + " " + addressEntity.getY() + ")'";
                  //点坐标解析网格
                  List<GridEntity> gridEntityList = gridService.spatialAnalysis(point);
                  if (gridEntityList.size() > 0) {
                     GridEntity gridEntity = gridEntityList.get(0);
                     placeEntity.setGridId(gridEntity.getId());
                     placeEntity.setGridCode(gridEntity.getGridCode());
                  }
                  //点坐标解析警格
                  List<PoliceAffairsGridEntity> policeAffairsGridEntityList = policeAffairsGridService.spatialAnalysis(point);
                  if (policeAffairsGridEntityList.size() > 0) {
                     PoliceAffairsGridEntity policeAffairsGridEntity = policeAffairsGridEntityList.get(0);
                     placeEntity.setJwGridCode(policeAffairsGridEntity.getJwGridCode());
                  }
                  // 保存
                  placeService.save(placeEntity);
                  // 新增场所详情
                  savePlaceExtAndTaskInfo(placeEntity);
               }
            }
            //点坐标解析警格
            List<PoliceAffairsGridEntity> policeAffairsGridEntityList = policeAffairsGridService.spatialAnalysis(point);
            if (policeAffairsGridEntityList.size() > 0) {
               PoliceAffairsGridEntity policeAffairsGridEntity = policeAffairsGridEntityList.get(0);
               placeEntity.setJwGridCode(policeAffairsGridEntity.getJwGridCode());
            }
            // 加入集合
//               placeList.add(placeEntity);
            // 保存
            placeService.save(placeEntity);
            // 新增场所详情
            savePlaceExtAndTaskInfo(placeEntity);
//            }
         }
         // 批量插入
//         savePlaceExtAndTaskInfo(placeList);
      }
      // 返回
      return null;
@@ -995,7 +995,21 @@
      List<String> list = new ArrayList<>();
      // 扫码时调用,需判断是否有权限查看
      DoorplateAddressVO doorplateAddressVO = baseMapper.getDoorplateAddressVODetail(doorplateAddress);
      // 创建数组
      String[] schoolName = {"幼儿园", "小学", "中学", "高中", "大专", "学校"};
      List<String> stringList = new ArrayList<>(Arrays.asList(schoolName));
      if (null != doorplateAddressVO) {
         if (Strings.isNotBlank(doorplateAddressVO.getAoiName()) && stringList.stream()
            .anyMatch(doorplateAddressVO.getAoiName()::contains)) {
            doorplateAddressVO.setAddressLevel(1);
            doorplateAddressVO.setDoorplateType(DictConstant.centre_DOORPLATE);
         }
         if (Strings.isNotBlank(doorplateAddressVO.getPoi()) && stringList.stream()
            .anyMatch(doorplateAddressVO.getPoi()::contains)) {
            doorplateAddressVO.setAddressLevel(1);
            doorplateAddressVO.setDoorplateType(DictConstant.centre_DOORPLATE);
         }
         // 不限制
         doorplateAddressVO.setIsJur(1);
         String roleName = SpringUtils.getRequestParam("roleName");
@@ -1048,7 +1062,7 @@
            PlacePoiLabel placePoiLabel = poiLabelService.getOne(Wrappers.<PlacePoiLabel>lambdaQuery()
               .eq(PlacePoiLabel::getPlaceId, doorplateAddressVO.getPid())
               .eq(PlacePoiLabel::getType, CommonConstant.NUMBER_THREE));
            if(ObjectUtil.isNotEmpty(placePoiLabel)){
            if (ObjectUtil.isNotEmpty(placePoiLabel)) {
               doorplateAddressVO.setLableCode(placePoiLabel.getPoiCode());
            }
         }