package com.huatek.busi.entity;

import com.huatek.torch.sql.annotation.FieldName;
import com.huatek.torch.sql.annotation.Id;
import com.huatek.torch.sql.annotation.TableName;
import com.huatek.torch.sql.beans.Pojo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

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

/**
 * 电缆环流
 *
 * @author Bobi_huo
 * @date 2020-09-10 10:32
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("busi_cable_circulation")
public class BusiCableCirculation extends Pojo implements Serializable {

    private static final long serialVersionUID = 3478629996380810119L;

    /**
     * @Fields id
     */
    @FieldName("id")
    @Id(value = "id")
    private String id;

    /**
     * @Fields cacId : CAC 的唯一标识（17 位码）
     */
    @FieldName("cac_id")
    private String cacId;

    /**
     * @Fields dataNodeNum : 监测数据组的数目
     */
    @FieldName("data_node_num")
    private BigDecimal dataNodeNum;

    /**
     * @Fields sensorId : 在线监测装置的唯一标识（17 位码）
     */
    @FieldName("sensor_id")
    private String sensorId;

    /**
     * @Fields cacMonitorTypeCode :监测类型编码
     */
    @FieldName("cac_monitor_type_code")
    private String cacMonitorTypeCode;

    /**
     * @Fields equipmentId : 在线监测装置对应的被监测设备的 唯一标识（17 位码）
     */
    @FieldName("equipment_id")
    private String equipmentId;

    /**
     * @Fields timeStamp : 数据采集时间，格式为：yyyy-MM-dd HH:mm:ss
     */
    @FieldName("time_stamp")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime timeStamp;

    /**
     * @Fields siteId : 站点ID
     */
    @FieldName("site_id")
    private String siteId;

    /**
     * @Fields phase :被监测设备相别
     */
    @FieldName("phase")
    private String phase;

    /**
     * @Fields totalCoreCurrent :电流（mA）
     */
    @FieldName("total_core_current")
    private String totalCoreCurrent;

    /**
     * @Fields mainEquipmentId : 主设备ID
     */
    @FieldName("main_equipment_id")
    private String mainEquipmentId;

    /**
     * @Fields subEquipmentId : 外挂设备ID
     */
    @FieldName("sub_equipment_id")
    private String subEquipmentId;

    /**
     * @Fields 主设备编号
     */
    @FieldName("equipment_code")
    private String equipmentCode;

    /**
     * @Fields 外挂设备编号
     */
    @FieldName("ext_equipment_code")
    private String extEquipmentCode;

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

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

    /**
     * @Fields runState :设备运行状态：0-无  1-发电  2-抽水  3-空闲
     */
    @FieldName("run_state")
    private String runState;

    /**
     * @Fields serialNumber :编号
     */
    @FieldName("serial_number")
    private String serialNumber;

    /**
     * @Fields status :状态：0-删除，1-正常
     */
    @FieldName("status")
    private String status;

    /**
     * @Fields hbaseRowkey :hbase中的rowkey
     */
    @FieldName("hbase_rowkey")
    private String hbaseRowkey;
}
