package com.ylx.massage.domain.vo;

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

import java.math.BigDecimal;

@Data
@ApiModel(value = "分享优惠券详情响应VO")
public class ShareVolutionDetailVO {
    /**
     * 分享用户ID
     */
    @ApiModelProperty(value = "分享用户ID")
    private String userId;

    /**
     * 模板ID（优惠券ID）
     */
    @ApiModelProperty(value = "模板ID")
    private String templateId;

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

    /**
     * 优惠券图片URL
     */
    @ApiModelProperty(value = "图片URL")
    private String imageUrl;

    /**
     * 优惠券类型
     */
    @ApiModelProperty(value = "类型")
    private String type;

    /**
     * 优惠券类型描述
     */
    @ApiModelProperty(value = "优惠券类型描述")
    private String couponTypeDesc;

    /**
     * 关联类型
     */
    @ApiModelProperty(value = "关联类型")
    private String relatedType;

    /**
     * 关联ID
     */
    @ApiModelProperty(value = "关联ID")
    private String relatedId;

    /**
     * 关联名称
     */
    @ApiModelProperty(value = "关联名称")
    private String relatedName;

    /**
     * 门槛金额: 满X元生效，适用于满减/折扣
     */
    @ApiModelProperty(value = "门槛金额: 满X元生效，适用于满减/折扣")
    private BigDecimal ruleMinSpendAmount;

    /**
     * 折扣率: 如0.80表示8折，仅折扣券使用
     */
    @ApiModelProperty(value = "折扣率")
    private BigDecimal ruleDiscountRate;

    /**
     * 折扣封顶金额: 折扣最高优惠
     */
    @ApiModelProperty(value = "折扣上限金额")
    private BigDecimal ruleDiscountCapAmount;

    /**
     * 满减金额: 仅满减券使用
     */
    @ApiModelProperty(value = "减免金额")
    private BigDecimal ruleReductionAmount;

    /**
    * 有效期类型: 1-固定日期范围, 2-领券后N天有效, 3-长期有效，4-三方赠送
     */
    @ApiModelProperty(value = "有效期类型")
    private String validityType;

    /**
     * 有效期开始时间
     */
    @ApiModelProperty(value = "有效期开始时间")
    private String validStartTime;

    /**
     * 有效期结束时间
     */
    @ApiModelProperty(value = "有效期结束时间")
    private String validEndTime;

    /**
     * 有效天数
     */
    @ApiModelProperty(value = "有效天数")
    private String validDays;

    /**
     * 平台来源
     */
    @ApiModelProperty(value = "平台来源")
    private String platformSource;

    /**
     * 所在地区码
     */
    @ApiModelProperty(value = "所在地区码")
    private String country;

    /**
     * 所在地区全部码
     */
    @ApiModelProperty(value = "全国")
    private String countryAll;

    /**
     * 所在地区
     */
    @ApiModelProperty(value = "所在地区")
    private String locality;

    /**
     * 商户ID
     */
    @ApiModelProperty(value = "商户ID")
    private String merchantId;

    /**
     * 商户名称
     */
    @ApiModelProperty(value = "商户名称")
    private String storeName;

    /**
     * 成本价
     */
    @ApiModelProperty(value = "成本价")
    private BigDecimal costPrice;

    /**
     * 商品ID
     */
    @ApiModelProperty(value = "商品ID")
    private String productId;

    /**
     * 商品名称
     */
    @ApiModelProperty(value = "商品名称")
    private String productName;
}