gongzuming
2024-09-19 a768dc3daa04d35fedfbe75c0a59b9b2545b85c4
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
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 io.swagger.annotations.ApiModel;
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
@ApiModel("用户优惠券")
public class CouponTemplateUserVO extends AbstractTransDTO {
 
 
    @ApiModelProperty(value = "ID")
    private String id;
 
    /**
     * 优惠券名称
     */
    @ApiModelProperty(value = "优惠券名称")
    private String couponName;
 
    /**
     * 优惠券描述(使用规则)
     */
    @ApiModelProperty(value = "优惠券描述(使用规则)")
    private String couponDescription;
 
    /**
     * 发放数量
     */
    @ApiModelProperty(value = "总数")
    private Integer couponAmount;
 
    /**
     * 优惠券类型(COUPON_TYPE)满减和无门槛
     */
    @ApiModelProperty(value = "优惠券类型(COUPON_TYPE) ")
    @DictTrans(target = "couponDiscountTypeName",codeType = "COUPON_TYPE")
    private String couponDiscountType;
 
    /**
     * 优惠券面值  折扣值(百分比或金额)
     */
    @ApiModelProperty(value = "优惠券面值")
    private BigDecimal couponDiscountValue;
 
    /**
     * 使用条件,最小订单金额(可选)=》使用条件
     */
    @ApiModelProperty(value = "使用条件")
    private BigDecimal minOrderAmount;
 
 
 
    /**
     * 优惠券状态(COUPON_STATUS)
     */
    @ApiModelProperty(value = "优惠券状态(COUPON_STATUS)")
    @DictTrans(target = "statusName",codeType = "COUPON_STATUS")
    private String status;
 
 
 
    @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_TYPE)满减和无门槛
     */
    @ApiModelProperty(value = "优惠券类型名称 ")
    private String couponDiscountTypeName;
 
    /**
     * 状态名称
     */
    @ApiModelProperty(value = "状态名称")
    private String statusName;
 
    @ApiModelProperty(value = "操作人")
    private String createByName;
 
    @ApiModelProperty(value = "商户列表")
    List<CouponTemplateCustomerVO> customerList;
 
    /**
     * 领取后有效类型(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;
 
 
    @ApiModelProperty(value = "使用时间类型(COUPON_USAGE_TYPE)")
    @DictTrans(target = "usageTypeName",codeType = "COUPON_USAGE_TYPE")
    private String usageType;
 
    @ApiModelProperty(value = "使用时间类型")
    private String usageTypeName;
 
    @ApiModelProperty(value = "领取后有效类型名称")
    private String usageTimeTypeName;
 
    @ApiModelProperty(value = "领取渠道(COUPON_GET_TYPE)")
    @DictTrans(target = "getTypeName",codeType = "COUPON_GET_TYPE")
    private String getType;
 
    /**
     * 领取渠道(COUPON_GET_TYPE)首页弹窗、活动入口、领券中心
     */
    @ApiModelProperty(value = "领取渠道(COUPON_GET_TYPE)")
    private String getTypeName;
 
    /**
     * 每人限领
     */
    @ApiModelProperty(value = "每人限领")
    private Integer getLimit;
 
    @ApiModelProperty(value = "发放时间")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss" ,timezone="GMT+8")
    @DateTimeFormat
    private LocalDateTime createTime;
 
}