/*
 * Copyright (c) 2018-2999 广州亚米信息科技有限公司 All rights reserved.
 *
 * https://www.gz-yami.com/
 *
 * 未经允许，不可做商业用途！
 *
 * 版权所有，侵权必究！
 */

package com.yami.shop.bean.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@TableName("tz_shop_sku")
@Accessors(chain = true)
public class ShopSku implements Serializable {
    private static final long serialVersionUID = 3300529542917772262L;
    /**
     * 门店商品表ID
     */
    @TableId
    private Long id;

    /**
     * 门店ID
     */
    private Long shopId;

    @TableField(exist = false)
    private String shopName;

    /**
     * 商品编码
     */
    @TableField(exist = false)
    private String skuCode;
    /**
     * 海博商品ID
     */
    @TableField(exist = false)
    private String hbSkuId;
    /**
     * 商品名称
     */
    @TableField(exist = false)
    private String skuName;
    /**
     * 开始时间
     */
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private String startTime;
    /**
     * 结束时间
     */
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private String endTime;
    /**
     * 最大价格
     */
    @TableField(exist = false)
    private BigDecimal maxPrice;
    /**
     * 最小价格
     */
    @TableField(exist = false)
    private BigDecimal minPrice;

    /**
     * 单品ID
     */
    private Long skuId;
    /**
     * 单品ID
     */
    private Long spuId;

    /**
     * 商品对应门店价格
     */
    private Double shopSkuPrice;

    /**
     * 商品对应门店库存
     */
    private Integer shopSkuStocks;

    /**
     * 可售状态 (1-可售，0-不可售)
     */
    private Integer saleStatus;

    /**
     * 0 正常 1 已被删除
     */
    private Integer isDelete;

    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 记录时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date recTime;
    /**
     * 渠道商品
     */
    @TableField(exist = false)
    private List<ChannelProd> channelProdList;
    /**
     * 商品详细
     */
    @TableField(exist = false)
    private Sku sku;

}
