package com.mzl.flower.dto.response.coupon; 
 | 
  
 | 
import com.fasterxml.jackson.annotation.JsonFormat; 
 | 
import com.mzl.flower.base.AbstractTransDTO; 
 | 
import com.mzl.flower.base.annotation.DictTrans; 
 | 
import com.mzl.flower.entity.menber.Member; 
 | 
import io.swagger.annotations.ApiModelProperty; 
 | 
import lombok.Data; 
 | 
import org.springframework.format.annotation.DateTimeFormat; 
 | 
  
 | 
import java.math.BigDecimal; 
 | 
import java.time.LocalDateTime; 
 | 
import java.util.List; 
 | 
  
 | 
@Data 
 | 
public class CouponTemplateVO extends AbstractTransDTO { 
 | 
  
 | 
    @ApiModelProperty(value = "主键") 
 | 
    @DictTrans(target = "id",codeType = "id") 
 | 
    private String id; 
 | 
  
 | 
    /** 
 | 
     * 优惠券种类(活动优惠券、用户优惠券、会员优惠券,积分优惠券) 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券种类") 
 | 
    @DictTrans(target = "categoryName",codeType = "COUPON_CATEGORY") 
 | 
    private String category; 
 | 
    /** 
 | 
     * 优惠券代码(唯一) 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券代码") 
 | 
    private String couponCode; 
 | 
  
 | 
    /** 
 | 
     * 优惠券名称 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券名称") 
 | 
    private String couponName; 
 | 
  
 | 
    /** 
 | 
     * 优惠券描述(使用规则) 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券描述(使用规则)") 
 | 
    private String couponDescription; 
 | 
  
 | 
    /** 
 | 
     * 发放数量 
 | 
     */ 
 | 
    @ApiModelProperty(value = "发放数量") 
 | 
    private Integer couponAmount; 
 | 
  
 | 
    /** 
 | 
     * 优惠券类型(COUPON_TYPE)满减和无门槛 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券类型 ") 
 | 
    @DictTrans(target = "couponDiscountTypeName",codeType = "COUPON_TYPE") 
 | 
    private String couponDiscountType; 
 | 
  
 | 
    /** 
 | 
     * 优惠券面值  折扣值(百分比或金额) 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券面值") 
 | 
    private BigDecimal couponDiscountValue; 
 | 
  
 | 
    /** 
 | 
     * 使用条件,最小订单金额(可选)=》使用条件 
 | 
     */ 
 | 
    @ApiModelProperty(value = "使用条件") 
 | 
    private BigDecimal minOrderAmount; 
 | 
  
 | 
    /** 
 | 
     * 最大折扣金额(可选,仅对百分比折扣类型适用) 
 | 
     */ 
 | 
    private BigDecimal maxDiscountAmount; 
 | 
  
 | 
    /** 
 | 
     * 领取渠道(COUPON_GET_TYPE)首页弹窗、活动入口、领券中心 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取渠道(COUPON_GET_TYPE)") 
 | 
    @DictTrans(target = "getTypeName",codeType = "COUPON_GET_TYPE") 
 | 
    private String getType; 
 | 
  
 | 
    /** 
 | 
     * 领取用户类型(COUPON_GET_USER_TYPE)全部用户,指定用户 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取用户类型(COUPON_GET_USER_TYPE)") 
 | 
    @DictTrans(target = "getUserTypeName",codeType = "COUPON_GET_USER_TYPE") 
 | 
    private String getUserType; 
 | 
  
 | 
    /** 
 | 
     * 领取开始时间 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取开始时间") 
 | 
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") 
 | 
    @DateTimeFormat 
 | 
    private LocalDateTime getStartDate; 
 | 
  
 | 
    /** 
 | 
     * 领取结束时间 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取结束时间") 
 | 
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") 
 | 
    @DateTimeFormat 
 | 
    private LocalDateTime getEndDate; 
 | 
  
 | 
    /** 
 | 
     * 每人限领 
 | 
     */ 
 | 
    @ApiModelProperty(value = "每人限领") 
 | 
    private Integer getLimit; 
 | 
  
 | 
    /** 
 | 
     * 使用时间类型(COUPON_USAGE_TYPE)与领取时间一致、固定时间、领取后有效 
 | 
     */ 
 | 
    @ApiModelProperty(value = "使用时间类型(COUPON_USAGE_TYPE)") 
 | 
    @DictTrans(target = "usageTypeName",codeType = "COUPON_USAGE_TYPE") 
 | 
    private String usageType; 
 | 
  
 | 
    /** 
 | 
     * 使用次数限制 
 | 
     */ 
 | 
    @ApiModelProperty(value = "使用次数限制") 
 | 
    private Integer usageLimit; 
 | 
  
 | 
    /** 
 | 
     * 每个用户的使用次数限制 
 | 
     */ 
 | 
    @ApiModelProperty(value = "每个用户的使用次数限制") 
 | 
    private Integer usagePerUser; 
 | 
  
 | 
    /** 
 | 
     * 使用开始时间 
 | 
     */ 
 | 
    @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; 
 | 
  
 | 
    /** 
 | 
     * 领取后有效类型(COUPON_usage_time_type)天、小时、分钟 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取后有效类型(COUPON_USAGE_TIME_TYPE)") 
 | 
    @DictTrans(target = "usageTimeTypeName",codeType = "COUPON_USAGE_TIME_TYPE") 
 | 
    private String usageTimeType; 
 | 
  
 | 
    /** 
 | 
     * 领取后有效时间整数,比如90(天,小时,分钟) 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取后有效时间整数") 
 | 
    private Integer usageTimeNum; 
 | 
  
 | 
    /** 
 | 
     * 优惠券状态(COUPON_STATUS) 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券状态(COUPON_STATUS)") 
 | 
    @DictTrans(target = "statusName",codeType = "COUPON_STATUS") 
 | 
    private String status; 
 | 
  
 | 
    /** 
 | 
     * 兑换积分 
 | 
     */ 
 | 
    @ApiModelProperty(value = "兑换积分") 
 | 
    private Integer point; 
 | 
  
 | 
    /** 
 | 
     * 优惠券类型名称 COUPON_TYPE)满减和无门槛 
 | 
     */ 
 | 
    @ApiModelProperty(value = "优惠券类型名称 ") 
 | 
    private String couponDiscountTypeName; 
 | 
  
 | 
    /** 
 | 
     * 领取渠道(COUPON_GET_TYPE)首页弹窗、活动入口、领券中心 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取渠道(COUPON_GET_TYPE)") 
 | 
    private String getTypeName; 
 | 
  
 | 
    /** 
 | 
     * 领取用户类型(COUPON_GET_USER_TYPE)全部用户,指定用户 
 | 
     */ 
 | 
    @ApiModelProperty(value = "领取用户类型") 
 | 
    private String getUserTypeName; 
 | 
  
 | 
    /** 
 | 
     * 已经领取数 
 | 
     */ 
 | 
    @ApiModelProperty(value = "已经领取数") 
 | 
    private Integer getNum; 
 | 
  
 | 
    /** 
 | 
     * 未领取数 
 | 
     */ 
 | 
    @ApiModelProperty(value = "未领取数") 
 | 
    private Integer unGetNum; 
 | 
  
 | 
    @ApiModelProperty(value = "优惠券种类名称") 
 | 
    private String categoryName; 
 | 
  
 | 
    /** 
 | 
     * 状态名称 
 | 
     */ 
 | 
    @ApiModelProperty(value = "状态名称") 
 | 
    private String statusName; 
 | 
  
 | 
    @ApiModelProperty(value = "领取后有效类型") 
 | 
    private String usageTimeTypeName; 
 | 
  
 | 
    @ApiModelProperty(value = "使用时间类型") 
 | 
    private String usageTypeName; 
 | 
  
 | 
    /** 
 | 
     * 创建人名称 
 | 
     */ 
 | 
    @ApiModelProperty(value = "创建人名称") 
 | 
    private String createByName; 
 | 
  
 | 
    /** 
 | 
     * 更新人名称 
 | 
     */ 
 | 
    @ApiModelProperty(value = "更新人名称") 
 | 
    private String updateByName; 
 | 
  
 | 
    @ApiModelProperty(value = "会员等级") 
 | 
  
 | 
    private Integer memberId; 
 | 
  
 | 
    @ApiModelProperty(value = "会员等级名称") 
 | 
    private String memberName; 
 | 
  
 | 
  
 | 
    @ApiModelProperty(value = "商户列表") 
 | 
    List<CouponTemplateCustomerVO> customerList; 
 | 
  
 | 
  
 | 
    @ApiModelProperty(value = "会员等级对象") 
 | 
    private Member member; 
 | 
  
 | 
    @ApiModelProperty(value = "发放时间") 
 | 
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8") 
 | 
    @DateTimeFormat 
 | 
    private LocalDateTime createTime; 
 | 
  
 | 
    @ApiModelProperty(value = "优惠券图片") 
 | 
    private String imageUrl; 
 | 
  
 | 
} 
 |