
package com.tmerclub.cloud.api.product.vo;

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

import java.io.Serial;
import java.io.Serializable;

/**
 * @author Pineapple
 * @date 2021/5/21 16:06
 */
@Data
public class ProdEffectRespVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    public ProdEffectRespVO() {
        this.spuId = 0L;
        this.price = 0L;
        this.expose = 0L;
        this.exposePersonNum = 0;
        this.addCartPerson = 0;
        this.addCart = 0;
        this.placeOrderPerson = 0;
        this.payPerson = 0;
        this.placeOrderNum = 0;
        this.payNum = 0;
        this.placeOrderAmount = 0D;
        this.payAmount = 0D;
        this.refundNum = 0;
        this.refundPerson = 0;
        this.refundSuccessNum = 0;
        this.refundSuccessPerson = 0;
        this.refundSuccessAmount = 0D;
        this.refundSuccessRate = 0D;
    }

    /**
     * 商品id
     */
    @Schema(description = "商品id")
    private Long spuId;

    @Schema(description = "店铺名称")
    private String shopName;
    /**
     * 商品名称
     */
    @Schema(description = "商品名称")
    private String spuName;
    /**
     * 商品图片
     */
    @Schema(description = "商品图片")
    private String spuUrl;
    /**
     * 商品价格
     */
    @Schema(description = "商品价格")
    private Long price;
    /**
     * 曝光次数
     */
    @Schema(description = "曝光次数")
    private Long expose;
    /**
     * 曝光人数
     */
    @Schema(description = "曝光人数")
    private Integer exposePersonNum;
    /**
     * 加购人数
     */
    @Schema(description = "加购人数")
    private Integer addCartPerson;
    /**
     * 加购件数
     */
    @Schema(description = "加购件数")
    private Integer addCart;
    /**
     * 下单人数
     */
    @Schema(description = "下单人数")
    private Integer placeOrderPerson;
    /**
     * 支付人数
     */
    @Schema(description = "支付人数")
    private Integer payPerson;
    /**
     * 下单商品件数
     */
    @Schema(description = "下单商品件数")
    private Integer placeOrderNum;
    /**
     * 支付商品件数
     */
    @Schema(description = "支付商品件数")
    private Integer payNum;
    /**
     * 商品下单金额
     */
    @Schema(description = "商品下单金额")
    private Double placeOrderAmount;
    /**
     * 商品支付金额
     */
    @Schema(description = "商品支付金额")
    private Double payAmount;
    /**
     * 申请退款订单数
     */
    @Schema(description = "申请退款订单数")
    private Integer refundNum;

    /**
     * 申请退款人数
     */
    @Schema(description = "申请退款人数")
    private Integer refundPerson;
    /**
     * 成功退款订单数
     */
    @Schema(description = "成功退款订单数")
    private Integer refundSuccessNum;
    /**
     * 成功退款人数
     */
    @Schema(description = "成功退款人数")
    private Integer refundSuccessPerson;
    /**
     * 成功退款金额
     */
    @Schema(description = "成功退款金额")
    private Double refundSuccessAmount;
    /**
     * 退款率
     */
    @Schema(description = "退款率")
    private Double refundSuccessRate;



    @Override
    public String toString() {
        return "ProdEffectRespVO{" +
                "spuId=" + spuId +
                ", shopName='" + shopName + '\'' +
                ", spuName='" + spuName + '\'' +
                ", spuUrl='" + spuUrl + '\'' +
                ", price=" + price +
                ", expose=" + expose +
                ", exposePersonNum=" + exposePersonNum +
                ", addCartPerson=" + addCartPerson +
                ", addCart=" + addCart +
                ", placeOrderPerson=" + placeOrderPerson +
                ", payPerson=" + payPerson +
                ", placeOrderNum=" + placeOrderNum +
                ", payNum=" + payNum +
                ", placeOrderAmount=" + placeOrderAmount +
                ", payAmount=" + payAmount +
                ", refundNum=" + refundNum +
                ", refundPerson=" + refundPerson +
                ", refundSuccessNum=" + refundSuccessNum +
                ", refundSuccessPerson=" + refundSuccessPerson +
                ", refundSuccessAmount=" + refundSuccessAmount +
                ", refundSuccessRate=" + refundSuccessRate +
                '}';
    }
}
