package com.cyl.manager.marketing.domain;

import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseAudit;
import lombok.Data;
/**
 * 微信商家券对象 wechat_stock
 * 
 * @author daixiande
 */
@Data
public class WechatStock extends BaseAudit {
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 商家券批次名称	 */
    @Excel(name = "商家券批次名称	")
    private String stockName;

    /** 批次备注 */
    @Excel(name = "批次备注")
    private String comment;

    /** 适用商品范围 */
    @Excel(name = "适用商品范围")
    private String goodsName;

    /** 批次类型
    NORMAL：固定面额满减券批次
    DISCOUNT：折扣券批次
    EXCHANGE：换购券批次 */
    @Excel(name = "批次类型 NORMAL：固定面额满减券批次 DISCOUNT：折扣券批次 EXCHANGE：换购券批次")
    private String stockType;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime availableBeginTime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime availableEndTime;

    /** 领取后N天开始生效 */
    @Excel(name = "领取后N天开始生效")
    private Integer availableDayAfterReceive;

    /** 固定面额满减券-优惠金额 */
    @Excel(name = "固定面额满减券-优惠金额")
    private Integer discountAmount;

    /** 消费门槛 */
    @Excel(name = "消费门槛")
    private Integer transactionMinimum;

    /** 折扣券-折扣比例 */
    @Excel(name = "折扣券-折扣比例")
    private Integer discountPercent;

    /** 核销方式 */
    @Excel(name = "核销方式")
    private String useMethod;

    /** 商户请求单号 */
    @Excel(name = "商户请求单号")
    private String outRequestNo;

    /** 批次最大发放个数 */
    @Excel(name = "批次最大发放个数")
    private Integer maxCoupons;

    /** 用户最大可领个数 */
    @Excel(name = "用户最大可领个数")
    private Integer maxCouponsPerUser;

    /** 券code模式举值：
WECHATPAY_MODE：系统分配券code。（固定22位纯数字）
MERCHANT_API：商户发放时接口指定券code。
MERCHANT_UPLOAD：商户上传自定义code，发券时系统随机选取上传的券code。 */
    @Excel(name = "券code模式举值： WECHATPAY_MODE：系统分配券code。", readConverterExp = "固=定22位纯数字")
    private String couponCodeMode;

    /** 批次状态批次状态
UNAUDIT：审核中
RUNNING：运行中 */
    @Excel(name = "批次状态批次状态 UNAUDIT：审核中 RUNNING：运行中")
    private String stockState;

    /** 批次号 */
    @Excel(name = "批次号")
    private String stockId;

    /** 发放类型 */
    @Excel(name = "发放类型 newUser新用户领取 ")
    private String sendType;

    /** 折扣类型 */
    @Excel(name = "折扣类型")
    private String discountType;

    /** 触发事件 */
    @Excel(name = "触发事件")
    private String eventType;

    /** 优惠劵已发放个数 */
    @Excel(name = "优惠劵已发放个数")
    private Integer giveNum;

    /** 优惠劵海报 */
    @Excel(name = "优惠劵海报")
    private String couponPoster;

    /** 当前用户领取次数 */
    @TableField(exist = false)
    private Integer alreadyReceived;
}
