package shop.alien.entity.store.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * 可领取优惠券VO
 *
 * @author system
 * @since 2025-01-XX
 */
@Data
@ApiModel(value = "AvailableCouponVO对象", description = "可领取优惠券")
public class AvailableCouponVO {

    @ApiModelProperty(value = "优惠券ID")
    private Integer id;

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

    @ApiModelProperty(value = "优惠金额")
    private BigDecimal nominalValue;

    @ApiModelProperty(value = "使用标准(最低消费)")
    private BigDecimal minimumSpendingAmount;

    @ApiModelProperty(value = "到期时间")
    private LocalDate endDate;

    @ApiModelProperty(value = "是否已领取")
    private Boolean isReceived;

    @ApiModelProperty(value = "是否可用(库存>0且未过期)")
    private Boolean isAvailable;

    @ApiModelProperty(value = "领取后是否长期有效：0-否，1-是（与 life_discount_coupon 一致）")
    private Integer longTermValid;

    @ApiModelProperty(value = "发行数量是否不限：0-否，1-是")
    private Integer unlimitedQty;
}
