Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
8c84841362
@ -0,0 +1,102 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api;
|
||||||
|
|
||||||
|
import cn.iocoder.common.framework.vo.CommonResult;
|
||||||
|
import cn.iocoder.mall.promotion.api.bo.CouponCardBO;
|
||||||
|
import cn.iocoder.mall.promotion.api.bo.CouponCardTemplatePageBO;
|
||||||
|
import cn.iocoder.mall.promotion.api.bo.CouponCodeTemplateBO;
|
||||||
|
import cn.iocoder.mall.promotion.api.bo.CouponCodeTemplatePageBO;
|
||||||
|
import cn.iocoder.mall.promotion.api.dto.*;
|
||||||
|
|
||||||
|
public interface CouponService {
|
||||||
|
|
||||||
|
// ========== 优惠劵(码)模板 ==========
|
||||||
|
|
||||||
|
CommonResult<CouponCodeTemplatePageBO> getCouponCodeTemplatePage(CouponCodeTemplatePageDTO couponCodeTemplatePageDTO);
|
||||||
|
|
||||||
|
CommonResult<CouponCardTemplatePageBO> getCouponCardTemplatePage(CouponCardTemplatePageDTO couponCardTemplatePageDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建优惠码模板
|
||||||
|
*
|
||||||
|
* @param couponCodeTemplateAddDTO 优惠码模板添加 DTO
|
||||||
|
* @return 优惠码模板
|
||||||
|
*/
|
||||||
|
CommonResult<CouponCodeTemplateBO> addCouponCodeTemplate(CouponCodeTemplateAddDTO couponCodeTemplateAddDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建优惠劵模板
|
||||||
|
*
|
||||||
|
* @param couponCardTemplateAddDTO 优惠码模板添加 DTO
|
||||||
|
* @return 优惠劵模板
|
||||||
|
*/
|
||||||
|
CommonResult<CouponCodeTemplateBO> addCouponCardTemplate(CouponCardTemplateAddDTO couponCardTemplateAddDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新优惠码模板
|
||||||
|
*
|
||||||
|
* @param couponCodeTemplateUpdateDTO 优惠码模板修改 DTO
|
||||||
|
* @return 是否成功
|
||||||
|
*/
|
||||||
|
CommonResult<Boolean> updateCouponCodeTemplate(CouponCodeTemplateUpdateDTO couponCodeTemplateUpdateDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新优惠劵模板
|
||||||
|
*
|
||||||
|
* @param couponCardTemplateUpdateDTO 优惠劵模板修改 DTO
|
||||||
|
* @return 是否成功
|
||||||
|
*/
|
||||||
|
CommonResult<Boolean> updateCouponCardTemplate(CouponCardTemplateUpdateDTO couponCardTemplateUpdateDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新优惠劵(码)模板的状态
|
||||||
|
*
|
||||||
|
* @param adminId 操作管理员编号
|
||||||
|
* @param couponTemplateId 模板编号
|
||||||
|
* @param status 状态
|
||||||
|
* @return 是否成功
|
||||||
|
*/
|
||||||
|
CommonResult<Boolean> updateCouponTemplateStatus(Integer adminId, Integer couponTemplateId, Integer status);
|
||||||
|
|
||||||
|
// ========== 优惠劵 ==========
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 基于优惠劵模板,领取优惠劵
|
||||||
|
*
|
||||||
|
* @param userId 用户编号
|
||||||
|
* @param couponTemplateId 优惠劵模板
|
||||||
|
* @return 优惠劵
|
||||||
|
*/
|
||||||
|
CommonResult<CouponCardBO> addCouponCard(Integer userId, Integer couponTemplateId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 使用优惠劵下单
|
||||||
|
*
|
||||||
|
* @param userId 用户编号
|
||||||
|
* @param couponCardId 优惠劵编号
|
||||||
|
* @param usedOrderId 下单的编号
|
||||||
|
* @param usedPrice 下单的价格
|
||||||
|
* @return 是否成功
|
||||||
|
*/
|
||||||
|
CommonResult<Boolean> useCouponCard(Integer userId, Integer couponCardId, Integer usedOrderId, Integer usedPrice);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 取消优惠劵的使用
|
||||||
|
*
|
||||||
|
* @param userId 用户编号
|
||||||
|
* @param couponCardId 优惠劵编号
|
||||||
|
* @return 是否成功
|
||||||
|
*/
|
||||||
|
CommonResult<Boolean> cancelUseCouponCard(Integer userId, Integer couponCardId);
|
||||||
|
|
||||||
|
// ========== 优惠码 ==========
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 使用优惠码,兑换优惠劵
|
||||||
|
*
|
||||||
|
* @param userId 用户编号
|
||||||
|
* @param code 优惠码
|
||||||
|
* @return 优惠劵
|
||||||
|
*/
|
||||||
|
CommonResult<CouponCardBO> useCouponCode(Integer userId, String code);
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.bo;
|
||||||
|
|
||||||
|
public class CouponCardBO {
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.bo;
|
||||||
|
|
||||||
|
public class CouponCardTemplateBO {
|
||||||
|
}
|
@ -0,0 +1,5 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.bo;
|
||||||
|
|
||||||
|
public class CouponCardTemplatePageBO {
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.bo;
|
||||||
|
|
||||||
|
public class CouponCodeTemplateBO {
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.bo;
|
||||||
|
|
||||||
|
public class CouponCodeTemplatePageBO {
|
||||||
|
}
|
@ -0,0 +1,119 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.dto;
|
||||||
|
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
public class CouponCardTemplateAddDTO {
|
||||||
|
|
||||||
|
// ========== 基本信息 BEGIN ==========
|
||||||
|
/**
|
||||||
|
* 标题
|
||||||
|
*/
|
||||||
|
@NotEmpty(message = "标题不能为空")
|
||||||
|
@Length(min = 6, max = 16, message = "标题长度为 {min}-{max} 位")
|
||||||
|
private String title;
|
||||||
|
/**
|
||||||
|
* 使用说明
|
||||||
|
*/
|
||||||
|
@Length(max = 255, message = "使用说明最大长度为 {max} 位")
|
||||||
|
private String description;
|
||||||
|
// ========== 基本信息 END ==========
|
||||||
|
|
||||||
|
// ========== 领取规则 BEGIN ==========
|
||||||
|
/**
|
||||||
|
* 每人限领个数
|
||||||
|
*
|
||||||
|
* null - 则表示不限制
|
||||||
|
*/
|
||||||
|
private Integer quota;
|
||||||
|
/**
|
||||||
|
* 剩余可用库存
|
||||||
|
*
|
||||||
|
* null - 则表示无限库存
|
||||||
|
*/
|
||||||
|
private Integer stock;
|
||||||
|
// ========== 领取规则 END ==========
|
||||||
|
|
||||||
|
// ========== 使用规则 BEGIN ==========
|
||||||
|
/**
|
||||||
|
* 是否设置满多少金额可用,单位:分
|
||||||
|
*
|
||||||
|
* 0-不限制
|
||||||
|
* 大于0-多少金额可用
|
||||||
|
*/
|
||||||
|
@NotNull(message = "使用金额门槛不能为空")
|
||||||
|
private Integer priceAvailable;
|
||||||
|
/**
|
||||||
|
* 可用范围的类型
|
||||||
|
*
|
||||||
|
* 10-全部(ALL):所有可用
|
||||||
|
* 20-部分(PART):部分商品可用,或指定商品可用
|
||||||
|
* 21-部分(PART):部分商品不可用,或指定商品可用
|
||||||
|
* 30-部分(PART):部分分类可用,或指定商品可用
|
||||||
|
* 31-部分(PART):部分分类不可用,或指定商品可用
|
||||||
|
*/
|
||||||
|
@NotNull(message = "可用范围的类型不能为空")
|
||||||
|
private Integer rangeType;
|
||||||
|
/**
|
||||||
|
* 指定商品 / 分类列表,使用逗号分隔商品编号
|
||||||
|
*/
|
||||||
|
private String rangeValues;
|
||||||
|
/**
|
||||||
|
* 生效日期类型
|
||||||
|
*
|
||||||
|
* 1-固定日期
|
||||||
|
* 2-领取日期:领到券 {@link #fixedTerm} 日开始 N 天内有效
|
||||||
|
*/
|
||||||
|
@NotNull(message = "生效日期类型不能为空")
|
||||||
|
private Integer dateType;
|
||||||
|
/**
|
||||||
|
* 固定日期-生效开始时间
|
||||||
|
*/
|
||||||
|
private Date validStartTime;
|
||||||
|
/**
|
||||||
|
* 固定日期-生效结束时间
|
||||||
|
*/
|
||||||
|
private Date validEndTime;
|
||||||
|
// /**
|
||||||
|
// * 领取日期-开始天数
|
||||||
|
// *
|
||||||
|
// * 例如,0-当天;1-次天
|
||||||
|
// */
|
||||||
|
// private Integer fixedBeginTerm;
|
||||||
|
/**
|
||||||
|
* 领取日期-结束天数
|
||||||
|
*/
|
||||||
|
private Integer fixedTerm;
|
||||||
|
// ========== 使用规则 END ==========
|
||||||
|
|
||||||
|
// ========== 使用效果 BEGIN ==========
|
||||||
|
/**
|
||||||
|
* 优惠类型
|
||||||
|
*
|
||||||
|
* 1-代金卷
|
||||||
|
* 2-折扣卷
|
||||||
|
*/
|
||||||
|
private Integer preferentialType;
|
||||||
|
/**
|
||||||
|
* 折扣百分比。
|
||||||
|
*
|
||||||
|
* 例如,80% 为 80。
|
||||||
|
* 当 100% 为 100 ,则代表免费。
|
||||||
|
*/
|
||||||
|
private Integer percentOff;
|
||||||
|
/**
|
||||||
|
* 优惠金额,单位:分
|
||||||
|
*/
|
||||||
|
private Integer priceOff;
|
||||||
|
/**
|
||||||
|
* 折扣上限,仅在 {@link #preferentialType} 等于 2 时生效。
|
||||||
|
*
|
||||||
|
* 例如,折扣上限为 20 元,当使用 8 折优惠券,订单金额为 1000 元时,最高只可折扣 20 元,而非 80 元。
|
||||||
|
*/
|
||||||
|
private Integer discountPriceLimit;
|
||||||
|
// ========== 使用效果 END ==========
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,21 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.dto;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 优惠劵模板分页 DTO
|
||||||
|
*/
|
||||||
|
public class CouponCardTemplatePageDTO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 标题
|
||||||
|
*/
|
||||||
|
private String title;
|
||||||
|
/**
|
||||||
|
* 状态
|
||||||
|
*/
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 优惠类型
|
||||||
|
*/
|
||||||
|
private Integer preferentialType;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.dto;
|
||||||
|
|
||||||
|
public class CouponCardTemplateUpdateDTO {
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.dto;
|
||||||
|
|
||||||
|
public class CouponCodeTemplateAddDTO {
|
||||||
|
}
|
@ -0,0 +1,21 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.dto;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 优惠码模板分页 DTO
|
||||||
|
*/
|
||||||
|
public class CouponCodeTemplatePageDTO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 标题
|
||||||
|
*/
|
||||||
|
private String title;
|
||||||
|
/**
|
||||||
|
* 状态
|
||||||
|
*/
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 优惠类型
|
||||||
|
*/
|
||||||
|
private Integer preferentialType;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.api.dto;
|
||||||
|
|
||||||
|
public class CouponCodeTemplateUpdateDTO {
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package cn.iocoder.mall.promotion.biz.dao;
|
||||||
|
|
||||||
|
import cn.iocoder.mall.promotion.biz.dataobject.CouponTemplateDO;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Repository
|
||||||
|
public interface CouponTemplateMapper {
|
||||||
|
|
||||||
|
CouponTemplateDO selectById(@Param("id") Integer id);
|
||||||
|
|
||||||
|
List<CouponTemplateDO> selectListByPage(@Param("title") String title,
|
||||||
|
@Param("status") Integer status,
|
||||||
|
@Param("preferentialType") Integer preferentialType,
|
||||||
|
@Param("offset") Integer offset,
|
||||||
|
@Param("limit") Integer limit);
|
||||||
|
|
||||||
|
Integer selectCountByPage(@Param("title") String title,
|
||||||
|
@Param("status") Integer status,
|
||||||
|
@Param("preferentialType") Integer preferentialType);
|
||||||
|
|
||||||
|
void insert(CouponTemplateDO couponTemplate);
|
||||||
|
|
||||||
|
int update(CouponTemplateDO couponTemplate);
|
||||||
|
|
||||||
|
}
|
@ -7,7 +7,7 @@ import java.util.Date;
|
|||||||
/**
|
/**
|
||||||
* 优惠劵 DO
|
* 优惠劵 DO
|
||||||
*/
|
*/
|
||||||
public class CouponDO extends BaseDO {
|
public class CouponCardDO extends BaseDO {
|
||||||
|
|
||||||
// ========== 基本信息 BEGIN ==========
|
// ========== 基本信息 BEGIN ==========
|
||||||
/**
|
/**
|
||||||
@ -25,13 +25,9 @@ public class CouponDO extends BaseDO {
|
|||||||
/**
|
/**
|
||||||
* 优惠码状态
|
* 优惠码状态
|
||||||
*
|
*
|
||||||
* 1-生效中
|
* 1-未使用
|
||||||
* 2-已失效
|
* 2-已使用
|
||||||
* 3-已过期
|
* 3-已失效
|
||||||
* 4-已删除
|
|
||||||
* 5-已使用
|
|
||||||
*
|
|
||||||
* TODO 需要讨论下
|
|
||||||
*/
|
*/
|
||||||
private Integer status;
|
private Integer status;
|
||||||
|
|
||||||
@ -103,6 +99,9 @@ public class CouponDO extends BaseDO {
|
|||||||
* 使用时间
|
* 使用时间
|
||||||
*/
|
*/
|
||||||
private Date usedTime;
|
private Date usedTime;
|
||||||
|
|
||||||
|
// TODO 芋艿,后续要加优惠劵的使用日志,因为下单后,可能会取消。
|
||||||
|
|
||||||
// ========== 使用情况 END ==========
|
// ========== 使用情况 END ==========
|
||||||
|
|
||||||
}
|
}
|
@ -7,7 +7,7 @@ import java.util.Date;
|
|||||||
/**
|
/**
|
||||||
* 优惠劵(码)模板 DO
|
* 优惠劵(码)模板 DO
|
||||||
*
|
*
|
||||||
* 当用户领取时,会生成 {@link CouponDO} 优惠劵(码)。
|
* 当用户领取时,会生成 {@link CouponCardDO} 优惠劵(码)。
|
||||||
*/
|
*/
|
||||||
public class CouponTemplateDO extends BaseDO {
|
public class CouponTemplateDO extends BaseDO {
|
||||||
|
|
||||||
@ -43,36 +43,25 @@ public class CouponTemplateDO extends BaseDO {
|
|||||||
/**
|
/**
|
||||||
* 优惠码状态
|
* 优惠码状态
|
||||||
*
|
*
|
||||||
* 1-生效中
|
* 1-开启中
|
||||||
* 2-已失效
|
* 2-禁用中
|
||||||
* 3-已过期
|
* 3-已过期
|
||||||
* 4-已删除
|
|
||||||
*
|
*
|
||||||
* 当优惠劵(码)有效时,可以手动操作,设置成无效。
|
* 当优惠劵(码)开启中,可以手动操作,设置禁用中。
|
||||||
*
|
|
||||||
* TODO 需要讨论下
|
|
||||||
*/
|
*/
|
||||||
private Integer status;
|
private Integer status;
|
||||||
// /**
|
// /**
|
||||||
// * 是否可分享领取链接
|
// * 是否可分享领取链接
|
||||||
// */
|
// */
|
||||||
// private Boolean isShare;
|
// private Boolean isShare;
|
||||||
/**
|
// /**
|
||||||
* 设置为失效时间
|
// * 设置为失效时间
|
||||||
*/
|
// */
|
||||||
private Date invalidTime;
|
// private Date invalidTime;
|
||||||
/**
|
// /**
|
||||||
* 删除时间
|
// * 删除时间
|
||||||
*/
|
// */
|
||||||
private Date deleteTime;
|
// private Date deleteTime;
|
||||||
/**
|
|
||||||
* 可领取的开始时间
|
|
||||||
*/
|
|
||||||
private Date beginTime;
|
|
||||||
/**
|
|
||||||
* 可领取的结束时间
|
|
||||||
*/
|
|
||||||
private Date endTime;
|
|
||||||
|
|
||||||
// ========== 基本信息 END ==========
|
// ========== 基本信息 END ==========
|
||||||
|
|
||||||
@ -211,14 +200,14 @@ public class CouponTemplateDO extends BaseDO {
|
|||||||
// * 领取优惠券的人数
|
// * 领取优惠券的人数
|
||||||
// */
|
// */
|
||||||
// private Integer statFetchUserNum;
|
// private Integer statFetchUserNum;
|
||||||
// /**
|
/**
|
||||||
// * 领取优惠券的次数
|
* 领取优惠券的次数
|
||||||
// */
|
*/
|
||||||
// private Integer statFetchNum;
|
private Integer statFetchNum;
|
||||||
// /**
|
// /**
|
||||||
// * 使用优惠券的次数
|
// * 使用优惠券的次数
|
||||||
// */
|
// */
|
||||||
// private Integer statUseNum;
|
// private Integer statUseNum;
|
||||||
// // ========== 统计信息 END ==========
|
// // ========== 统计信息 END ==========
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,4 @@
|
|||||||
|
package cn.iocoder.mall.promotion.biz.service;
|
||||||
|
|
||||||
|
public class CouponServiceImpl {
|
||||||
|
}
|
@ -0,0 +1,143 @@
|
|||||||
|
<?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, stock, price_available, range_type,
|
||||||
|
range_values, date_type, valid_start_time, valid_end_time, fixed_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="selectListByPage" resultType="CouponTemplateDO">
|
||||||
|
SELECT
|
||||||
|
<include refid="FIELDS" />
|
||||||
|
FROM coupon_template
|
||||||
|
<where>
|
||||||
|
<if test="title != null">
|
||||||
|
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="title != null">
|
||||||
|
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, stock, price_available, range_type,
|
||||||
|
range_values, date_type, valid_start_time, valid_end_time, fixed_term,
|
||||||
|
preferential_type, percent_off, price_off, discount_price_limit, stat_fetch_num,
|
||||||
|
create_time
|
||||||
|
) VALUES (
|
||||||
|
#{title}, #{description, #{type, #{code_type},
|
||||||
|
#{status}, #{quota, #{stock}, #{priceAvailable}, #{rangeType},
|
||||||
|
#{rangeValues}, #{dateType}, #{validStartTime}, #{validEndTime, #{fixedTerm},
|
||||||
|
#{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="stock != null">
|
||||||
|
stock = #{stock},
|
||||||
|
</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="fixedTerm != null">
|
||||||
|
fixed_term = #{fixedTerm}
|
||||||
|
</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>
|
||||||
|
|
||||||
|
</mapper>
|
Loading…
Reference in New Issue
Block a user