package com.hssx.pcbms.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author 吴涛涛
 * @since 2019-12-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Goods extends Model<Goods> {

    private static final long serialVersionUID=1L;

    /**
     * 商品表主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 名称/机柜名称/机柜设备名称
     */
    @TableField("name")
    private String name;

    /**
     * 分类标签id
     */
    @TableField("tag_id")
    private Integer tagId;

    /**
     * 型号
     */
    @TableField("model_number")
    private String modelNumber;

    /**
     * 量词
     */
    @TableField("unit")
    private String unit;

    /**
     * 地址
     */
    @TableField("address")
    private String address;

    /**
     * 供应商
     */
    @TableField("factory")
    private String factory;

    /**
     * 图片
     */
    @TableField("pic")
    private String pic;

    /**
     * 服务期限（天）
     */
    @TableField("service_life")
    private Integer serviceLife;

    /**
     * 下次维护日期
     */
    @TableField("next_indate")
    private String nextIndate;

    /**
     * 是否删除0-未删除，1-已删除
     */
    @TableField("is_delete")
    private Integer isDelete;

    /**
     * 录入人id
     */
    @TableField("creator_id")
    private Integer creatorId;

    /**
     * 用于比较的部门代码(废弃字段)
     */
    @TableField("division_code")
    private String divisionCode;

    /**
     * 用于比较的前缀代码(废弃字段)
     */
    @TableField("suffix_code")
    private String suffixCode;

    /**
     * 资产类型 0-普通资产 
     */
    @TableField("good_type")
    private Integer goodType;

    /**
     * 预留字段
     */
    @TableField("rack_id")
    private String rackId;

    /**
     * 预留字段
     */
    @TableField("rack_ip")
    private String rackIp;

    /**
     * 预留字段
     */
    @TableField("rack_port")
    private String rackPort;

    /**
     * 录入时间
     */
    @TableField("indate")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime indate;

    /**
     * 项目编号
     */
    @TableField("project_no")
    private String projectNo;

    /**
     * 项目名称
     */
    @TableField("project_name")
    private String projectName;

    /**
     * 采购日期（如：2015-12-09）
     */
    @TableField("purchase_date")
    private String purchaseDate;

    /**
     * 质保期限：单位（年）
     */
    @TableField("warranty_period")
    private Integer warrantyPeriod;

    /**
     * 采购价格
     */
    @TableField("price")
    private BigDecimal price;

    /**
     * 备注
     */
    @TableField("content")
    private String content;


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

}
