package com.common.entity;

import lombok.Data;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import lombok.Builder;

import java.time.LocalDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DeviceReceiveLog {
    /**
     * 主键ID
     */
    private Long id;

    /**
     * 记录创建时间（UTC时间）
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdAt;

    /**
     * 采集探针ID
     */
    private Integer deviceCollectId;

    /**
     * 设备ID
     */
    private Integer deviceId;

    /**
     * 设备IP（PostgreSQL inet类型，用String处理）
     */
    private String deviceIp;

    /**
     * 日志收到时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime receiveTime;

    /**
     * 接收时间字符串（冗余字段）
     */
    private String receiveTimeStr;

    /**
     * 原始syslog消息
     */
    private String syslogMessage;

    /**
     * 是否推送成功
     */
    private boolean pushSuccess;

    /**
     * 分页参数（非表字段）
     */
    private Integer pageNum;
    private Integer pageSize;
}