package com.nantian.cloud.jly.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigInteger;
import java.util.Date;

/**
 * <p>
 * 主要用能设备表
 * </p>
 *
 * @author scott
 * @since 2020-08-10
 */
@Data
@TableName("check_dev")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "主要用能设备表")
public class CheckDev extends Model<CheckDev> {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(value = "id")
    @ApiModelProperty(value = "id")
    private BigInteger id;

    /**
     * 审查计划ID
     */
    @ApiModelProperty(value = "审查计划ID")
    private BigInteger checkPlanId;

    /**
     * 企业社会信用代码
     */
    @ApiModelProperty(value = "企业社会信用代码")
    private String epc;

    /**
     * 序号
     */
    @ApiModelProperty(value = "序号")
    private Integer num;

    /**
     * 所属部门
     */
    @ApiModelProperty(value = "所属部门")
    private String dept;

    /**
     * 设备名称
     */
    @ApiModelProperty(value = "设备名称")
    private String devName;

    /**
     * 设备编号
     */
    @ApiModelProperty(value = "设备编号")
    private String devNum;

    /**
     * 型号规格
     */
    @ApiModelProperty(value = "型号规格")
    private String devType;

    /**
     * 安装地点
     */
    @ApiModelProperty(value = "安装地点")
    private String location;

    /**
     * 用能种类
     */
    @ApiModelProperty(value = "用能种类")
    private String energyClass;

    /**
     * 能源消耗量或功率
     */
    @ApiModelProperty(value = "能源消耗量或功率")
    private String energyUse;

    /**
     * 备注
     */
    @TableField(value="comments",strategy= FieldStrategy.IGNORED)
    @ApiModelProperty(value = "备注")
    private String comments;

    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Integer userid;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    /**
     * 注销状态
     */
    @ApiModelProperty(value = "注销状态（1：未删除，4：已删除）")
    private String delFlag;

    /**
     * 部门id
     */
    @ApiModelProperty(value = "部门id")
    private Integer deptId;

    /**
     * 主键值
     */
    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
