
package com.tmerclub.cloud.order.vo.mongo;

import org.springframework.data.mongodb.core.mapping.Document;

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

/**
 * @author lth
 */
@Document("order")
public class MongoOrderStatisticsVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 订单id
     */
    private Long orderId;

    /**
     * 支付客户数
     */
    private Integer payUserCount;
    /**
     * 支付订单数
     */
    private Integer payOrderCount;
    /**
     * 支付商品数
     */
    private Integer payProdCount;
    /**
     * 实际支付金额
     */
    private Double actualTotal;
    /**
     * 平台优惠金额
     */
    private Long platformAmount;
    /**
     * 时间
     */
    private String timeData;
    /**
     * 当前月
     */
    private String currentMonth;
    /**
     * 退单数
     */
    private Integer chargebackCount;
    /**
     * 订单数
     */
    private Integer allCount;
    /**
     * 待付款订单数
     */
    private Integer unPay;
    /**
     * 待发货订单数
     */
    private Integer payed;
    /**
     * 待收货订单数
     */
    private Integer consignment;
    /**
     * 已完成订单数
     */
    private Long success;
    /**
     * 商品id
     */
    private Long spuId;
    /**
     * 商品名称
     */
    private String spuName;
    /**
     * 商品中文名称
     */
    private String spuNameZh;
    /**
     * 商品英文名称
     */
    private String spuNameEn;
    /**
     * 商品英文名称
     */
    private Long payActual;
    /**
     * 店铺id
     */
    private Long shopId;
    /**
     * 活动id
     */
    private Long activityId;
    /**
     * 支付时间
     */
    private Date payTime;
    /**
     * 消费金额
     */
    private Long consAmount;
    /**
     * 商品总金额
     */
    private Long total;
    /**
     * 运费
     */
    private Long freightAmount;
    /**
     * 实付金额
     */
    private Long actualAmount;
    /**
     * 消费次数
     */
    private Long consTimes;
    /**
     * 优惠总金额
     */
    private Long reduceAmount;
    /**
     * 总金额
     */
    private Long totalAmount;
    /**
     * 用户id
     */
    private Long userId;
    /**
     * 用户类型 1：新成交用户 0：老成交用户
     */
    private Integer userType;
    /**
     * 下单人数
     */
    private Integer placeOrderPerson;
    /**
     * 支付人数
     */
    private Integer payPerson;
    /**
     * 下单商品件数
     */
    private Integer placeOrderNum;
    /**
     * 支付商品件数
     */
    private Integer payNum;
    /**
     * 商品下单金额
     */
    private Double placeOrderAmount;
    /**
     * 商品支付金额
     */
    private Double payAmount;

    /**
     * 支付成功订单数，计算退款率使用
     */
    private Integer payOrderNum;

    /**
     * 是否已支付，1.已支付0.未支付
     */
    private Integer isPayed;

    public Integer getPayUserCount() {
        return payUserCount;
    }

    public void setPayUserCount(Integer payUserCount) {
        this.payUserCount = payUserCount;
    }

    public Integer getPayOrderCount() {
        return payOrderCount;
    }

    public void setPayOrderCount(Integer payOrderCount) {
        this.payOrderCount = payOrderCount;
    }

    public Double getActualTotal() {
        return actualTotal;
    }

    public void setActualTotal(Double actualTotal) {
        this.actualTotal = actualTotal;
    }

    public Long getPlatformAmount() {
        return platformAmount;
    }

    public void setPlatformAmount(Long platformAmount) {
        this.platformAmount = platformAmount;
    }

    public String getTimeData() {
        return timeData;
    }

    public void setTimeData(String timeData) {
        this.timeData = timeData;
    }

    public Integer getChargebackCount() {
        return chargebackCount;
    }

    public void setChargebackCount(Integer chargebackCount) {
        this.chargebackCount = chargebackCount;
    }

    public Integer getAllCount() {
        return allCount;
    }

    public void setAllCount(Integer allCount) {
        this.allCount = allCount;
    }

    public Integer getUnPay() {
        return unPay;
    }

    public void setUnPay(Integer unPay) {
        this.unPay = unPay;
    }

    public Integer getPayed() {
        return payed;
    }

    public void setPayed(Integer payed) {
        this.payed = payed;
    }

    public Integer getConsignment() {
        return consignment;
    }

    public void setConsignment(Integer consignment) {
        this.consignment = consignment;
    }

    public Long getSuccess() {
        return success;
    }

    public void setSuccess(Long success) {
        this.success = success;
    }

    public String getSpuNameZh() {
        return spuNameZh;
    }

    public void setSpuNameZh(String spuNameZh) {
        this.spuNameZh = spuNameZh;
    }

    public String getSpuNameEn() {
        return spuNameEn;
    }

    public void setSpuNameEn(String spuNameEn) {
        this.spuNameEn = spuNameEn;
    }

    public Long getPayActual() {
        return payActual;
    }

    public void setPayActual(Long payActual) {
        this.payActual = payActual;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public Date getPayTime() {
        return payTime;
    }

    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }

    public Long getConsAmount() {
        return consAmount;
    }

    public void setConsAmount(Long consAmount) {
        this.consAmount = consAmount;
    }

    public Long getActualAmount() {
        return actualAmount;
    }

    public void setActualAmount(Long actualAmount) {
        this.actualAmount = actualAmount;
    }

    public Long getConsTimes() {
        return consTimes;
    }

    public void setConsTimes(Long consTimes) {
        this.consTimes = consTimes;
    }

    public Long getReduceAmount() {
        return reduceAmount;
    }

    public void setReduceAmount(Long reduceAmount) {
        this.reduceAmount = reduceAmount;
    }

    public Long getTotalAmount() {
        return totalAmount;
    }

    public void setTotalAmount(Long totalAmount) {
        this.totalAmount = totalAmount;
    }

    public Long getUserId() {
        return userId;
    }

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

    public Integer getUserType() {
        return userType;
    }

    public void setUserType(Integer userType) {
        this.userType = userType;
    }

    public String getCurrentMonth() {
        return currentMonth;
    }

    public void setCurrentMonth(String currentMonth) {
        this.currentMonth = currentMonth;
    }

    public Integer getPayProdCount() {
        return payProdCount;
    }

    public void setPayProdCount(Integer payProdCount) {
        this.payProdCount = payProdCount;
    }

    public String getSpuName() {
        return spuName;
    }

    public void setSpuName(String spuName) {
        this.spuName = spuName;
    }

    public Long getSpuId() {
        return spuId;
    }

    public void setSpuId(Long spuId) {
        this.spuId = spuId;
    }

    public Integer getPlaceOrderPerson() {
        return placeOrderPerson;
    }

    public void setPlaceOrderPerson(Integer placeOrderPerson) {
        this.placeOrderPerson = placeOrderPerson;
    }

    public Integer getPayPerson() {
        return payPerson;
    }

    public void setPayPerson(Integer payPerson) {
        this.payPerson = payPerson;
    }

    public Integer getPlaceOrderNum() {
        return placeOrderNum;
    }

    public void setPlaceOrderNum(Integer placeOrderNum) {
        this.placeOrderNum = placeOrderNum;
    }

    public Integer getPayNum() {
        return payNum;
    }

    public void setPayNum(Integer payNum) {
        this.payNum = payNum;
    }

    public Double getPlaceOrderAmount() {
        return placeOrderAmount;
    }

    public void setPlaceOrderAmount(Double placeOrderAmount) {
        this.placeOrderAmount = placeOrderAmount;
    }

    public Double getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(Double payAmount) {
        this.payAmount = payAmount;
    }

    public Integer getPayOrderNum() {
        return payOrderNum;
    }

    public void setPayOrderNum(Integer payOrderNum) {
        this.payOrderNum = payOrderNum;
    }

    public Integer getIsPayed() {
        return isPayed;
    }

    public void setIsPayed(Integer isPayed) {
        this.isPayed = isPayed;
    }

    public Long getOrderId() {
        return orderId;
    }

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

    public Long getActivityId() {
        return activityId;
    }

    public void setActivityId(Long activityId) {
        this.activityId = activityId;
    }

    public Long getTotal() {
        return total;
    }

    public void setTotal(Long total) {
        this.total = total;
    }

    public Long getFreightAmount() {
        return freightAmount;
    }

    public void setFreightAmount(Long freightAmount) {
        this.freightAmount = freightAmount;
    }

    @Override
    public String toString() {
        return "MongoOrderStatisticsVO{" +
                "orderId=" + orderId +
                ", payUserCount=" + payUserCount +
                ", payOrderCount=" + payOrderCount +
                ", payProdCount=" + payProdCount +
                ", actualTotal=" + actualTotal +
                ", platformAmount=" + platformAmount +
                ", timeData='" + timeData + '\'' +
                ", currentMonth='" + currentMonth + '\'' +
                ", chargebackCount=" + chargebackCount +
                ", allCount=" + allCount +
                ", unPay=" + unPay +
                ", payed=" + payed +
                ", consignment=" + consignment +
                ", success=" + success +
                ", spuId=" + spuId +
                ", spuName='" + spuName + '\'' +
                ", spuNameZh='" + spuNameZh + '\'' +
                ", spuNameEn='" + spuNameEn + '\'' +
                ", payActual=" + payActual +
                ", shopId=" + shopId +
                ", activityId=" + activityId +
                ", payTime=" + payTime +
                ", consAmount=" + consAmount +
                ", total=" + total +
                ", freightAmount=" + freightAmount +
                ", actualAmount=" + actualAmount +
                ", consTimes=" + consTimes +
                ", reduceAmount=" + reduceAmount +
                ", totalAmount=" + totalAmount +
                ", userId=" + userId +
                ", userType=" + userType +
                ", placeOrderPerson=" + placeOrderPerson +
                ", payPerson=" + payPerson +
                ", placeOrderNum=" + placeOrderNum +
                ", payNum=" + payNum +
                ", placeOrderAmount=" + placeOrderAmount +
                ", payAmount=" + payAmount +
                ", payOrderNum=" + payOrderNum +
                ", isPayed=" + isPayed +
                '}';
    }
}
