zhongrj
2023-12-08 9c337d8dc09694005eda83df13d7972fddbfe2cc
小区数据处理修改
2 files modified
55 ■■■■■ changed files
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml 27 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java 28 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -422,19 +422,22 @@
    <!--查询所有的地址表和场所表差集集合(小区和非小区的)-->
    <select id="getPlaceList" resultType="org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity">
        select jda.* from jczz_doorplate_address jda
        left join jczz_place jp on jp.house_code = jda.address_code and jp.is_deleted =0
        where 1=1
        and jp.house_code is null
        and (doorplate_type = '小门牌' or (doorplate_type = '中门牌' and address_level = 1))
        union
        select
        min(jda.id)
        from jczz_doorplate_address jda
                left join jczz_district jd on jda.aoi_code = jd.aoi_code
        where jda.aoi_code != "" and jda.aoi_name !="" and jd.id is null
                and (doorplate_type = '大门牌' or doorplate_type = '楼幢牌'  or doorplate_type = '中门牌' or doorplate_type = '单元牌')
        GROUP BY jda.aoi_code
        union all
        (
        select jda.* from jczz_doorplate_address jda
        left join jczz_place jp on jp.house_code = jda.address_code and jp.is_deleted =0
        where 1=1
        and jp.house_code is null
        and aoi_code is null
        and doorplate_type='中门牌'
        select
        min(jda.id)
        from jczz_doorplate_address jda
                left join jczz_district jd on jda.aoi_code = jd.aoi_code
        where jda.aoi_code != "" and jda.sub_aoi != ""
                and (doorplate_type = '大门牌' or doorplate_type = '楼幢牌'  or doorplate_type = '中门牌')
        group by jda.aoi_code
        )
    </select>
</mapper>
src/main/java/org/springblade/modules/doorplateAddress/service/impl/DoorplateAddressServiceImpl.java
@@ -651,18 +651,26 @@
        List<DistrictEntity> aoiList = new ArrayList<>();
        // 将小区数据保存到小区表中
        for (DoorplateAddressEntity addressEntity : list) {
            DistrictEntity districtEntity = new DistrictEntity();
            districtEntity.setCommunityCode(addressEntity.getNeiCode());
            districtEntity.setAoiCode(addressEntity.getAoiCode());
            districtEntity.setName(addressEntity.getAoiName());
            districtEntity.setAddress(addressEntity.getAddressName());
            districtEntity.setLng(addressEntity.getX());
            districtEntity.setLat(addressEntity.getY());
            // 加入集合
            aoiList.add(districtEntity);
            // 查询小区是否已存在,不存在则插入,否则不新增
            QueryWrapper<DistrictEntity> wrapper = new QueryWrapper<>();
            wrapper.eq("aoi_code",addressEntity.getAoiCode())
            .eq("is_deleted",0);
            DistrictEntity one = districtService.getOne(wrapper);
            if (null==one) {
                DistrictEntity districtEntity = new DistrictEntity();
                districtEntity.setCommunityCode(addressEntity.getNeiCode());
                districtEntity.setAoiCode(addressEntity.getAoiCode());
                districtEntity.setName(addressEntity.getAoiName());
                districtEntity.setAddress(addressEntity.getAddressName());
                districtEntity.setLng(addressEntity.getX());
                districtEntity.setLat(addressEntity.getY());
                // 加入集合
                districtService.save(districtEntity);
//                aoiList.add(districtEntity);
            }
        }
        // 批量插入
        districtService.saveBatch(aoiList);
//        districtService.saveBatch(aoiList);
        // 返回
        return null;
    }