package com.kym.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.kym.entity.BaseEntity; import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; import java.time.LocalDateTime; /** *

* 优惠券表 *

* * @author skyline * @since 2024-04-25 */ @Getter @Setter @TableName("t_coupon") @Accessors(chain = true) public class Coupon extends BaseEntity { private static final long serialVersionUID = 1L; public static final String COUPON_TYPE_折扣券 = "Discount"; public static final String COUPON_TYPE_满减券 = "FullDiscount"; public static final String RECEIVE_TYPE_系统发放 = "Release"; public static final String RECEIVE_TYPE_主动领取 = "Collect"; public static final int STATUS_未开始 = 0; public static final int STATUS_进行中 = 1; public static final int STATUS_已结束 = 2; public static final int STATUS_已取消 = 3; /** * 活动id */ private Long activityId; /** * 优惠券名称 */ private String name; /** * 优惠券描述 */ private String couponDesc; /** * 开始时间 */ @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime startTime; /** * 结束时间 */ @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime endTime; /** * 有效期(天) */ private Integer validity; /** * 领取方式:Release-系统发放,Collect-主动领取 */ private String receiveType; /** * 券种:Discount折扣券、FullDiscount满减券 */ private String couponType; /** * 使用门槛:最小服务费金额(分) */ private Integer minServiceMoney; /** * 折扣:100代表无折扣,75代表75折;折扣金额(分) */ private Integer discount; /** * 优惠允许叠加:0-不允许,1-允许 */ private Integer allowStacke; /** * 数量限制 */ private Integer quantity; /** * 已领取/发放数量 */ private Integer claimedQuantity; /** * 已使用数量 */ private Integer usedQuantity; /** * 活动状态:0-未开始,1-进行中,2-已结束,3-已取消 */ private Integer status; /** * 备注 */ private String remark; /** * 是否已领取 */ @TableField(exist = false) private boolean collected ; }