linwei
2024-02-02 ce035e1c02f63b49d469534ba4ac5ba435022ea2
src/main/java/org/springblade/modules/place/mapper/PlaceMapper.xml
@@ -20,12 +20,16 @@
        bu.real_name as username,bu.phone as phone,
        br.town_name as townStreetName,br.name as neiName,
        jpe.confirm_flag confirmFlag,
        jg.grid_name as gridName
        jg.grid_name as gridName,
        bus.`name` AS policeName,
        bu.phone AS policePhone
        from jczz_place jp
        left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0
        left join jczz_place_ext jpe on jpe.place_id=jp.id and jpe.is_deleted = 0
        left join jczz_grid jg on jg.grid_code = jp.grid_code and jg.is_deleted = 0
        left join blade_region br on br.code = jg.community_code
        LEFT JOIN jczz_community jc on jc.`code`=jg.community_code
        LEFT JOIN blade_user bus on bus.id = jc.res_police_user_id
        left join (
        select a.* from jczz_place_poi_label a inner join
        (
@@ -55,6 +59,96 @@
        <if test="place.id!=null">
            and jp.id = #{place.id}
        </if>
        <if test="place.isNine!=null">
            and jp.is_nine = #{place.isNine}
        </if>
        <if test="place.source!=null">
            and jp.source = #{place.source}
        </if>
        <if test="place.isPerfect==1">
            and jp.status = 1
        </if>
        <if test="place.isPerfect==2">
            and jp.status = 2
        </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>
        <if test="isAdministrator==2">
            <choose>
                <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                    and jg.grid_code in
                    <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                        #{code}
                    </foreach>
                </when>
                <otherwise>
                    and jg.grid_code in ('')
                </otherwise>
            </choose>
        </if>
        order by jp.create_time desc,jp.id desc
    </select>
    <!--自定义分页查询-->
    <select id="selectNinePlacePage" resultType="org.springblade.modules.place.vo.PlaceVO">
        select
        jp.*,
        jpe.id as placeExtId,
        bu.real_name as username,bu.phone as phone,
        br.town_name as townStreetName,br.name as neiName,
        jpe.confirm_flag confirmFlag,
        jg.grid_name as gridName,
        bus.`name` AS policeName,
        bu.phone AS policePhone,
        bd.dept_name
        from jczz_place jp
        left join blade_user bu on bu.id = jp.principal_user_id and bu.is_deleted = 0
        left join jczz_place_ext jpe on jpe.place_id=jp.id and jpe.is_deleted = 0
        left join jczz_grid jg on jg.grid_code = jp.grid_code and jg.is_deleted = 0
        left join blade_region br on br.code = jg.community_code
        LEFT JOIN jczz_community jc on jc.`code`=jg.community_code
        LEFT JOIN blade_user bus on bus.id = jc.res_police_user_id
        LEFT JOIN blade_dept bd on bd.id = bus.dept_id
        left join (
        select a.* from jczz_place_poi_label a inner join
        (
        select place_id,max(id) as id from jczz_place_poi_label b group by place_id
        ) b on a.id = b.id
        ) jppl on jppl.place_id = jp.id
        where jp.is_deleted = 0 and jp.source!=3
        and jp.place_name != ''
        <if test="place.placeName!=null and place.placeName!=''">
            and jp.place_name like concat('%',#{place.placeName},'%')
        </if>
        <if test="place.principal!=null and place.principal!=''">
            and jp.principal like concat('%',#{place.principal},'%')
        </if>
        <if test="place.principalPhone!=null and place.principalPhone!=''">
            and jp.principal_phone like concat('%',#{place.principalPhone},'%')
        </if>
        <if test="place.houseCode!=null and place.houseCode!=''">
            and jp.house_code like concat('%',#{place.houseCode},'%')
        </if>
        <if test="place.townStreetName!=null and place.townStreetName!=''">
            and br.town_name like concat('%',#{place.townStreetName},'%')
        </if>
        <if test="place.neiName!=null and place.neiName!=''">
            and br.name like concat('%',#{place.neiName},'%')
        </if>
        <if test="place.id!=null">
            and jp.id = #{place.id}
        </if>
        <if test="place.isNine!=null">
            and jp.is_nine = #{place.isNine}
        </if>
        <if test="place.source!=null">
            and jp.source = #{place.source}
        </if>
@@ -292,4 +386,66 @@
        </choose>
        )
    </select>
    <resultMap type="org.springblade.modules.place.dto.PlaceDTO" id="PlaceDTOResult">
        <result property="id"    column="id"    />
        <result property="houseCode"    column="house_code"    />
        <result property="buildingCode"    column="building_code"    />
        <result property="principalUserId"    column="principal_user_id"    />
        <result property="principal"    column="principal"    />
        <result property="principalIdCard"    column="principal_id_card"    />
        <result property="principalPhone"    column="principal_phone"    />
        <result property="placeName"    column="place_name"    />
        <result property="lng"    column="lng"    />
        <result property="lat"    column="lat"    />
        <result property="location"    column="location"    />
        <result property="imageUrls"    column="image_urls"    />
        <result property="gridCode"    column="grid_code"    />
        <result property="source"    column="source"    />
        <result property="status"    column="status"    />
        <result property="isScene"    column="is_scene"    />
        <result property="isNine"    column="is_nine"    />
        <result property="nineType"    column="nine_type"    />
        <result property="isFront"    column="is_front"    />
        <result property="frontType"    column="front_type"    />
        <result property="createUser"    column="create_user"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateUser"    column="update_user"    />
        <result property="updateTime"    column="update_time"    />
        <result property="remark"    column="remark"    />
        <result property="isDeleted"    column="is_deleted"    />
    </resultMap>
    <sql id="selectPlace">
       select
           id,
           house_code,
           building_code,
           principal_user_id,
           principal,
           principal_id_card,
           principal_phone,
           place_name,
           lng,
           lat,
           location,
           image_urls,
           grid_code,
           source,
           status,
           is_scene,
           is_nine,
           nine_type,
           is_front,
           front_type,
           create_user,
           create_time,
           update_user,
           update_time,
           remark,
           is_deleted
      from
           jczz_place
    </sql>
</mapper>