package com.ym.mec.biz.dal.dto;

import com.ym.mec.biz.dal.enums.CouponTypeEnum;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Author Joburgess
 * @Date 2021/9/8 0008
 */
public class SysCouponCodeDto {

    @ApiModelProperty("分部编号")
    private Integer organId;

    @ApiModelProperty("分部名称")
    private String organName;

    @ApiModelProperty("用户编号")
    private Integer userId;

    @ApiModelProperty("用户名称")
    private String userName;

    @ApiModelProperty("手机号")
    private String phone;

    @ApiModelProperty("优惠券编号")
    private Integer couponId;

    @ApiModelProperty("优惠券编号")
    private Integer couponCodeId;

    @ApiModelProperty("优惠券类型")
    private CouponTypeEnum couponType;

    @ApiModelProperty("优惠券名称")
    private String couponName;

    @ApiModelProperty("描述")
    private String couponDescription;

    @ApiModelProperty("优惠码")
    private String code;

    @ApiModelProperty("券类型:FULL_REDUCTION(满减券)，DISCOUNT(折扣券)")
    private CouponTypeEnum type;

    @ApiModelProperty("面值")
    private java.math.BigDecimal faceValue;

    @ApiModelProperty("满多少")
    private java.math.BigDecimal fullAmount;

    @ApiModelProperty("订单编号")
    private Long paymentOrderId;

    @ApiModelProperty("使用状态：0未使用，1已使用")
    private Integer usageStatus;

    @ApiModelProperty("实际使用时间")
    private java.util.Date usedTime;

    @ApiModelProperty("使用开始日期")
    private java.util.Date useStartDate;

    @ApiModelProperty("使用截止日期")
    private java.util.Date useDeadlineDate;

    @ApiModelProperty("发放类型 0手动领取 1手动发放 2交易获取")
    private Integer issueType;

    @ApiModelProperty("优惠券具体类型 - CouponDetailTypeEnum")
    private String typeDetail;

    public Integer getCouponCodeId() {
        return couponCodeId;
    }

    public void setCouponCodeId(Integer couponCodeId) {
        this.couponCodeId = couponCodeId;
    }

    public Integer getOrganId() {
        return organId;
    }

    public void setOrganId(Integer organId) {
        this.organId = organId;
    }

    public String getOrganName() {
        return organName;
    }

    public void setOrganName(String organName) {
        this.organName = organName;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public CouponTypeEnum getType() {
        return type;
    }

    public void setType(CouponTypeEnum type) {
        this.type = type;
    }

    public BigDecimal getFaceValue() {
        return faceValue;
    }

    public void setFaceValue(BigDecimal faceValue) {
        this.faceValue = faceValue;
    }

    public BigDecimal getFullAmount() {
        return fullAmount;
    }

    public void setFullAmount(BigDecimal fullAmount) {
        this.fullAmount = fullAmount;
    }

    public Integer getCouponId() {
        return couponId;
    }

    public void setCouponId(Integer couponId) {
        this.couponId = couponId;
    }

    public CouponTypeEnum getCouponType() {
        return couponType;
    }

    public void setCouponType(CouponTypeEnum couponType) {
        this.couponType = couponType;
    }

    public String getCouponName() {
        return couponName;
    }

    public void setCouponName(String couponName) {
        this.couponName = couponName;
    }

    public String getCouponDescription() {
        return couponDescription;
    }

    public void setCouponDescription(String couponDescription) {
        this.couponDescription = couponDescription;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public Long getPaymentOrderId() {
        return paymentOrderId;
    }

    public void setPaymentOrderId(Long paymentOrderId) {
        this.paymentOrderId = paymentOrderId;
    }

    public Integer getUsageStatus() {
        return usageStatus;
    }

    public void setUsageStatus(Integer usageStatus) {
        this.usageStatus = usageStatus;
    }

    public Date getUsedTime() {
        return usedTime;
    }

    public void setUsedTime(Date usedTime) {
        this.usedTime = usedTime;
    }

    public Date getUseStartDate() {
        return useStartDate;
    }

    public void setUseStartDate(Date useStartDate) {
        this.useStartDate = useStartDate;
    }

    public Date getUseDeadlineDate() {
        return useDeadlineDate;
    }

    public void setUseDeadlineDate(Date useDeadlineDate) {
        this.useDeadlineDate = useDeadlineDate;
    }

    public Integer getIssueType() {
        return issueType;
    }

    public void setIssueType(Integer issueType) {
        this.issueType = issueType;
    }

    public String getTypeDetail() {
        return typeDetail;
    }

    public void setTypeDetail(String typeDetail) {
        this.typeDetail = typeDetail;
    }
}
