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

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

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

/**
 * 赠品套装商品项VO
 *
 * @author tmerclub
 * @date 2022-08-16 11:11:59
 */
public class GiveawaySpuVO extends BaseVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "赠品商品项id")
    private Long giveawaySpuId;

    @Schema(description = "赠品id")
    private Long giveawayId;

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

    @Schema(description = "skuId")
    private Long skuId;

    @Schema(description = "赠送数量")
    private Integer giveawayNum;

    @Schema(description = "退货价")
    private Long refundPrice;

    @Schema(description = "状态 1：正常 0：失效 -1：删除")
    private Integer status;

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

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

    @Schema(description = "sku主图片")
    private String skuImgUrl;

    @Schema(description = "sku名称")
    private String skuName;

    @Schema(description = "商品现价")
    private Long priceFee;

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

    @Schema(description = "平台分类id")
    private Long categoryId;

    @Schema(description = "sku库存")
    private Integer skuStock;

    @Schema(description = "sku编码")
    private String partyCode;

    /**
     * 订单项id
     * id生成位置： SubmitOrderManager.loadOrderDateId()
     * 业务位置： 提交订单- SubmitOrderManager.checkSubmitInfo()
     */
    @Schema(description = "订单项id")
    private Long orderItemId;

    @Schema(description = "库存关联列表")
    private List<StockPointSkuVO> stockPointList;

    public Long getGiveawaySpuId() {
        return giveawaySpuId;
    }

    public void setGiveawaySpuId(Long giveawaySpuId) {
        this.giveawaySpuId = giveawaySpuId;
    }

    public Long getGiveawayId() {
        return giveawayId;
    }

    public void setGiveawayId(Long giveawayId) {
        this.giveawayId = giveawayId;
    }

    public Long getSpuId() {
        return spuId;
    }

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

    public Long getSkuId() {
        return skuId;
    }

    public void setSkuId(Long skuId) {
        this.skuId = skuId;
    }

    public Integer getGiveawayNum() {
        return giveawayNum;
    }

    public void setGiveawayNum(Integer giveawayNum) {
        this.giveawayNum = giveawayNum;
    }

    public Long getRefundPrice() {
        return refundPrice;
    }

    public void setRefundPrice(Long refundPrice) {
        this.refundPrice = refundPrice;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getSpuName() {
        return spuName;
    }

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

    public String getMainImgUrl() {
        return mainImgUrl;
    }

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

    public String getSkuName() {
        return skuName;
    }

    public void setSkuName(String skuName) {
        this.skuName = skuName;
    }

    public Long getPriceFee() {
        return priceFee;
    }

    public void setPriceFee(Long priceFee) {
        this.priceFee = priceFee;
    }

    public Long getShopId() {
        return shopId;
    }

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

    public Long getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }

    public Integer getSkuStock() {
        return skuStock;
    }

    public void setSkuStock(Integer skuStock) {
        this.skuStock = skuStock;
    }

    public String getPartyCode() {
        return partyCode;
    }

    public void setPartyCode(String partyCode) {
        this.partyCode = partyCode;
    }

    public String getSkuImgUrl() {
        return skuImgUrl;
    }

    public void setSkuImgUrl(String skuImgUrl) {
        this.skuImgUrl = skuImgUrl;
    }

    public Long getOrderItemId() {
        return orderItemId;
    }

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

    public List<StockPointSkuVO> getStockPointList() {
        return stockPointList;
    }

    public void setStockPointList(List<StockPointSkuVO> stockPointList) {
        this.stockPointList = stockPointList;
    }

    @Override
    public String toString() {
        return "GiveawaySpuVO{" +
                "giveawaySpuId=" + giveawaySpuId +
                ", giveawayId=" + giveawayId +
                ", spuId=" + spuId +
                ", skuId=" + skuId +
                ", giveawayNum=" + giveawayNum +
                ", refundPrice=" + refundPrice +
                ", status=" + status +
                ", spuName='" + spuName + '\'' +
                ", mainImgUrl='" + mainImgUrl + '\'' +
                ", skuImgUrl='" + skuImgUrl + '\'' +
                ", skuName='" + skuName + '\'' +
                ", priceFee=" + priceFee +
                ", shopId=" + shopId +
                ", categoryId=" + categoryId +
                ", skuStock=" + skuStock +
                ", partyCode='" + partyCode + '\'' +
                ", orderItemId=" + orderItemId +
                ", stockPointList=" + stockPointList +
                '}';
    }
}
