package com.liquidnet.service.goblin.dto.vo;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.liquidnet.common.third.sqb.param.response.data.MallProductsQueryData;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

@Data
public class GoblinSqbPerfGoodsVo implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty("商城编号")
    private String mallSn;

    @ApiModelProperty("商城名称")
    private String mallName;

    @ApiModelProperty("商城签名")
    private String signature;

    @ApiModelProperty(value = "商品spuId")
    private String spuId;

    @ApiModelProperty(value = "商品图片")
    private List<String> converImages;

    @ApiModelProperty(value = "商品描述")
    private String productIntroduction;

    @ApiModelProperty(value = "商品标题")
    private String title;

    @ApiModelProperty(value = "商品规格")
    private List<MallProductsQueryData.Sku> skuResults;

    @ApiModelProperty("是否已同步")
    private Boolean synced;


    @Data
    @JsonIgnoreProperties(ignoreUnknown = true)
    @ApiModel(value = "商品规格")
    public static class Sku {

        @ApiModelProperty(value = "库存类型")
        private Integer stockType;

        @ApiModelProperty(value = "商品skuId")
        private String skuId;

        @ApiModelProperty(value = "库存值")
        private BigDecimal quantity;

        @ApiModelProperty(value = "规格标题")
        private String skuTitle;

        @ApiModelProperty(value = "规格名称")
        private String skuName;

        @ApiModelProperty(value = "价格")
        private Long price;
    }
}
