package com.fs.live.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 优惠券发放记录对象 live_coupon_user
 *
 * @author fs
 * @date 2025-09-30
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class LiveCouponUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 优惠券发放记录id */
    private Long id;

    /** 兑换的项目id */
    @Excel(name = "兑换的项目id")
    private Long couponId;

    /** 优惠券所属用户 */
    @Excel(name = "优惠券所属用户")
    private Integer userId;

    /** 优惠券名称 */
    @Excel(name = "优惠券名称")
    private String couponTitle;

    /** 优惠券的面值 */
    @Excel(name = "优惠券的面值")
    private BigDecimal couponPrice;

    /** 最低消费多少金额可用优惠券 */
    @Excel(name = "最低消费多少金额可用优惠券")
    private BigDecimal useMinPrice;

    /** 优惠券结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "优惠券结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date limitTime;

    /** 使用时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date useTime;

    /** 获取方式 */
    @Excel(name = "获取方式")
    private String type;

    /** 状态（0：未使用，1：已使用, 2:已过期） */
    @Excel(name = "状态", readConverterExp = "0=：未使用，1：已使用,,2=:已过期")
    private Integer status;

    /** 是否有效 */
    @Excel(name = "是否有效")
    private Integer isFail;

    /** $column.columnComment */
    @Excel(name = "是否有效")
    private Integer isDel;

    /** $column.columnComment */
    @Excel(name = "商品ID")
    private Long goodsId;


}
