package com.yfd.platform.modules.auxcontrol.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.sql.Timestamp;
import java.time.LocalDateTime;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 变电站-辅控设备-告警参数设置
 * </p>
 *
 * @author zhengsl
 * @since 2025-04-23
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("fk_device_alarm_parameter")
public class DeviceAlarmParameter implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 参数ID
     */
    @TableId(type = IdType.ASSIGN_UUID)
    private String paramId;

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

    /**
     * 信号ID
     */
    private String signalId;

    /**
     * 信号名称
     */
    private String signalName;

    /**
     * 告警类型：如：温度过高、压力异常、电流过载
     */
    private String alarmType;

    /**
     * 告警等级：一般、严重、危急
     */
    private String alarmLevel;

    /**
     * 告警触发条件
     */
    private String alarmCondition;

    /**
     * 告警抑制条件
     */
    private String inhibitionCondition;

    /**
     * 告警描述模板
     */
    private String messageTemplate;

    /**
     * 01-组件变色  02-系统弹窗 ，03-邮件通知 ，04-触发联动  可多选：01,02
     */
    private String noticeType;

    /**
     * 触发联动：[{name:"XX联动",id:"12345678"}]
     */
    private String noticeLinkages;

    /**
     * 邮件通知：[{name:"张三",email:"1122@163.com"}]
     */
    private String noticeEmails;

    /**
     * 修改人
     */
    private String lastmodifier;

    /**
     * 最近修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Timestamp lastmodifydate;

    /**
     * 备用1
     */
    private String custom1;

    /**
     * 备用2
     */
    private String custom2;

    /**
     * 备用3
     */
    private String custom3;


}
