
package com.tmerclub.cloud.distribution.vo;

import com.tmerclub.cloud.common.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;

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

/**
 * 分销收入记录信息VO
 *
 * @author cl
 * @date 2021-08-09 14:14:09
 */
public class DistributionUserIncomeVO extends BaseVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "收入记录id")
    private Long incomeId;

    @Schema(description = "钱包id")
    private Long walletId;

    @Schema(description = "收入类型(1一代奖励、2二代奖励 3邀请奖励 等 )")
    private Integer incomeType;

    @Schema(description = "佣金状态(0:待支付、1:待结算、2:已结算、-1:订单失效)")
    private Integer state;

    @Schema(description = "佣金数额")
    private Long incomeAmount;

    @Schema(description = "关联订购流水号")
    private Long orderId;

    @Schema(description = "关联订单项order_item_id")
    private Long orderItemId;

    @Schema(description = "商户订单号")
    private String merchantOrderId;

    @Schema(description = "分销员id")
    private Long distributionUserId;

    @Schema(description = "操作人id")
    private Long modifier;

    @Schema(description = "分销员")
    private DistributionUserVO distributionUser;

    @Schema(description = "订单状态")
    private Integer orderStatus;

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

    @Schema(description = "商品名称")
    private String spuName;

    @Schema(description = "店铺id")
    private Long shopId;

    @Schema(description = "店铺名称")
    private String shopName;

    @Schema(description = "商品图片")
    private String mainImgUrl;

    @Schema(description = "用户id")
    private Long userId;

    public Long getUserId() {
        return userId;
    }

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

    public Long getSpuId() {
        return spuId;
    }

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

    public Long getShopId() {
        return shopId;
    }

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

    public String getSpuName() {
        return spuName;
    }

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

    public String getShopName() {
        return shopName;
    }

    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

    public String getMainImgUrl() {
        return mainImgUrl;
    }

    public void setMainImgUrl(String mainImgUrl) {
        this.mainImgUrl = mainImgUrl;
    }

    public Long getIncomeId() {
        return incomeId;
    }

    public void setIncomeId(Long incomeId) {
        this.incomeId = incomeId;
    }

    public Long getWalletId() {
        return walletId;
    }

    public void setWalletId(Long walletId) {
        this.walletId = walletId;
    }

    public Integer getIncomeType() {
        return incomeType;
    }

    public void setIncomeType(Integer incomeType) {
        this.incomeType = incomeType;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    public Long getIncomeAmount() {
        return incomeAmount;
    }

    public void setIncomeAmount(Long incomeAmount) {
        this.incomeAmount = incomeAmount;
    }

    public Long getOrderId() {
        return orderId;
    }

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

    public Long getOrderItemId() {
        return orderItemId;
    }

    public void setOrderItemId(Long orderItemId) {
        this.orderItemId = orderItemId;
    }

    public String getMerchantOrderId() {
        return merchantOrderId;
    }

    public void setMerchantOrderId(String merchantOrderId) {
        this.merchantOrderId = merchantOrderId;
    }

    public Long getDistributionUserId() {
        return distributionUserId;
    }

    public void setDistributionUserId(Long distributionUserId) {
        this.distributionUserId = distributionUserId;
    }

    public Long getModifier() {
        return modifier;
    }

    public void setModifier(Long modifier) {
        this.modifier = modifier;
    }

    public DistributionUserVO getDistributionUser() {
        return distributionUser;
    }

    public void setDistributionUser(DistributionUserVO distributionUser) {
        this.distributionUser = distributionUser;
    }

    public Integer getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Integer orderStatus) {
        this.orderStatus = orderStatus;
    }

    @Override
    public String toString() {
        return "DistributionUserIncomeVO{" +
                "incomeId=" + incomeId +
                ", walletId=" + walletId +
                ", incomeType=" + incomeType +
                ", state=" + state +
                ", incomeAmount=" + incomeAmount +
                ", orderId=" + orderId +
                ", orderItemId=" + orderItemId +
                ", merchantOrderId='" + merchantOrderId + '\'' +
                ", distributionUserId=" + distributionUserId +
                ", modifier=" + modifier +
                ", distributionUser=" + distributionUser +
                ", orderStatus=" + orderStatus +
                ", spuId=" + spuId +
                ", spuName='" + spuName + '\'' +
                ", shopId=" + shopId +
                ", shopName='" + shopName + '\'' +
                ", mainImgUrl='" + mainImgUrl + '\'' +
                ", userId=" + userId +
                '}';
    }
}
