linwei
2024-02-22 7bcd0d2d7510cb2ba67099cd768e1b2b6d047dc2
src/main/java/org/springblade/modules/place/mapper/PlaceExtMapper.xml
@@ -12,36 +12,98 @@
    <!--自定义分页查询-->
    <select id="selectPlaceExtPage" resultType="org.springblade.modules.place.vo.PlaceExtVO">
        select jpe.*,jp.place_name as placeName from jczz_place_ext jpe
        left join jczz_place jp on jpe.place_id = jp.id and jp.is_deleted = 0
        where jpe.is_deleted = 0
        SELECT
        jpe.*,
        jp.place_name AS placeName
        FROM
        jczz_place_ext jpe
        LEFT JOIN jczz_place jp ON jpe.place_id = jp.id AND jp.is_deleted = 0
        LEFT JOIN jczz_grid jg ON jp.grid_code = jg.grid_code AND jg.is_deleted = 0
        LEFT JOIN jczz_police_affairs_grid jpag ON jp.jw_grid_code = jpag.jw_grid_code AND jpag.is_deleted = 0
        WHERE jpe.is_deleted = 0
        and jp.place_name != ''
        <if test="isAdministrator==2">
            <choose>
                <when test="placeExt.roleName != null and placeExt.roleName != ''">
                    <if test="placeExt.roleName=='wgy'">
                        <choose>
                            <when test="gridCodeList !=null and gridCodeList.size()>0">
                                and jp.grid_code in
                                <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
                                    #{code}
                                </foreach>
                            </when>
                            <otherwise>
                                and jp.grid_code in ('')
                            </otherwise>
                        </choose>
                    </if>
                    <if test="placeExt.roleName=='mj'">
                        <choose>
                            <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                                and jpag.community_code in
                                <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                    #{code}
                                </foreach>
                            </when>
                            <otherwise>
                                and jpag.community_code in ('')
                            </otherwise>
                        </choose>
                    </if>
                </when>
                <otherwise>
                    <choose>
                        <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                            and
                            (
                            jg.grid_code in
                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
                            or
                            jpag.community_code in
                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
                            )
                        </when>
                        <otherwise>
                            and
                            (
                            jg.grid_code in ('') or jpag.community_code in in ('')
                            )
                        </otherwise>
                    </choose>
                </otherwise>
            </choose>
        </if>
        <if test="placeExt.placeName != null and placeExt.placeName != ''">
            and jp.place_name like concat('%',#{placeExt.placeName},'%')
        </if>
        <if test="placeExt.communityCode != null and placeExt.communityCode != ''">
            and jpag.community_code like concat('%',#{placeExt.communityCode},'%')
        </if>
        <if test="placeExt.placeId != null">
            and jp.id = #{placeExt.placeId}
        </if>
        <if test="placeExt.isApp != null">
            and jpe.confirm_flag != 4
        </if>
        <if test="placeExt.houseCode != null and placeExt.houseCode != ''">
            and jp.house_code = #{placeExt.houseCode}
            and jp.house_code like concat('%',#{placeExt.houseCode},'%')
        </if>
        <if test="placeExt.confirmFlag != null">
            and jpe.confirm_flag = #{placeExt.confirmFlag}
        </if>
        <if test="placeExt.roleName!=null and placeExt.roleName!='' and placeExt.createUser!=null">
            <choose>
                <when test="placeExt.roleName=='网格员'">
                    and
                    (
                    jp.create_user = #{placeExt.createUser}
                    <if test="houseCodeList != null and houseCodeList.size()>0">
                        or jp.house_code in
                        <foreach collection="houseCodeList" item="houseCode" separator ="," open="("  close=")">
                            #{houseCode}
                        </foreach>
                    </if>
                    )
                </when>
                <otherwise>
                    and jp.principal_user_id = #{placeExt.createUser}
                </otherwise>
            </choose>
        <if test="placeExt.startTime != null and placeExt.startTime != '' and placeExt.endTime != null and placeExt.endTime != '' ">
            AND jpe.create_time BETWEEN #{placeExt.startTime} and #{placeExt.endTime}
        </if>
        <if test="houseCodeList != null and houseCodeList.size()>0">
            and jp.house_code in
            <foreach collection="houseCodeList" item="houseCode" separator="," open="(" close=")">
                #{houseCode}
            </foreach>
        </if>
        order by jpe.create_time desc,jpe.id desc
    </select>
@@ -52,8 +114,8 @@
        count( 1 )
        FROM
        jczz_place_ext jpe
        LEFT JOIN jczz_place jp ON jp.id = jpe.place_id
        LEFT JOIN jczz_doorplate_address jda ON jp.house_code = jda.address_code
        LEFT JOIN jczz_place jp ON jp.id = jpe.place_id and jp.is_deleted = 0
        LEFT JOIN jczz_doorplate_address jda ON locate(jda.address_code,jp.house_code)>0
        <where>
            <if test="confirmFlag != null">
                and jpe.confirm_flag = #{confirmFlag}
@@ -80,11 +142,14 @@
    </select>
    <select id="getDetail" resultType="org.springblade.modules.place.vo.PlaceExtVO">
        select jpe.*, jp.place_name as placeName
        select jpe.*,
        jp.place_name as placeName,
        jp.lng,
        jp.lat,
        jp.location
        from jczz_place_ext jpe
                 left join jczz_place jp on jpe.place_id = jp.id and jp.is_deleted = 0
        where jpe.is_deleted = 0
          and jpe.place_id = #{placeExt.placeId}
        left join jczz_place jp on jpe.place_id = jp.id and jp.is_deleted = 0
        where jpe.is_deleted = 0 and jpe.place_id = #{placeExt.placeId}
    </select>