package com.fs.store.domain;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 商品对象 fs_store_product
 *
 * @author fs
 * @date 2022-03-15
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class FsStoreProduct extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品id */
    private Long productId;

    /** 商品图片 */
    @Excel(name = "商品图片")
    private String image;

    @TableField(strategy = FieldStrategy.IGNORED)
    private String video;

    /** 轮播图 */
    @Excel(name = "轮播图")
    private String sliderImage;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String productName;

    /** 商品简介 */
    @Excel(name = "商品简介")
    private String productInfo;

    /** 关键字 */
    @Excel(name = "关键字")
    private String keyword;

    /** 产品条码（一维码） */
    @Excel(name = "产品条码", readConverterExp = "一=维码")
    private String barCode;

    /** 分类id */
    @Excel(name = "分类id")
    private Long cateId;

    /** 商品价格 */
    @Excel(name = "商品价格")
    private BigDecimal price;

    /** 会员价格 */
    @Excel(name = "会员价格")
    private BigDecimal vipPrice;

    /** 市场价 */
    @Excel(name = "市场价")
    private BigDecimal otPrice;

    /** 邮费 */
    @Excel(name = "邮费")
    private BigDecimal postage;

    /** 单位名 */
    @Excel(name = "单位名")
    private String unitName;

    /** 排序 */
    @Excel(name = "排序")
    private Long sort;

    /** 销量 */
    @Excel(name = "销量")
    private Long sales;

    /** 库存 */
    @Excel(name = "库存")
    private Long stock;

    /** 状态（0：未上架，1：上架） */
    @Excel(name = "状态", dictType = "store_product_is_show", readConverterExp = "0=:未上架，1:上架")
    private Integer isShow;

    /** 是否热卖 */
    @Excel(name = "是否热卖")
    private Integer isHot;

    /** 是否优惠 */
    @Excel(name = "是否优惠")
    private Integer isBenefit;

    /** 是否精品 */
    @Excel(name = "是否精品")
    private Integer isBest;

    /** 是否新品 */
    @Excel(name = "是否新品")
    private Integer isNew;

    @Excel(name = "是否在商品展示")
    private Integer isDisplay;

    /** 产品描述 */
    @Excel(name = "产品描述")
    private String description;

    /** 是否包邮 */
    @Excel(name = "是否包邮")
    private Integer isPostage;

    /** 是否删除 */
    @Excel(name = "是否删除")
    private Integer isDel;

    /** 获得积分 */
    @Excel(name = "获得积分")
    private BigDecimal giveIntegral;

    /** 成本价 */
    @Excel(name = "成本价")
    private BigDecimal cost;

    /** 是否优品推荐 */
    @Excel(name = "是否优品推荐")
    private Integer isGood;

    /** 浏览量 */
    @Excel(name = "浏览量")
    private Long browse;

    /** 产品二维码地址(用户小程序海报) */
    @Excel(name = "产品二维码地址(用户小程序海报)")
    private String codePath;

    /** 运费模板ID */
    @Excel(name = "运费模板ID")
    private Integer tempId;

    /** 规格 0单 1多 */
    @Excel(name = "规格 0单 1多")
    private Integer specType;

    /** 是开启积分兑换 */
    @Excel(name = "是开启积分兑换")
    private Integer isIntegral;

    /** 需要多少积分兑换 只在开启积分兑换时生效 */
    @Excel(name = "需要多少积分兑换 只在开启积分兑换时生效")
    private Long integral;

    /** 商品类型:1非处方 2处方 */
    @Excel(name = "商品类型:1非处方 2处方", dictType = "store_product_type")
    private Integer productType;

    /** 国药准字 */
    @Excel(name = "国药准字")
    private String prescribeCode;

    /** 规格 */
    @Excel(name = "规格")
    private String prescribeSpec;

    /** 生产厂家 */
    @Excel(name = "生产厂家")
    private String prescribeFactory;

    /** 处方名 */
    @Excel(name = "处方名")
    private String prescribeName;

    private Integer tuiCateId;

    /** 指定企业 */
    private String companyIds;

}
