package com.xiaoniu.system.operation.coupon.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.Date;

/**
 * @Author haoxuyang
 * @Date 2024/10/17 14:34
 */
@Data
@Schema(description = "优惠券列表响应参数VO")
public class CouponListVO {

    @Schema(description = "ID")
    private Long id;

    @Schema(description = "优惠券名称")
    private String couponName;

    @Schema(description = "优惠券类型（1-平台通用 2-洗车 3-保养维修 4-车检验车）")
    private Integer couponType;

    @Schema(description = "面向用户类型（全部用户 普通用户 新注册用户 会员用户 白银用户 黄金会员 高价值会员 重点保持用户 一般保持用户 重点发展用户 重点挽留用户 一般挽留用户 一般价值用户 一般发展用户）")
    private String userType;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "创建",hidden = true)
    private Date createTime;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "发放时间")
    private Date distributionTime;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "结束时间")
    private Date endTime;

    @Schema(description = "有效期")
    private String periodValidity;

    @Schema(description = "兑换方式（1-金额兑换 2-积分兑换 3-免费兑换）")
    private Integer exchangeMethod;

    @Schema(description = "所需金额、积分")
    private String needed;

    @Schema(description = "优惠结果（选择优惠方式的优惠金额）")
    private String discountResult;

    @Schema(description = "优惠方式（1-立减 2-满减 3-折扣）")
    private Integer discountMethod;

    @Schema(description = "发放数量")
    private String maximumQuantity;

    @Schema(description = "兑换数量")
    private Integer exchangeQuantity;

    @Schema(description = "优惠券状态（1-上架 2-下架）")
    private Integer couponStatus;
}
