170 lines
5.8 KiB
XML
170 lines
5.8 KiB
XML
|
<?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.iocoder.mall.promotion.biz.dao.CouponTemplateMapper">
|
||
|
|
||
|
<sql id="FIELDS">
|
||
|
id, title, description, type, code_type,
|
||
|
status, quota, total, price_available, range_type,
|
||
|
range_values, date_type, valid_start_time, valid_end_time, fixed_start_term, fixed_end_term,
|
||
|
preferential_type, percent_off, price_off, discount_price_limit, stat_fetch_num,
|
||
|
create_time
|
||
|
</sql>
|
||
|
|
||
|
<!-- <select id="selectListByPidAndStatusOrderBySort" resultType="CouponTemplateDO">-->
|
||
|
<!-- SELECT-->
|
||
|
<!-- <include refid="FIELDS" />-->
|
||
|
<!-- FROM coupon_template-->
|
||
|
<!-- WHERE pid = #{pid}-->
|
||
|
<!-- AND status = #{status}-->
|
||
|
<!-- AND deleted = 0-->
|
||
|
<!-- ORDER BY sort ASC-->
|
||
|
<!-- </select>-->
|
||
|
|
||
|
<!-- <select id="selectList" resultType="CouponTemplateDO">-->
|
||
|
<!-- SELECT-->
|
||
|
<!-- <include refid="FIELDS" />-->
|
||
|
<!-- FROM coupon_template-->
|
||
|
<!-- WHERE deleted = 0-->
|
||
|
<!-- </select>-->
|
||
|
|
||
|
<select id="selectById" parameterType="Integer" resultType="CouponTemplateDO">
|
||
|
SELECT
|
||
|
<include refid="FIELDS" />
|
||
|
FROM coupon_template
|
||
|
WHERE id = #{id}
|
||
|
</select>
|
||
|
|
||
|
<select id="selectListByIds" resultType="CouponTemplateDO">
|
||
|
SELECT
|
||
|
<include refid="FIELDS"/>
|
||
|
FROM coupon_template
|
||
|
WHERE id IN
|
||
|
<foreach item="id" collection="ids" separator="," open="(" close=")" index="">
|
||
|
#{id}
|
||
|
</foreach>
|
||
|
</select>
|
||
|
|
||
|
<select id="selectListByPage" resultType="CouponTemplateDO">
|
||
|
SELECT
|
||
|
<include refid="FIELDS" />
|
||
|
FROM coupon_template
|
||
|
<where>
|
||
|
<if test="type != null">
|
||
|
AND type = #{type}
|
||
|
</if>
|
||
|
<if test="title != null">
|
||
|
AND title LIKE "%"#{title}"%"
|
||
|
</if>
|
||
|
<if test="status != null">
|
||
|
AND status = #{status}
|
||
|
</if>
|
||
|
<if test="preferentialType != null">
|
||
|
AND preferential_type = #{preferentialType}
|
||
|
</if>
|
||
|
</where>
|
||
|
LIMIT #{offset}, #{limit}
|
||
|
</select>
|
||
|
|
||
|
<select id="selectCountByPage" resultType="Integer">
|
||
|
SELECT
|
||
|
COUNT(1)
|
||
|
FROM coupon_template
|
||
|
<where>
|
||
|
<if test="type != null">
|
||
|
AND type = #{type}
|
||
|
</if>
|
||
|
<if test="title != null">
|
||
|
AND title LIKE "%"#{title}"%"
|
||
|
</if>
|
||
|
<if test="status != null">
|
||
|
AND status = #{status}
|
||
|
</if>
|
||
|
<if test="preferentialType != null">
|
||
|
AND preferential_type = #{preferentialType}
|
||
|
</if>
|
||
|
</where>
|
||
|
</select>
|
||
|
|
||
|
<insert id="insert" parameterType="CouponTemplateDO" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
|
||
|
INSERT INTO coupon_template (
|
||
|
title, description, type, code_type,
|
||
|
status, quota, total, price_available, range_type,
|
||
|
range_values, date_type, valid_start_time, valid_end_time, fixed_start_term, fixed_end_term,
|
||
|
preferential_type, percent_off, price_off, discount_price_limit, stat_fetch_num,
|
||
|
create_time
|
||
|
) VALUES (
|
||
|
#{title}, #{description}, #{type}, #{codeType},
|
||
|
#{status}, #{quota}, #{total}, #{priceAvailable}, #{rangeType},
|
||
|
#{rangeValues}, #{dateType}, #{validStartTime}, #{validEndTime}, #{fixedStartTerm}, #{fixedEndTerm}
|
||
|
#{preferentialType}, #{percentOff}, #{priceOff}, #{discountPriceLimit}, #{statFetchNum},
|
||
|
#{createTime}
|
||
|
)
|
||
|
</insert>
|
||
|
|
||
|
<update id="update" parameterType="CouponTemplateDO">
|
||
|
UPDATE coupon_template
|
||
|
<set>
|
||
|
<if test="title != null">
|
||
|
title = #{title},
|
||
|
</if>
|
||
|
<if test="description != null">
|
||
|
description = #{description},
|
||
|
</if>
|
||
|
<if test="status != null">
|
||
|
status = #{status},
|
||
|
</if>
|
||
|
<if test="quota != null">
|
||
|
quota = #{quota},
|
||
|
</if>
|
||
|
<if test="total != null">
|
||
|
total = #{total},
|
||
|
</if>
|
||
|
<if test="priceAvailable != null">
|
||
|
price_available = #{priceAvailable},
|
||
|
</if>
|
||
|
<if test="rangeType != null">
|
||
|
range_type = #{rangeType},
|
||
|
</if>
|
||
|
<if test="rangeValues != null">
|
||
|
range_values = #{rangeValues},
|
||
|
</if>
|
||
|
<if test="dateType != null">
|
||
|
date_type = #{dateType},
|
||
|
</if>
|
||
|
<if test="validStartTime != null">
|
||
|
valid_start_time = #{validStartTime},
|
||
|
</if>
|
||
|
<if test="validEndTime != null">
|
||
|
valid_end_time = #{validEndTime},
|
||
|
</if>
|
||
|
<if test="fixedStartTerm != null">
|
||
|
fixed_start_term = #{fixedStartTerm},
|
||
|
</if>
|
||
|
<if test="fixedEndTerm != null">
|
||
|
fixed_end_term = #{fixedEndTerm},
|
||
|
</if>
|
||
|
<if test="preferentialType != null">
|
||
|
preferential_type = #{preferentialType},
|
||
|
</if>
|
||
|
<if test="percentOff != null">
|
||
|
percent_off = #{percentOff},
|
||
|
</if>
|
||
|
<if test="priceOff != null">
|
||
|
price_off = #{priceOff},
|
||
|
</if>
|
||
|
<if test="discountPriceLimit != null">
|
||
|
discount_price_limit = #{discountPriceLimit},
|
||
|
</if>
|
||
|
</set>
|
||
|
WHERE id = #{id}
|
||
|
</update>
|
||
|
|
||
|
<update id="updateStatFetchNumIncr" parameterType="Integer">
|
||
|
UPDATE coupon_template
|
||
|
SET stat_fetch_Num = stat_fetch_Num + 1
|
||
|
WHERE id = #{id}
|
||
|
AND total > stat_fetch_Num
|
||
|
</update>
|
||
|
|
||
|
</mapper>
|