EventExtendMapper.xml 5.11 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="com.xiniunet.service.railway.dal.EventExtendMapper">

    <resultMap id="eventExtendPO" type="com.xiniunet.service.railway.po.EventExtendPO">

        <id column="ID" jdbcType="NUMERIC" property="id"/>
        <result column="TENANT_ID" jdbcType="NUMERIC" property="tenantId"/>
        <result column="IS_NOTICED" jdbcType="TINYINT" property="isNoticed"/>
        <result column="NOTICE_TIME" jdbcType="TIMESTAMP" property="noticeTime"/>
        <result column="IS_HURRIED" jdbcType="TINYINT" property="isHurried"/>
        <result column="HURRY_TIME" jdbcType="TIMESTAMP" property="hurryTime"/>

        <result column="ROW_VERSION" jdbcType="NUMERIC" property="rowVersion"/>
        <result column="IS_DELETED" jdbcType="TINYINT" property="isDeleted"/>
        <result column="CREATED_BY" jdbcType="NUMERIC" property="createdBy"/>
        <result column="CREATION_TIME" jdbcType="TIMESTAMP" property="creationTime"/>
        <result column="LAST_UPDATED_BY" jdbcType="NUMERIC" property="lastUpdatedBy"/>
        <result column="LAST_UPDATE_TIME" jdbcType="TIMESTAMP" property="lastUpdateTime"/>
    </resultMap>

    <sql id="entityColumnList">
         `id`, `tenant_id`, `is_noticed`, `notice_time`, `is_hurried`, `hurry_time`,
        `row_version`,
        `is_deleted`,
        `created_by`,
        `creation_time`,
        `last_updated_by`,
        `last_update_time`
    </sql>

    <sql id="whereForFindList">
        <if test="request.isNoticed!=null"> AND `is_noticed` = #{ request.isNoticed }</if>
        <if test="request.noticeTimeFrom!=null"> AND `notice_time` <![CDATA[ >= ]]> #{ request.noticeTimeFrom }</if>
        <if test="request.noticeTimeTo!=null"> AND `notice_time` <![CDATA[ <= ]]> #{ request.noticeTimeTo }</if>
        <if test="request.isHurried!=null"> AND `is_hurried` = #{ request.isHurried }</if>
        <if test="request.hurryTimeFrom!=null"> AND `hurry_time` <![CDATA[ >= ]]> #{ request.hurryTimeFrom }</if>
        <if test="request.hurryTimeTo!=null"> AND `hurry_time` <![CDATA[ <= ]]> #{ request.hurryTimeTo }</if>
    </sql>

    <select id="find" resultMap="eventExtendPO">
        SELECT
            <include refid="entityColumnList"/>
        FROM
            `rw_event_extend`
        WHERE
            `is_deleted` = 0
            AND `tenant_id` = #{ passport.tenantId }
            <include refid="whereForFindList" />
            ORDER BY id DESC
        <if test="request.pageSize !=0">
            LIMIT #{ request.beginItemIndex }, #{ request.pageSize }
        </if>
    </select>

    <select id="findCount" resultType="java.lang.Long">
        SELECT
            COUNT(*)
        FROM
            `rw_event_extend`
        WHERE
            `is_deleted` = 0
            AND `tenant_id` = #{ passport.tenantId }
            <include refid="whereForFindList" />
    </select>

    <update id="update">
        UPDATE
            `rw_event_extend`
        SET
            `is_noticed` = #{ request.isNoticed },
            `notice_time` = #{ request.noticeTime },
            `is_hurried` = #{ request.isHurried },
            `hurry_time` = #{ request.hurryTime },
            `last_updated_by` = #{ passport.userId },
            `last_updated_by_name` = #{ passport.userName },
            `last_update_time` = SYSDATE(),
            `row_version` = #{ request.rowVersion }+1
        WHERE
            `is_deleted` = 0
            AND `tenant_id` = #{ passport.tenantId }
            AND `id` = #{ request.id }
            AND `row_version` = #{ request.rowVersion }
    </update>

    <insert id="insert">
        INSERT INTO
        `rw_event_extend`
        (
        <include refid="entityColumnList"/>
        )
        VALUES
        (
        #{ eventExtendPO.id },
        #{ passport.tenantId },
        #{ eventExtendPO.isNoticed },
        #{ eventExtendPO.noticeTime },
        #{ eventExtendPO.isHurried },
        #{ eventExtendPO.hurryTime},

        0,0,#{ passport.userId },sysdate(),null,null
        )
    </insert>

    <delete id="delete">
        UPDATE
            `rw_event_extend`
        SET
            `IS_DELETED` = 1
          ,`LAST_UPDATED_BY`=#{ passport.userId }
          ,`LAST_UPDATE_TIME`=SYSDATE()
        WHERE
            `IS_DELETED`=0
          AND `TENANT_ID`=#{ passport.tenantId }
          AND `ID` = #{id}
    </delete>

    <delete id="deleteBatch">
        UPDATE
            `rw_event_extend`
        SET
        `IS_DELETED` = 1
        ,`LAST_UPDATED_BY`=#{ passport.userId }
        ,`LAST_UPDATE_TIME`=SYSDATE()
        WHERE
        `IS_DELETED`=0
        AND `TENANT_ID`=#{ passport.tenantId }
        AND `ID` in
        <foreach collection="list" item= "id" index ="index" open= "(" close =")" separator=",">
            #{id}
        </foreach >
    </delete>

    <select id="getById" resultMap="eventExtendPO">
        SELECT
        <include refid="entityColumnList" />
        FROM
        `rw_event_extend`
        WHERE
        `IS_DELETED` = 0
        AND `ID` = #{id}
        AND `TENANT_ID`=#{ passport.tenantId }
    </select>
</mapper>