SysNoticeMapper.xml 2.73 KB
<?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.thingsboard.server.dao.yunteng.mapper.SysNoticeMapper">
    <resultMap type="org.thingsboard.server.common.data.yunteng.dto.SysNoticeDTO" id="sysNotice">
        <result property="id" column="id"/>
        <result property="type" column="type" typeHandler="org.apache.ibatis.type.EnumTypeHandler"/>
        <result property="title" column="title"/>
        <result property="content" column="content"/>
        <result property="receiverType" column="receiver_type"/>
        <result property="status" column="status"/>
        <result property="senderName" column="sender_name"/>
        <result property="senderDate" column="sender_date"/>
        <result property="creator" column="creator"/>
        <result property="updater" column="updater"/>
        <result property="createTime" column="create_time"/>
        <result property="updateTime" column="update_time"/>
        <result property="tenantId" column="tenant_id"/>
        <result property="pointId" column="point_id"/>
        <result property="avatar" column="avatar"/>
    </resultMap>

    <sql id="dict">
        SELECT sdi.item_text
        FROM sys_dict_item sdi
                 LEFT JOIN sys_dict sd ON sd.id = sdi.dict_id
        WHERE sdi.status = 1
    </sql>

    <sql id="columns">
        SELECT
        sn.id id,
        sn.type AS type,
        sn.title title,
        sn.content AS content,sn.receiver_type,sn.status,
<!--        (-->
<!--        <include refid="dict"/>-->
<!--        AND sd.dict_code = 'receiver_type' AND sdi.item_value = sn.receiver_type-->
<!--        ) receiver_type,-->
<!--        (-->
<!--        <include refid="dict"/>-->
<!--        AND sd.dict_code = 'draft_status' AND sdi.item_value = sn.status-->
<!--        ) status,-->
        sn.sender_name sender_name,
        sn.sender_date sender_date,
        sn.creator creator,
        sn.updater updater,
        sn.create_time create_time,
        sn.update_time update_time,
        sn.tenant_id tenant_id,
        sn.point_id  point_id,
        sn.avatar  avatar
        FROM sys_notice sn
    </sql>
    <select id="page" resultMap="sysNotice">
        <include refid="columns"/>
        WHERE
        sn.tenant_id = #{queryMap.tenantId}
        <if test="queryMap.type != null">
        AND  sn.type = #{queryMap.type}
        </if>
        <if test="queryMap.creator != null and queryMap.creator != ''">
            AND  sn.creator = #{queryMap.creator}
        </if>
    </select>
    <select id="get" resultMap="sysNotice">
        <include refid="columns"/>
        WHERE
        sn.tenant_id = #{tenantId}
        AND sn.id = #{id}
    </select>

</mapper>