package com.fzm.mall.server.front.goods.model;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 商品优惠券
 * </p>
 *
 * @author fzm
 * @since 2021-03-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="MarketingCoupon对象", description="商品优惠券")
public class MarketingCoupon implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long id;

    @ApiModelProperty(value = "优惠券编号")
    private String couponId;

    @ApiModelProperty(value = "类型  1:满减  2:直减  3: 满折  4:折扣   ")
    private Integer type;

    @ApiModelProperty(value = "优惠券名称")
    private String name;

    @ApiModelProperty(value = "描述")
    private String describe;

    @ApiModelProperty(value = "优惠券条件值")
    private BigDecimal conditionVal;

    @ApiModelProperty(value = "优惠值")
    private BigDecimal couponVal;

    @ApiModelProperty(value = "发行量  为0表示发行量没有上限")
    private Long circulation;

    @ApiModelProperty(value = "剩余数量")
    private Long amt;

    @ApiModelProperty(value = "开始时间")
    private Long startTime;

    @ApiModelProperty(value = "结束时间")
    private Long endTime;

    @ApiModelProperty(value = "状态 0->不可用;1->可用;2->未开始;3->已过期")
    private Integer status;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Long createTime;

    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long updateTime;

    private  Integer rangeType;

    private String merchantId;


}
