
package com.tmerclub.cloud.order.vo;

import io.swagger.v3.oas.annotations.media.Schema;

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

/**
 * 提交订单的支付信息
 *
 * @author tmerclub
 * @date 2021/2/4
 */
public class SubmitOrderPayInfoVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "商品名称")
    private List<String> spuNameList;

    @Schema(description = "收货人姓名")
    private String consignee;

    @Schema(description = "收货地址")
    private String userAddr;

    @Schema(description = "收货人手机号")
    private String mobile;

    @Schema(description = "订单过期时间")
    private Date endTime;

    @Schema(description = "定金预售支付状态 1.已支付定金 2.已支付尾款")
    private Integer preSalePayStatus;

    @Schema(description = "尾款支付开始时间")
    private Date balanceStartTime;

    @Schema(description = "总共需要支付金额")
    private Long totalFee;

    @Schema(description = "总共需要支付积分（积分抵扣金额）")
    private Long totalScore;

    @Schema(description = "总共需要支付积分数量")
    private Long orderScore;

    @Schema(description = "订单类型")
    private Integer orderType;

    public Integer getPreSalePayStatus() {
        return preSalePayStatus;
    }

    public void setPreSalePayStatus(Integer preSalePayStatus) {
        this.preSalePayStatus = preSalePayStatus;
    }

    public Date getBalanceStartTime() {
        return balanceStartTime;
    }

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

    public String getConsignee() {
        return consignee;
    }

    public void setConsignee(String consignee) {
        this.consignee = consignee;
    }

    public String getUserAddr() {
        return userAddr;
    }

    public void setUserAddr(String userAddr) {
        this.userAddr = userAddr;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Long getTotalFee() {
        return totalFee;
    }

    public void setTotalFee(Long totalFee) {
        this.totalFee = totalFee;
    }

    public Long getTotalScore() {
        return totalScore;
    }

    public void setTotalScore(Long totalScore) {
        this.totalScore = totalScore;
    }

    public List<String> getSpuNameList() {
        return spuNameList;
    }

    public void setSpuNameList(List<String> spuNameList) {
        this.spuNameList = spuNameList;
    }

    public Long getOrderScore() {
        return orderScore;
    }

    public void setOrderScore(Long orderScore) {
        this.orderScore = orderScore;
    }

    public Integer getOrderType() {
        return orderType;
    }

    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }

    @Override
    public String toString() {
        return "SubmitOrderPayInfoVO{" +
                "spuNameList=" + spuNameList +
                ", consignee='" + consignee + '\'' +
                ", userAddr='" + userAddr + '\'' +
                ", mobile='" + mobile + '\'' +
                ", endTime=" + endTime +
                ", preSalePayStatus=" + preSalePayStatus +
                ", balanceStartTime=" + balanceStartTime +
                ", totalFee=" + totalFee +
                ", totalScore=" + totalScore +
                ", orderScore=" + orderScore +
                ", orderType=" + orderType +
                '}';
    }
}
