VourcherDetailMapper.xml 3.66 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.lecuntao.ordering.customization.dal.VourcherDetailMapper">

    <sql id="whereForFindList">
        <if test="request.id!=null"> AND `ID` =#{ request.id }</if>
        <if test="request.memberId!=null"> AND `MEMBER_ID` LIKE CONCAT ('%',#{ request.memberId  },'%')</if>
        <if test="request.ticketNumber!=null"> AND `TICKET_NUMBER` =#{ request.ticketNumber }</if>
        <if test="request.startSubmitTime!=null"> AND  `SEND_TIME` &gt;=#{ request.startSubmitTime }</if>
        <if test="request.endSubmitTime!=null"> AND  `SEND_TIME`  &lt;=#{ request.endSubmitTime }</if>
        <if test="request.dateId!=null">AND `DATE_ID`=#{request.dateId}</if>
    </sql>

    <sql id="whereForSearchList">
        AND
        (
            1=0
            OR `MEMBER_ID` LIKE CONCAT ('%',#{  request.keyword  },'%')  
        )
    </sql>

    <select id="find" resultMap="vourcherDetailPO">
        SELECT
            <include refid="entityColumnList"/>
        FROM
            `CUS_VOURCHER_DETAIL`
        WHERE
            `IS_DELETED`=0
            AND  `OP`=#{request.op}
            <include refid="whereForFindList" />
        <if test="request.pageSize !=0">
            LIMIT #{ request.beginItemIndex }, #{ request.pageSize }
        </if>
    </select>

    <select id="findCount" resultType="java.lang.Long">
        SELECT
            COUNT(*)
        FROM
            `CUS_VOURCHER_DETAIL`
        WHERE
            `IS_DELETED`=0
            AND  `OP`=#{request.op}
            <include refid="whereForFindList" />
    </select>

    <select id="search" resultMap="vourcherDetailPO">
        SELECT
            <include refid="entityColumnList"/>
        FROM
            `CUS_VOURCHER_DETAIL`
        WHERE
            `IS_DELETED`=0

            <if test="request.keyword !=null">
                <include refid="whereForSearchList" />
            </if>
        <if test="request.pageSize !=0">
            LIMIT #{ request.beginItemIndex }, #{ request.pageSize }
        </if>
    </select>

    <select id="searchCount" resultType="java.lang.Long">
        SELECT
            COUNT(*)
        FROM
            `CUS_VOURCHER_DETAIL`
        WHERE
            `IS_DELETED`=0

            <if test="request.keyword !=null">
                <include refid="whereForSearchList" />
            </if>
    </select>

    <select id="existByCode" resultType="java.lang.Long">
        SELECT
            COUNT(*)
        FROM
            `CUS_VOURCHER_DETAIL`
        WHERE
            `IS_DELETED`=0

            AND `ID` != #{id}
            AND `CODE` = #{code}
    </select>

    <update id="update">
        UPDATE
            `CUS_VOURCHER_DETAIL`
        SET
            `MEMBER_ID`=#{ request.memberId },
            `TICKET_ID`=#{ request.ticketId },
            `TICKET_NAME`=#{ request.ticketName },
            `TICKET_CATEGORY`=#{ request.ticketCategory },
            `TICKET_TYPE`=#{ request.ticketType },
            `TICKET_NUMBER`=#{ request.ticketNumber },
            `SEND_TIME`=#{ request.sendTime },
            `USE_TIME`=#{ request.useTime },
            `ORDER_NUMBER`=#{ request.orderNumber },
            `DISCOUNT_AMOUNT`=#{ request.discountAmount },
            `SUMMARY`=#{ request.summary },
            `DATE_ID`=#{ request.dateId},
            `LAST_UPDATED_BY`=#{ passport.userId },
            `LAST_UPDATE_TIME`=SYSDATE(),
            `ROW_VERSION`=#{ request.rowVersion }+1
        WHERE
            `IS_DELETED`=0

            AND `ID` = #{ request.id }
            AND `ROW_VERSION` = #{ request.rowVersion }
    </update>


</mapper>