linwe
2024-05-29 c10d6358b9f014375a13821465bc978d0c0da22e
src/main/java/org/springblade/modules/doorplateAddress/mapper/DoorplateAddressMapper.xml
@@ -5,7 +5,7 @@
    <!--过滤网格数据-->
    <sql id="filterHouseGrid">
        <if test="houseParam.roleName!=null and houseParam.roleName!=''">
            <if test="houseParam.roleName=='网格员' and houseParam.userId!='1726859808689696770'">
            <if test="houseParam.roleName=='wgy' and houseParam.userId!='1726859808689696770'">
                <choose>
                    <when test="list != null and list.size()>0">
                        and address_code in
@@ -26,7 +26,7 @@
    <!--过滤社区数据-->
    <sql id="filterCommunity">
        <if test="houseParam.roleName!=null and houseParam.roleName!=''">
            <if test="houseParam.roleName=='民警' and houseParam.userId!='1726859808689696770'">
            <if test="houseParam.roleName=='mj' and houseParam.userId!='1726859808689696770'">
                <choose>
                    <when test="communityList != null and communityList.size()>0">
                        and nei_code in
@@ -57,15 +57,38 @@
    <!--自定义分页查询-->
    <select id="selectDoorplateAddressPage" resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO">
        select * from jczz_doorplate_address where 1=1
        SELECT
        jda.*
        FROM
        jczz_doorplate_address jda LEFT JOIN jczz_district jd on jda.aoi_code=jd.aoi_code
        where 1=1
        <if test="doorplateAddress.aoiName!=null and doorplateAddress.aoiName!=''">
            and aoi_name like concat('%',#{doorplateAddress.aoiName},'%')
            and jda.aoi_name like concat('%',#{doorplateAddress.aoiName},'%')
        </if>
        <if test="doorplateAddress.addressName!=null and doorplateAddress.addressName!=''">
            and address_name like concat('%',#{doorplateAddress.addressName},'%')
            and jda.address_name like concat('%',#{doorplateAddress.addressName},'%')
        </if>
        <if test="doorplateAddress.townStreetCode != null and doorplateAddress.townStreetCode != ''">
            and town_street_code like concat('%',#{doorplateAddress.townStreetCode},'%')
            and jda.town_street_code like concat('%',#{doorplateAddress.townStreetCode},'%')
        </if>
        <if test="doorplateAddress.houseName != null and doorplateAddress.houseName != ''">
            and jda.house_name like concat('%',#{doorplateAddress.houseName},'%')
        </if>
        <if test="doorplateAddress.buildingName != null and doorplateAddress.buildingName != ''">
            and jda.building_name like concat('%',#{doorplateAddress.buildingName},'%')
        </if>
        <if test="doorplateAddress.unitName != null and doorplateAddress.unitName != ''">
            and jda.unit_name like concat('%',#{doorplateAddress.unitName},'%')
        </if>
        <if test="doorplateAddress.districtIds != null ">
            and jd.id in
        <foreach collection="doorplateAddress.districtIds" item="districtId" separator ="," open="("  close=")">
            #{districtId}
        </foreach>
        </if>
    </select>
@@ -84,9 +107,9 @@
    <!--过滤网格数据-->
    <sql id="filterHouseGridByTownOrCommunity">
        <if test="houseParam.roleName!=null and houseParam.roleName!='' and houseParam.roleName!='系统管理员'">
        <if test="houseParam.roleName!=null and houseParam.roleName!='' and houseParam.roleName!='admin'">
            <choose>
                <when test="houseParam.roleName=='网格员' and houseParam.userId!='1726859808689696770'">
                <when test="(houseParam.roleName=='wgy' or houseParam.roleName=='wzcj') and houseParam.userId!='1726859808689696770'">
                    <choose>
                        <when test="list != null and list.size()>0">
                            and jg.grid_code in
@@ -115,18 +138,20 @@
            and br.name = '万达社区居民委员会'
        </if>
        <include refid="filterHouseGridByTownOrCommunity"/>
        group by br.town_code,br.town_name
        union
        select br.town_code as id,br.town_name as name from jczz_police_affairs_grid jpag
        left join blade_region br on jpag.community_code = br.code
        where jpag.is_deleted = 0
        where jpag.is_deleted = 0 and br.town_code is not null
        <include refid="filterCommunityByTownOrCommunity"/>
        group by br.town_code,br.town_name
    </select>
    <!--过滤社区数据-->
    <sql id="filterCommunityByTownOrCommunity">
        <if test="houseParam.roleName!=null and houseParam.roleName!=''">
            <choose>
                <when test="houseParam.roleName=='民警' and houseParam.userId!='1726859808689696770'">
                <when test="houseParam.roleName=='mj'">
                    <choose>
                        <when test="communityList != null and communityList.size()>0">
                            and jpag.jw_grid_code in
@@ -158,7 +183,7 @@
        union
        select br.village_code as id,br.village_name as name,br.town_code as parentId from jczz_police_affairs_grid jpag
        left join blade_region br on jpag.community_code = br.code
        where jpag.is_deleted = 0
        where jpag.is_deleted = 0 and br.village_code is not null
        <include refid="filterCommunityByTownOrCommunity"/>
    </select>
@@ -570,6 +595,19 @@
        <if test="townName!=null and townName!=''">
            and jda.town_street_name like concat('%',#{townName},'%')
        </if>
        limit 0,1000
    </select>
    <!--查询未入库的场所-->
    <select id="getNotPlaceListCount" resultType="java.lang.Integer">
        select count(*) from jczz_doorplate_address jda
        left join jczz_place jp on jda.address_code=jp.house_code and jp.is_deleted = 0
        where 1=1
        and (doorplate_type = '小门牌' or (doorplate_type = '中门牌' and address_level = 1))
        and jp.id is null
        <if test="townName!=null and townName!=''">
            and jda.town_street_name like concat('%',#{townName},'%')
        </if>
    </select>
    <!--查询场所标准地址数据-->
@@ -778,4 +816,14 @@
        </if>
        limit 0,1000
    </select>
    <!--查询所有未匹配的网格范围地址数据-->
    <select id="getDoorplateAddressDetailByHouseId" resultType="org.springblade.modules.doorplateAddress.vo.DoorplateAddressVO">
        select
        jda.*
        from jczz_doorplate_address jda
        left join jczz_house jh on jh.house_code = jda.address_code and jh.is_deleted = 0
        where 1=1
        and jh.id = #{houseId}
    </select>
</mapper>