linwei
2024-01-30 6ed1374e8be5ca3bf85c41e07aff0e70398f0656
src/main/java/org/springblade/modules/place/mapper/PlaceCheckMapper.xml
@@ -3,30 +3,153 @@
<mapper namespace="org.springblade.modules.place.mapper.PlaceCheckMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="placeCheckResultMap" type="org.springblade.modules.place.entity.PlaceCheckEntity">
    <resultMap id="placeCheckResultMap" type="org.springblade.modules.place.vo.PlaceCheckVO">
        <result column="id" property="id"/>
        <result column="house_code" property="houseCode"/>
        <result column="remark" property="remark"/>
        <result column="image_urls" property="imageUrls"/>
        <result column="signature_path" property="signaturePath"/>
        <result column="create_user" property="createUser"/>
        <result column="create_time" property="createTime"/>
        <result column="is_deleted" property="isDeleted"/>
        <result column="image_urls" property="imageUrls"/>
        <result column="place_name" property="placeName"/>
        <result column="location" property="location"/>
        <result column="grid_name" property="gridName"/>
        <result column="principal" property="principal"/>
        <result column="principal_phone" property="principalPhone"/>
        <result column="town_name" property="streetName"/>
        <result column="village_name" property="communityName"/>
        <collection property="patrolRecordVOList" column="id"
                    javaType="java.util.List" ofType="org.springblade.modules.patrol.entity.PatrolRecord"
                    autoMapping="true">
            <id property="placeCheckId" column="id"/>
        </collection>
    </resultMap>
    <!--自定义分页查询-->
    <select id="selectPlaceCheckPage" resultMap="placeCheckResultMap">
        select * from jczz_place_check where is_deleted = 0
        SELECT
        jpc.*,
        jp.place_name,
        jp.location,
        jg.grid_name,
        jp.principal,
        jp.principal_phone,
        br.town_name ,
        br.village_name
        FROM
        jczz_place_check jpc
        LEFT JOIN jczz_place jp ON jpc.house_code = jp.house_code
        LEFT JOIN jczz_grid jg ON jg.grid_code = jp.grid_code
        LEFT JOIN blade_region br ON br.`code` = jg.community_code
        where jpc.is_deleted = 0
        <if test="placeCheck.houseCode!=null and placeCheck.houseCode!=''">
            and house_code = #{placeCheck.houseCode}
            and jpc.house_code = #{placeCheck.houseCode}
        </if>
        <if test="placeCheck.streetName!=null and placeCheck.streetName!=''">
            and br.town_name like concat('%', #{placeCheck.streetName},'%')
        </if>
        <if test="placeCheck.communityName!=null and placeCheck.communityName!=''">
            and br.village_name like concat('%', #{placeCheck.communityName},'%')
        </if>
        <if test="placeCheck.gridName!=null and placeCheck.gridName!=''">
            and jg.grid_name like concat('%', #{placeCheck.gridName},'%')
        </if>
        <if test="placeCheck.placeName!=null and placeCheck.placeName!=''">
            and jp.place_name like concat('%', #{placeCheck.placeName},'%')
        </if>
        <if test="placeCheck.principal!=null and placeCheck.principal!=''">
            and jp.principal like concat('%', #{placeCheck.principal},'%')
        </if>
        <if test="placeCheck.principalPhone!=null and placeCheck.principalPhone!=''">
            and jp.principal_phone like concat('%', #{placeCheck.principalPhone},'%')
        </if>
        <if test="placeCheck.startTime!=null and placeCheck.startTime!=''">
            and date_format(create_time,'%Y-%m-%d') &gt;= #{placeCheck.startTime}
            and date_format(jpc.create_time,'%Y-%m-%d') &gt;= #{placeCheck.startTime}
        </if>
        <if test="placeCheck.endTime!=null and placeCheck.endTime!=''">
            and date_format(create_time,'%Y-%m-%d') &lt;= #{placeCheck.endTime}
            and date_format(jpc.create_time,'%Y-%m-%d') &lt;= #{placeCheck.endTime}
        </if>
    </select>
    <resultMap type="org.springblade.modules.place.dto.PlaceCheckDTO" id="PlaceCheckDTOResult">
        <result property="id" column="id"/>
        <result property="houseCode" column="house_code"/>
        <result property="remark" column="remark"/>
        <result property="signaturePath" column="signature_path"/>
        <result property="createUser" column="create_user"/>
        <result property="createTime" column="create_time"/>
        <result property="isDeleted" column="is_deleted"/>
        <result column="place_name" property="placeName"/>
        <result column="location" property="location"/>
        <result column="grid_name" property="gridName"/>
        <result column="principal" property="principal"/>
        <result column="principal_phone" property="principalPhone"/>
        <result column="town_name" property="streetName"/>
        <result column="village_name" property="communityName"/>
        <collection property="patrolRecordVOList" column="id"
                    javaType="java.util.List" ofType="org.springblade.modules.patrol.entity.PatrolRecord"
                    autoMapping="true">
            <id property="placeCheckId" column="id"/>
        </collection>
    </resultMap>
    <sql id="selectPlaceCheck">
       select
           id,
           house_code,
           remark,
           signature_path,
           create_user,
           create_time,
           is_deleted
      from
           jczz_place_check
    </sql>
    <select id="selectPlaceCheckById" parameterType="long" resultMap="PlaceCheckDTOResult">
        SELECT
        jpc.*,
        jp.place_name,
        jp.location,
        jg.grid_name,
        jp.principal,
        jp.principal_phone,
        br.town_name ,
        br.village_name
        FROM
        jczz_place_check jpc
        LEFT JOIN jczz_place jp ON jpc.house_code = jp.house_code
        LEFT JOIN jczz_grid jg ON jg.grid_code = jp.grid_code
        LEFT JOIN blade_region br ON br.`code` = jg.community_code
        where
            jpc.is_deleted = 0
            and  jpc.id = #{id}
        </select>
    <select id="selectPlaceCheckList" parameterType="org.springblade.modules.place.dto.PlaceCheckDTO"
            resultMap="PlaceCheckDTOResult">
        <include refid="selectPlaceCheck"/>
        <where>
            <if test="id != null ">and id = #{id}</if>
            <if test="houseCode != null  and houseCode != ''">and house_code = #{houseCode}</if>
            <if test="remark != null  and remark != ''">and remark = #{remark}</if>
            <if test="signaturePath != null  and signaturePath != ''">and signature_path = #{signaturePath}</if>
            <if test="createUser != null ">and create_user = #{createUser}</if>
            <if test="createTime != null ">and create_time = #{createTime}</if>
            <if test="isDeleted != null ">and is_deleted = #{isDeleted}</if>
        </where>
    </select>
</mapper>