package com.ruoyi.mtragent.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.Data;

import java.util.Date;

/**
 * MTR客户端注册对象 rm_mtr_client_registration
 * 
 * @author gyt
 * @date 2025-11-18
 */
@Data
public class RmMtrClientRegistration extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** MTR客户端ID */
    @Excel(name = "MTR客户端ID")
    private String mtrClientId;

    /** 描述 */
    @Excel(name = "描述")
    private String description;

    /** 版本 */
    @Excel(name = "版本")
    private String version;

    /** 标识 */
    @Excel(name = "标识")
    private String logicalNode;

    /** 注册时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date registerTime;

    /** 注册状态(0-未注册,1-已注册) */
    @Excel(name = "注册状态(0-未注册,1-已注册)")
    private String registerStatus;

    /** 在线状态(0-离线,1-在线) */
    @Excel(name = "在线状态(0-离线,1-在线)")
    private String onlineStatus;

    /** 心跳时间间隔(秒) */
    @Excel(name = "心跳时间间隔(秒)")
    private Integer heartbeatInterval;

    /** 心跳次数 */
    @Excel(name = "心跳次数")
    private Integer heartbeatCount;

    /** 更新方式 */
    @Excel(name = "更新方式")
    private String method;

    /** 定时更新时间 */
    @Excel(name = "定时更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date scheduledUpdateTime;

    /** 文件地址 */
    @Excel(name = "文件地址")
    private String filePath;

    /** 文件MD5值 */
    @Excel(name = "文件MD5值")
    private String fileMd5;

    /** 最后一次更新结果 */
    @Excel(name = "最后一次更新结果")
    private String lastUpdateResult;

    /** 最后一次更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最后一次更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date lastUpdateTime;

    /** 网卡信息(JSON格式) */
    @Excel(name = "网卡信息(JSON格式)")
    private String networkInfo;
    /** 部署设备 */
    private String mtrClientIds;
}
