package com.nantian.cloud.jljc.entity;

import com.baomidou.mybatisplus.annotation.*;

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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
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;

/**
 * <p>
 * 企业能耗异常波动详细信息表
 * </p>
 *
 * @author stz
 * @since 2020-08-10
 */
@Data
@TableName("ec_abnormal_volatility_info")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "企业能耗异常波动详细信息表")
public class EcAbnormalVolatilityInfo extends Model<EcAbnormalVolatilityInfo>{

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "id")
    @ApiModelProperty(value = "主键")
    private Long id;

    /**
     * 关联id（ec_abnormal_volatility表的主键id）
     */
    @ApiModelProperty(value = "关联id ec_abnormal_volatility表的主键id")
    private Long abnormalVolatilityId;

    /**
     * 数据表
     */
    @ApiModelProperty(value = "数据表")
    private String dataTable;

    /**
     * 数据内容
     */
    @ApiModelProperty(value = "数据内容")
    private String dataContent;

    /**
     * 计量单位
     */
    @ApiModelProperty(value = "计量单位")
    private String unitVal;

    /**
     * 前年数据
     */
    @ApiModelProperty(value = "前年数据")
    private String frontYearData;

    /**
     * 本年数据
     */
    @ApiModelProperty(value = "本年数据")
    private String thisYearData;

    /**
     * 变化比率（ (本年数据-前年数据) / 前年数据 ）
     */
    @ApiModelProperty(value = "变化比率")
    private String changeRatio;

    /**
     * 预警范围
     */
    @ApiModelProperty(value = "预警范围")
    private String warningRange;

    /**
     * 异常说明
     */
    @ApiModelProperty(value = "异常说明")
    private String remark;

    /**
     * 类型（仅用于区分表一的财务信息和产品信息）
     */
    @ApiModelProperty(value = "类型（仅用于区分表一的财务信息和产品信息）")
    private String type;

    /**
     * 用于报表填写，新增项的说明
     */
    @ApiModelProperty(value = "用于报表填写，新增项的说明")
    private String addState;

    /**
     * 年份
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "年份")
    private String year;

    /**
     * 用户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;
    }
}
