<?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="cn.roadm.mapper.SendContentTemplateMapper">

    <resultMap type="SendContentTemplate" id="SendContentTemplateResultMap">
        <id column="id" property="id" />
        <result column="name" property="name" />
        <result column="content" property="content" />
        <result column="spId" property="spId" />
        <result column="spName" property="spName"/>
        <result column="uid" property="uid" />
        <result column="createTime" property="createTime" />
        <result column="status" property="status" />
        <result column="auditTime" property="auditTime" />
        <result column="auditUid" property="auditUid" />
        <result column="failReason" property="failReason" />
        <result column="type" property="type" />
        <result column="variable" property="variable" />
        <result column="purpose" property="purpose" />
        <result column="sign" property="sign" />
        <result column="isDelete" property="isDelete" />
        <result column="modeId" property="modeId" />
    </resultMap>

    <select id="listPageSendContentTemplate" parameterType="SendContentTemplate"
            resultMap="SendContentTemplateResultMap">
        select s.id,s.name,s.content,s.spId,s.uid,s.createTime,s.status,s.auditTime,sp.sp_name as spName,
        s.auditUid,s.failReason,s.type,s.variable,s.purpose,s.sign,s.is_delete,s.mode_id
        from sms_send_content_template s left join sms_sp_info sp on sp.id=s.spId
        <where>
            <if test="true">
                s.is_delete = 0
            </if>
            <if test="name != null and name != ''">
                AND s.name LIKE CONCAT('%', #{name}, '%')
            </if>
            <if test="spId != null">
                AND s.spId = #{spId}
            </if>
            <if test="createTime != null and createTime != ''">
                AND s.createTime &gt;= #{createTime}
            </if>
            <if test="createTime1 != null and createTime1 != ''">
                AND s.createTime &lt;= #{createTime1}
            </if>
        </where>
        order by s.id desc
    </select>

    <select id="querySendContentTemplateById" parameterType="java.lang.Integer"
            resultType="SendContentTemplate">
        select s.id,s.name,s.content,s.spId,s.uid,s.createTime,s.status,s.auditTime,
        s.auditUid,s.failReason,s.type,s.variable,s.purpose,s.sign,s.is_delete,s.mode_id
        from sms_send_content_template s
        where id = #{id}
    </select>

    <update id="editSendMessageTemplate" parameterType="cn.roadm.bo.SendMessageTemplateEditRequestVo">
        UPDATE sms_send_content_template
        SET content = #{newContent},
            purpose = #{templatePurpose}
        WHERE spId = #{spId}
          AND id = #{id}
    </update>

    <update id="auditSendMessageTemplate" parameterType="SendContentTemplate">
        UPDATE sms_send_content_template
        SET status = #{status},
            auditTime = #{auditTime},
            auditUid = #{auditUid},
            failReason = #{failReason}
        WHERE id = #{id}
    </update>

    <update id="deleteSendMessageTemplate" parameterType="SendContentTemplate">
        UPDATE sms_send_content_template
        SET is_delete = 1
        WHERE id = #{id}
    </update>
</mapper>