
package com.tmerclub.cloud.coupon.model;

import com.tmerclub.cloud.common.model.BaseModel;
import lombok.Data;
import lombok.ToString;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * 优惠券
 *
 * @author YXF
 * @date 2020-12-08 17:22:56
 */
@Data
@ToString
public class Coupon extends BaseModel implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 优惠券ID
     */
    private Long couponId;

    /**
     * 店铺ID
     */
    private Long shopId;

    /**
     * 优惠券名称
     */
    private String couponName;

    /**
     * 副标题
     */
    private String subTitle;

    /**
     * 优惠类型 1:代金券 2:折扣券 3:兑换券
     */
    private Integer couponType;

    /**
     * 适用商品类型 0全部商品参与 1指定商品参与
     */
    private Integer suitableProdType;

    /**
     * 获取方式 0=用户领取 1=店铺发放
     */
    private Integer getWay;

    /**
     * 生效类型 1:固定时间 2:领取后生效
     */
    private Integer validTimeType;

    /**
     * 使用条件
     */
    private Long cashCondition;

    /**
     * 减免金额
     */
    private Long reduceAmount;

    /**
     * 折扣额度
     */
    private Double couponDiscount;

    /**
     * 投放时间
     */
    private Date launchTime;

    /**
     * 开始时间
     */
    private Date startTime;

    /**
     * 结束时间
     */
    private Date endTime;

    /**
     * 领券后X天起生效
     */
    private Integer afterReceiveDays;

    /**
     * 有效天数
     */
    private Integer validDays;

    /**
     * 总库存
     */
    private Integer totalStock;

    /**
     * 库存
     */
    private Integer stocks;

    /**
     * 每个用户领券上限，如不填则默认为1
     */
    private Integer limitNum;

    /**
     * 优惠券状态 0:过期 1:未过期 -1:删除
     */
    private Integer status;

    /**
     * 优惠券投放状态(-1:取消投放 0:自动投放 1:投放 2:违规下架 3:等待审核 4:暂不投放)
     */
    private Integer putonStatus;

    /**
     * 版本号
     */
    private Integer version;

}
