package com.huatek.busi.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

import org.springframework.format.annotation.DateTimeFormat;

import com.huatek.torch.sql.annotation.FieldName;
import com.huatek.torch.sql.annotation.TableName;
import com.huatek.torch.sql.beans.Pojo;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 数据缺失率 entity
 *
 * @author anker_cheng
 * @date Jul 15, 2019 3:43:23 PM
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("failure_rate")
public class FailureRate extends Pojo implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 
     */
    @FieldName("id")
    private String id;
    /**
     * 传感器编码
     */
    @FieldName("sensor_id")
    private String sensorId;
    /**
     * 
     */
    @FieldName("site_id")
    private String siteId;
    /**
     * 外挂设备ID
     */
    @FieldName("sub_equipment_id")
    private String subEquipmentId;
    /**
     * 主设备ID
     */
    @FieldName("main_equipment_id")
    private String mainEquipmentId;

    /**
     * 站点设备树ID
     */
    @FieldName("main_tree_id")
    private String mainTreeId;

    /**
     * 外挂设备树ID
     */
    @FieldName("sub_tree_id")
    private String subTreeId;

    /**
     * 故障大类(1：变压器，2：gis，3：避雷器，4：测温柜）
     */
    @FieldName("eq_type")
    private String eqType;
    /**
     * 故障小类（1：油色谱，2：局放，3：铁芯接地，4：红外测温 5:sf6） 8：夹件
     */
    @FieldName("gz_type")
    private String gzType;
    /**
     * 应该次数
     */
    @FieldName("must_count")
    private BigDecimal mustCount;
    /**
     * 实际次数
     */
    @FieldName("real_count")
    private BigDecimal realCount;
    /**
     * 故障率，数据缺失率，误差率，故障次数，落雷次数
     */
    @FieldName("rate")
    private BigDecimal rate;
    /**
     * 统计时间
     */
    @FieldName("d_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate dTime;
    
    /**
     * 创建时间
     */
    @FieldName("created_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdTime;
    
    /**
     * 更新时间
     */
    @FieldName("modified_time")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime modifiedTime;
}