
package com.tmerclub.cloud.order.model;

import com.tmerclub.cloud.common.model.BaseModel;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * 订单预售信息
 *
 * @author lhd
 * @date 2022-08-17 16:36:47
 */
public class OrderPreSaleInfo extends BaseModel implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     *
     */
    private Long orderPreSaleInfoId;

    /**
     * 订单编号
     */
    private Long orderId;

    /**
     * 用户id
     */
    private Long userId;

    /**
     * 定金金额
     */
    private Long depositAmount;

    /**
     * 定金优惠金额
     */
    private Long depositReduceAmount;

    /**
     * 定金膨胀金额
     */
    private Long depositExpansionAmount;
    /**
     * 预售类型 -1.未开启预售 0.全款预售类型 1.定金预售
     */
    private Integer preSaleType;
    /**
     * 尾款金额
     */
    private Long balanceAmount;

    /**
     * 尾款支付开始时间
     */
    private Date balanceStartTime;

    /**
     * 尾款支付结束时间
     */
    private Date balanceEndTime;
    /**
     * 尾款支付时间
     */
    private Date balancePayTime;
    /**
     * 定金预售支付状态 1.已支付定金 2.已支付尾款
     */
    private Integer payStatus;

    /**
     * 预售发货类型 -1.固定时间 x.尾款支付后x天发货
     */
    private Integer preSaleDeliveryType;

    /**
     * 预售发货时间
     */
    private Date preSaleDeliveryTime;

    public Long getDepositReduceAmount() {
        return depositReduceAmount;
    }

    public void setDepositReduceAmount(Long depositReduceAmount) {
        this.depositReduceAmount = depositReduceAmount;
    }

    public Integer getPayStatus() {
        return payStatus;
    }

    public void setPayStatus(Integer payStatus) {
        this.payStatus = payStatus;
    }

    public Date getBalancePayTime() {
        return balancePayTime;
    }

    public void setBalancePayTime(Date balancePayTime) {
        this.balancePayTime = balancePayTime;
    }

    public Integer getPreSaleType() {
        return preSaleType;
    }

    public void setPreSaleType(Integer preSaleType) {
        this.preSaleType = preSaleType;
    }

    public Long getOrderPreSaleInfoId() {
        return orderPreSaleInfoId;
    }

    public void setOrderPreSaleInfoId(Long orderPreSaleInfoId) {
        this.orderPreSaleInfoId = orderPreSaleInfoId;
    }

    public Long getOrderId() {
        return orderId;
    }

    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    public Long getDepositAmount() {
        return depositAmount;
    }

    public void setDepositAmount(Long depositAmount) {
        this.depositAmount = depositAmount;
    }

    public Long getDepositExpansionAmount() {
        return depositExpansionAmount;
    }

    public void setDepositExpansionAmount(Long depositExpansionAmount) {
        this.depositExpansionAmount = depositExpansionAmount;
    }

    public Long getBalanceAmount() {
        return balanceAmount;
    }

    public void setBalanceAmount(Long balanceAmount) {
        this.balanceAmount = balanceAmount;
    }

    public Date getBalanceStartTime() {
        return balanceStartTime;
    }

    public void setBalanceStartTime(Date balanceStartTime) {
        this.balanceStartTime = balanceStartTime;
    }

    public Date getBalanceEndTime() {
        return balanceEndTime;
    }

    public void setBalanceEndTime(Date balanceEndTime) {
        this.balanceEndTime = balanceEndTime;
    }

    public Integer getPreSaleDeliveryType() {
        return preSaleDeliveryType;
    }

    public void setPreSaleDeliveryType(Integer preSaleDeliveryType) {
        this.preSaleDeliveryType = preSaleDeliveryType;
    }

    public Date getPreSaleDeliveryTime() {
        return preSaleDeliveryTime;
    }

    public void setPreSaleDeliveryTime(Date preSaleDeliveryTime) {
        this.preSaleDeliveryTime = preSaleDeliveryTime;
    }

    public Long getUserId() {
        return userId;
    }

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

    @Override
    public String toString() {
        return "OrderPreSaleInfo{" +
                "createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", orderPreSaleInfoId=" + orderPreSaleInfoId +
                ", orderId=" + orderId +
                ", userId=" + userId +
                ", depositAmount=" + depositAmount +
                ", depositReduceAmount=" + depositReduceAmount +
                ", depositExpansionAmount=" + depositExpansionAmount +
                ", preSaleType=" + preSaleType +
                ", balanceAmount=" + balanceAmount +
                ", balanceStartTime=" + balanceStartTime +
                ", balanceEndTime=" + balanceEndTime +
                ", balancePayTime=" + balancePayTime +
                ", payStatus=" + payStatus +
                ", preSaleDeliveryType=" + preSaleDeliveryType +
                ", preSaleDeliveryTime=" + preSaleDeliveryTime +
                '}';
    }
}
