package com.usky.ems.domain;

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.io.Serializable;
import java.time.LocalDateTime;

/**
 * 设备事件记录（leo.ems_device_event）
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("ems_device_event")
public class EmsDeviceEvent implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @TableField("project_id")
    private Long projectId;

    private String sn;

    @TableField("device_id")
    private String deviceId;

    private String identifier;

    /** 设备类型 1:设备 2:网关 */
    @TableField("device_type")
    private Integer deviceType;

    /** 事件类型 1:通讯告警 2:功能告警 3:数据异常 */
    @TableField("event_type")
    private Integer eventType;

    @TableField("suppressed_to")
    private LocalDateTime suppressedTo;

    /** 确认类型 0:未确认 1:自动确认 2:人工确认 */
    @TableField("confirmation_type")
    private Integer confirmationType;

    @TableField("task_sn")
    private String taskSn;

    private String content;

    @TableField("start_time")
    private LocalDateTime startTime;

    @TableField("updated_by")
    private Long updatedBy;

    @TableField("update_time")
    private LocalDateTime updateTime;

    @TableField("created_by")
    private Long createdBy;

    @TableField("create_time")
    private LocalDateTime createTime;
}

