package com.njcn.influx.bo.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * @author wr
 * @description
 * @date 2024/3/5 15:53
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("PQ_DEVICE")
public class PqDevice {

    /**
     * 装置序号
     */
    @TableId(value = "DEV_INDEX", type = IdType.ASSIGN_ID)
    private Long devIndex;
    
    /**
     * 供电公司序号
     */
    @TableField("GD_INDEX")
    private Long gdIndex;

    /**
     * 变电站序号
     */
    @TableField("SUB_INDEX")
    private Long subIndex;

    /**
     * 装置名称（唯一性判断）
     */
    @TableField("NAME")
    private String name;

    /**
     * 装置通讯状态（0：中断；1：正常）
     */
    @TableField("STATUS")
    private Integer status;

    /**
     * （关联表PQS_Dicdata）装置型号Guid
     */
    @TableField("DEVTYPE")
    private String devType;

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

    /**
     * 登录时间
     */
    @TableField("LOGONTIME")
    private LocalDateTime logonTime;

    /**
     * 数据更新时间
     */
    @TableField("UPDATETIME")
    private LocalDateTime updateTime;

    /**
     * （关联表NodeInformation）服务器表序号，表明这台设备运行在哪台服务器上
     */
    @TableField("NODE_INDEX")
    private Long nodeIndex;

    /**
     * 已召唤标志
     */
    @TableField("CALLFLAG")
    private Integer callFlag;

    /**
     * 端口ID，用于端口映射
     */
    @TableField("PORTID")
    private Long portId;

    /**
     * 装置状态（0：投运；1：热备用；2：停运）
     */
    @TableField("DEVFLAG")
    private Integer devFlag;


    /**
     * 装置模型（0：虚拟设备；1：实际设备；2：离线设备；）默认是实际设备
     */
    @TableField("DEVMODEL")
    private Long devmodel;

    /**
     * 数据类型（0：暂态系统；1：稳态系统；2：两个系统）
     */
    @TableField("DATATYPE")
    private Long datatype;

    /**
     * 装置识别码，采用3ds加密
     */
    @TableField("DEV_SERIES")
    private String series;

    /**
     * 装置秘钥，采用3ds加密
     */
    @TableField("DEV_KEY")
    private String key;
}
