package com.njcn.csharmonic.pojo.po;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @author xy
 */
@Data
public class CsAlarmData implements Serializable {

    //设备id
    private String deviceId;

    // 在线率异常记录
    private OnlineRateAlarm onlineRate;

    // 完整性异常记录
    private IntegrityAlarm integrity;

    /**
     * 在线率异常信息
     */
    @Data
    public static class OnlineRateAlarm implements Serializable {
        // 实际在线率值
        private Double value;
        // 阈值
        private Double threshold;
        // 是否异常
        private Boolean isAbnormal;
    }

    /**
     * 完整性异常信息
     */
    @Data
    public static class IntegrityAlarm implements Serializable {
        // 阈值
        private Double threshold;
        // 各监测点的完整性数据
        private List<MonitorPointIntegrity> monitorPoints;

        /**
         * 监测点完整性信息
         */
        @Data
        public static class MonitorPointIntegrity implements Serializable {
            // 监测点ID
            private String monitorPointId;
            // 监测点名称
            private String monitorName;
            // 该监测点的完整性值
            private Double value;
            // 是否异常
            private Boolean isAbnormal;
        }
    }
}
