linwe
2024-09-03 764d883b5ea3bdc06abbec548b6df0511e567978
src/main/java/org/springblade/modules/police/mapper/PoliceAlarmRecordsMapper.xml
New file
@@ -0,0 +1,198 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.modules.police.mapper.PoliceAlarmRecordsMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="policeAlarmRecordsResultMap" type="org.springblade.modules.police.vo.PoliceAlarmRecordsVO">
    </resultMap>
    <select id="selectPoliceAlarmRecordsPage" resultMap="policeAlarmRecordsResultMap">
        select
        jpar.*,
        bdb.dict_value as alarmTypeName,
        jpag.pcs_name
        from jczz_police_alarm_records jpar
        LEFT JOIN jczz_grid jg on jg.grid_code = jpar.grid_code and jg.is_deleted = 0
        LEFT JOIN jczz_police_affairs_grid jpag on jpar.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
        LEFT JOIN blade_region br on br.code = jpag.community_code
        LEFT JOIN blade_dict_biz bdb ON bdb.dict_key = jpar.alarm_type and bdb.is_deleted = 0 and bdb.code = 'applyAlarmType'
        <where>
            <if test="vo.status != null">
                and jpar.status = #{vo.status}
            </if>
            <if test="vo.alarmDescribe != null and vo.alarmDescribe != ''">
                and jpar.alarm_describe like concat('%',#{vo.alarmDescribe},'%')
            </if>
            <if test="vo.policeName != null and vo.policeName != ''">
                and jpar.police_name like concat('%',#{vo.policeName},'%')
            </if>
            <if test="vo.pcsName != null and vo.pcsName != ''">
                and jpag.pcs_name like concat('%',#{vo.pcsName},'%')
            </if>
            <if test="vo.startTime != null and vo.startTime != ''">
                and date_format(jpar.create_time,'%Y-%m-%d') &gt;= #{vo.startTime}
            </if>
            <if test="vo.endTime != null and vo.endTime != ''">
                and date_format(jpar.create_time,'%Y-%m-%d') &lt;= #{vo.endTime}
            </if>
            <if test="vo.searchKey!=null and vo.searchKey!=''">
                and CONCAT(
                ifnull(jpar.name,''),
                ifnull(jpar.phone,''),
                ifnull(jpar.address,''),
                ifnull(jpar.alarm_describe,''),
                ifnull(jpar.police_name,'')
                ) like CONCAT ('%', #{vo.searchKey},'%')
            </if>
            <if test="isAdministrator==2">
                <choose>
                    <when test="vo.roleName != null and vo.roleName != ''">
                        <if test="vo.roleName=='wgy'">
                            <choose>
                                <when test="gridCodeList !=null and gridCodeList.size()>0">
                                    and jg.grid_code in
                                    <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
                                        #{code}
                                    </foreach>
                                </when>
                                <otherwise>
                                    and jg.grid_code in ('')
                                </otherwise>
                            </choose>
                        </if>
                        <if test="vo.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>
                                    <if test="vo.policeId != null">
                                        or jpar.police_id = #{vo.policeId}
                                    </if>
                                </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 ('')
                                )
                            </otherwise>
                        </choose>
                    </otherwise>
                </choose>
            </if>
           and jpar.is_deleted = 0
        </where>
        order by jpar.id desc,jpar.create_time desc
    </select>
    <resultMap type="org.springblade.modules.police.dto.PoliceAlarmRecordsDTO" id="PoliceAlarmRecordsDTOResult">
        <result property="id"    column="id"    />
        <result property="houseCode"    column="house_code"    />
        <result property="address"    column="address"    />
        <result property="name"    column="name"    />
        <result property="phone"    column="phone"    />
        <result property="alarmType"    column="alarm_type"    />
        <result property="injuryFlag"    column="injury_flag"    />
        <result property="gridCode"    column="grid_code"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateTime"    column="update_time"    />
        <result property="policeId"    column="police_id"    />
        <result property="policeName"    column="police_name"    />
        <result property="policePhone"    column="police_phone"    />
        <result property="isDeleted"    column="is_deleted"    />
        <result property="gender"    column="gender"    />
        <result property="jwGridCode"    column="jw_grid_code"    />
        <result property="alarmResponseTime"    column="alarm_response_time"    />
        <result property="alarmDescribe"    column="alarm_describe"    />
        <result property="publicIncidents"    column="public_incidents"    />
        <result property="status"    column="status"    />
        <result property="longitude"    column="longitude"    />
        <result property="latitude"    column="latitude"    />
    </resultMap>
    <sql id="selectPoliceAlarmRecords">
        select
            id,
            house_code,
            address,
            name,
            phone,
            alarm_type,
            injury_flag,
            grid_code,
            create_time,
            update_time,
            police_id,
            police_name,
            police_phone,
            is_deleted,
            gender,
            jw_grid_code,
            alarm_response_time,
            alarm_describe,
            public_incidents,
            status,
            longitude,
            latitude
        from
            jczz_police_alarm_records
    </sql>
<!--    <select id="selectPoliceAlarmRecordsById" parameterType="long" resultMap="PoliceAlarmRecordsDTOResult">-->
<!--        <include refid="selectPoliceAlarmRecords"/>-->
<!--        where-->
<!--        id = #{id}-->
<!--    </select>-->
<!--    <select id="selectPoliceAlarmRecordsList" parameterType="rg.springblade.modules.dto.PoliceAlarmRecordsDTO" resultMap="PoliceAlarmRecordsDTOResult">-->
<!--        <include refid="selectPoliceAlarmRecords"/>-->
<!--        <where>-->
<!--            <if test="id != null "> and id = #{id}</if>
      <if test="houseCode != null  and houseCode != ''"> and house_code = #{houseCode}</if>
      <if test="address != null  and address != ''"> and address = #{address}</if>
      <if test="name != null  and name != ''"> and name = #{name}</if>
      <if test="phone != null  and phone != ''"> and phone = #{phone}</if>
      <if test="alarmType != null  and alarmType != ''"> and alarm_type = #{alarmType}</if>
      <if test="injuryFlag != null "> and injury_flag = #{injuryFlag}</if>
      <if test="gridCode != null  and gridCode != ''"> and grid_code = #{gridCode}</if>
      <if test="createTime != null "> and create_time = #{createTime}</if>
      <if test="updateTime != null "> and update_time = #{updateTime}</if>
      <if test="policeId != null "> and police_id = #{policeId}</if>
      <if test="policeName != null  and policeName != ''"> and police_name = #{policeName}</if>
      <if test="policePhone != null  and policePhone != ''"> and police_phone = #{policePhone}</if>
      <if test="isDeleted != null "> and is_deleted = #{isDeleted}</if>
      <if test="gender != null "> and gender = #{gender}</if>
      <if test="jwGridCode != null  and jwGridCode != ''"> and jw_grid_code = #{jwGridCode}</if>
      <if test="alarmResponseTime != null "> and alarm_response_time = #{alarmResponseTime}</if>
      <if test="alarmDescribe != null  and alarmDescribe != ''"> and alarm_describe = #{alarmDescribe}</if>
      <if test="publicIncidents != null "> and public_incidents = #{publicIncidents}</if>
      <if test="status != null "> and status = #{status}</if>-->
<!--        </where>-->
<!--    </select>-->
</mapper>