| package com.mzl.flower.dto.request.coupon; | 
|   | 
|   | 
| import com.fasterxml.jackson.annotation.JsonFormat; | 
| import io.swagger.annotations.ApiModelProperty; | 
| import lombok.Data; | 
| import org.springframework.format.annotation.DateTimeFormat; | 
|   | 
| import javax.validation.constraints.NotEmpty; | 
| import javax.validation.constraints.NotNull; | 
| import java.math.BigDecimal; | 
| import java.time.LocalDateTime; | 
|   | 
| @Data | 
| public class CreateCouponTemplateDTO  { | 
|   | 
|     @ApiModelProperty(value = "id") | 
|     private String id; | 
|   | 
|     /** | 
|      * 优惠券名称 | 
|      */ | 
|     @ApiModelProperty(value = "couponName") | 
|     @NotEmpty(message = "优惠券名称不能为空") | 
|     private String couponName; | 
|   | 
|     /** | 
|      * 优惠券类型(COUPON_TYPE)满减和无门槛 | 
|      */ | 
|     @ApiModelProperty(value = "优惠券类型") | 
|     @NotEmpty(message = "优惠券类型不能为空") | 
|     private String couponDiscountType; | 
|   | 
|     /** | 
|      * 领取渠道(COUPON_GET_TYPE)首页弹窗、活动入口、领券中心 | 
|      */ | 
|     @ApiModelProperty(value = "领取渠道") | 
|     @NotEmpty(message = "领取渠道不能为空") | 
|     private String getType; | 
|   | 
|   | 
|     /** | 
|      * 优惠券描述(使用规则) | 
|      */ | 
|     @ApiModelProperty(value = "使用规则") | 
|     @NotEmpty(message = "使用规则不能为空") | 
|     private String couponDescription; | 
|   | 
|   | 
|     /** | 
|      * 领取开始时间 | 
|      */ | 
|     @ApiModelProperty(value = "领取开始时间") | 
|     @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") | 
|     @DateTimeFormat | 
|     @NotNull(message = "领取开始时间不能为空") | 
|     private LocalDateTime getStartDate; | 
|   | 
|     /** | 
|      * 领取结束时间 | 
|      */ | 
|     @ApiModelProperty(value = "领取结束时间") | 
|     @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") | 
|     @DateTimeFormat | 
|     @NotNull(message = "领取结束时间不能为空") | 
|     private LocalDateTime getEndDate; | 
|   | 
|   | 
|     /** | 
|      * 使用时间类型(COUPON_USAGE_TIME_TYPE)与领取时间一致、固定时间、领取后有效 | 
|      */ | 
|     @ApiModelProperty(value = "使用时间类型") | 
|     @NotEmpty(message = "使用时间类型不能为空") | 
|     private String usageType; | 
|   | 
|   | 
|     /** | 
|      * 领取后有效类型(COUPON_usage_time_type)天、小时、分钟 | 
|      */ | 
|     @ApiModelProperty(value = "领取后有效类型 天、小时、分钟") | 
|     private String usageTimeType; | 
|   | 
|     /** | 
|      * 领取后有效时间整数,比如90(天,小时,分钟) | 
|      */ | 
|     @ApiModelProperty(value = "领取后有效时间整数") | 
|     private Integer usageTimeNum; | 
|   | 
|   | 
|     /** | 
|      * 使用开始时间 | 
|      */ | 
|     @ApiModelProperty(value = "使用时间-固定时间-开始日期") | 
|     @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") | 
|     @DateTimeFormat | 
|     private LocalDateTime usageStartDate; | 
|   | 
|     /** | 
|      * 使用结束时间 | 
|      */ | 
|     @ApiModelProperty(value = "使用时间-固定时间-结束日期") | 
|     @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") | 
|     @DateTimeFormat | 
|     private LocalDateTime usageEndDate; | 
|   | 
|   | 
|     /** | 
|      * 使用条件,最小订单金额(可选)=》使用条件 | 
|      */ | 
|     @ApiModelProperty(value = "使用条件,满多少钱") | 
|     @NotNull(message = "使用条件不能为空") | 
|     private BigDecimal minOrderAmount; | 
|   | 
|     /** | 
|      * 优惠券面值  折扣值(百分比或金额) | 
|      */ | 
|     @ApiModelProperty(value = "优惠券面值") | 
|     @NotNull(message = "优惠券面值不能为空") | 
|     private BigDecimal couponDiscountValue; | 
|   | 
|   | 
|   | 
|     /** | 
|      * 发放数量 | 
|      */ | 
|     @ApiModelProperty(value = "发放数量") | 
|     @NotNull(message = "发放数量不能为空") | 
|     private Integer couponAmount; | 
|   | 
|   | 
|     /** | 
|      * 每人限领 | 
|      */ | 
|     @ApiModelProperty(value = "每人限领") | 
|     @NotNull(message = "每人限领不能为空") | 
|     private Integer getLimit; | 
|   | 
|   | 
|   | 
| } |