package com.yuchen.saas.parking.api.vo.coupon;

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

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * @Author 蔡文强
 * @Date 2023/5/25 15:56
 * @Description 小程序优惠卡列表信息
 */
@Data
public class PmgBatCouponCardAppVO {


    @ApiModelProperty(name = "id", value = "优惠卡ID")
    private Long id;

    @ApiModelProperty(name = "couponCardNo", value = "优惠卡编号")
    private String couponCardNo;

    @ApiModelProperty(name = "couponCardName", value = "优惠卡名称")
    private String couponCardName;

    @ApiModelProperty(name = "cardAmount", value = "卡总额度(单位分)")
    private Integer cardAmount;

    @ApiModelProperty(name = "discountMode", value = "优惠方式(1:限免优惠 2:全免优惠)")
    private Integer discountMode;

    @ApiModelProperty(name = "couponAmount", value = "优惠券金额(单位分)")
    private Integer couponAmount;

    @ApiModelProperty(name = "suitCondition", value = "适用条件(1:满xx元可使用 2:无门槛使用(若优惠金额大于产品金额，则该产品价格为免费))")
    private Integer suitCondition;

    @ApiModelProperty(name = "conditionAmount", value = "满xx元可使用(单位分)")
    private Integer conditionAmount;


    @ApiModelProperty(name = "belongName", value = "归属对象")
    private String belongName;


    @ApiModelProperty(name = "cardType", value = "优惠卡类型(1:停车优惠)")
    private Integer cardType;


    @ApiModelProperty(name = "cardValidityType", value = "卡有效期类型(1:指定时间 2:无时间限制)")
    private Integer cardValidityType;

    @ApiModelProperty(name = "startDate", value = "开始日期")
    private Date startDate;

    @ApiModelProperty(name = "endDate", value = "结束日期")
    private Date endDate;

    @ApiModelProperty(name = "couponValidityType", value = "券有效期类型(1:领取后,第xx天内有效->提示:领取后,若优惠卡失效,优惠券未使用的话也同步失效 2:无时间限制)")
    private Integer couponValidityType;

    @ApiModelProperty(name = "days", value = "领取后，第xx天内有效")
    private Integer days;

    @ApiModelProperty(name = "parkingNames", value = "适用范围(停车场名称,多个逗号隔开)")
    private String parkingNames;

    @ApiModelProperty(name = "instruction", value = "券适用说明")
    @NotBlank(message = "券适用说明不能为空")
    private String instruction;

    @ApiModelProperty(name = "codeType", value = "优惠卡二维码类型(1:动态二维码 2:静态二维码)")
    private Integer codeType;

    @ApiModelProperty(name = "qrCode", value = "优惠卡二维码")
    private String qrCode;

    @ApiModelProperty(name = "cardStatus", value = "卡状态(1:未生效 2:生效中 3:已过期)")
    private Integer cardStatus;

    @ApiModelProperty(name = "visitorBindStatus", value = "优惠卡是否绑定访客状态(0:未绑定 1:绑定)")
    private Integer visitorBindStatus;
}
