package com.ym.mec.education.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 商品表
 * </p>
 *
 * @author lemeng
 * @since 2019-09-25
 */
@TableName("goods")
public class Goods extends Model<Goods> {

    private static final long serialVersionUID = 1L;

    /**
     * 商品编号
     */
    @TableId(value = "id_", type = IdType.AUTO)
    private Integer id;
    /**
     * 产品分类
     */
    @TableField("goods_category_id_")
    private Integer goodsCategoryId;
    /**
     * 商品货号
     */
    @TableField("sn_")
    private String sn;
    /**
     * 商品名称
     */
    @TableField("name_")
    private String name;
    /**
     * 品牌
     */
    @TableField("brand_")
    private String brand;
    /**
     * 规格
     */
    @TableField("specification_")
    private String specification;
    /**
     * 展示图片的地址
     */
    @TableField("image_")
    private String image;
    /**
     * 库存数量
     */
    @TableField("stock_count_")
    private Integer stockCount;
    /**
     * 总销量数
     */
    @TableField("sell_count_")
    private Integer sellCount;
    /**
     * 市场销售价
     */
    @TableField("market_price_")
    private BigDecimal marketPrice;
    /**
     * 折扣价
     */
    @TableField("discount_price_")
    private BigDecimal discountPrice;
    /**
     * 团购价
     */
    @TableField("group_purchase_price_")
    private BigDecimal groupPurchasePrice;
    /**
     * 页面简介
     */
    @TableField("brief_")
    private String brief;
    /**
     * 商品的详细描述
     */
    @TableField("desc_")
    private String desc;
    /**
     * 是否是新品（1，是  0，否）
     */
    @TableField("is_new_")
    private String isNew;
    /**
     * 是否置顶（1，置顶   0，不置顶）
     */
    @TableField("is_top_")
    private String isTop;
    /**
     * 状态（1，上架  0，下架）
     */
    @TableField("status_")
    private String status;
    /**
     * 备注
     */
    @TableField("memo_")
    private String memo;
    /**
     * 发布时间
     */
    @TableField("publish_time_")
    private Date publishTime;
    /**
     * 创建时间
     */
    @TableField("create_time_")
    private Date createTime;
    /**
     * 修改时间
     */
    @TableField("update_time_")
    private Date updateTime;
    /**
     * 附件商品列表编号（用逗号分开）
     */
    @TableField("complement_goods_id_list_")
    private String complementGoodsIdList;


    public Integer getId() {
        return id;
    }

    public Goods setId(Integer id) {
        this.id = id;
        return this;
    }

    public Integer getGoodsCategoryId() {
        return goodsCategoryId;
    }

    public Goods setGoodsCategoryId(Integer goodsCategoryId) {
        this.goodsCategoryId = goodsCategoryId;
        return this;
    }

    public String getSn() {
        return sn;
    }

    public Goods setSn(String sn) {
        this.sn = sn;
        return this;
    }

    public String getName() {
        return name;
    }

    public Goods setName(String name) {
        this.name = name;
        return this;
    }

    public String getBrand() {
        return brand;
    }

    public Goods setBrand(String brand) {
        this.brand = brand;
        return this;
    }

    public String getSpecification() {
        return specification;
    }

    public Goods setSpecification(String specification) {
        this.specification = specification;
        return this;
    }

    public String getImage() {
        return image;
    }

    public Goods setImage(String image) {
        this.image = image;
        return this;
    }

    public Integer getStockCount() {
        return stockCount;
    }

    public Goods setStockCount(Integer stockCount) {
        this.stockCount = stockCount;
        return this;
    }

    public Integer getSellCount() {
        return sellCount;
    }

    public Goods setSellCount(Integer sellCount) {
        this.sellCount = sellCount;
        return this;
    }

    public BigDecimal getMarketPrice() {
        return marketPrice;
    }

    public Goods setMarketPrice(BigDecimal marketPrice) {
        this.marketPrice = marketPrice;
        return this;
    }

    public BigDecimal getDiscountPrice() {
        return discountPrice;
    }

    public Goods setDiscountPrice(BigDecimal discountPrice) {
        this.discountPrice = discountPrice;
        return this;
    }

    public BigDecimal getGroupPurchasePrice() {
        return groupPurchasePrice;
    }

    public Goods setGroupPurchasePrice(BigDecimal groupPurchasePrice) {
        this.groupPurchasePrice = groupPurchasePrice;
        return this;
    }

    public String getBrief() {
        return brief;
    }

    public Goods setBrief(String brief) {
        this.brief = brief;
        return this;
    }

    public String getDesc() {
        return desc;
    }

    public Goods setDesc(String desc) {
        this.desc = desc;
        return this;
    }

    public String getIsNew() {
        return isNew;
    }

    public Goods setIsNew(String isNew) {
        this.isNew = isNew;
        return this;
    }

    public String getIsTop() {
        return isTop;
    }

    public Goods setIsTop(String isTop) {
        this.isTop = isTop;
        return this;
    }

    public String getStatus() {
        return status;
    }

    public Goods setStatus(String status) {
        this.status = status;
        return this;
    }

    public String getMemo() {
        return memo;
    }

    public Goods setMemo(String memo) {
        this.memo = memo;
        return this;
    }

    public Date getPublishTime() {
        return publishTime;
    }

    public Goods setPublishTime(Date publishTime) {
        this.publishTime = publishTime;
        return this;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public Goods setCreateTime(Date createTime) {
        this.createTime = createTime;
        return this;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public Goods setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
        return this;
    }

    public String getComplementGoodsIdList() {
        return complementGoodsIdList;
    }

    public Goods setComplementGoodsIdList(String complementGoodsIdList) {
        this.complementGoodsIdList = complementGoodsIdList;
        return this;
    }

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    @Override
    public String toString() {
        return "Goods{" +
        ", id=" + id +
        ", goodsCategoryId=" + goodsCategoryId +
        ", sn=" + sn +
        ", name=" + name +
        ", brand=" + brand +
        ", specification=" + specification +
        ", image=" + image +
        ", stockCount=" + stockCount +
        ", sellCount=" + sellCount +
        ", marketPrice=" + marketPrice +
        ", discountPrice=" + discountPrice +
        ", groupPurchasePrice=" + groupPurchasePrice +
        ", brief=" + brief +
        ", desc=" + desc +
        ", isNew=" + isNew +
        ", isTop=" + isTop +
        ", status=" + status +
        ", memo=" + memo +
        ", publishTime=" + publishTime +
        ", createTime=" + createTime +
        ", updateTime=" + updateTime +
        ", complementGoodsIdList=" + complementGoodsIdList +
        "}";
    }
}
