yeg
2026-09-29 b78295e8da96c3e5e76befeef9582ce5273dbb74
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package com.battery.business.domain;
 
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
 
/**
 * 测试阈值超限或接收期间设备离线的异常事实,对应表 t_test_warning_exception。
 *
 * <p>它只是本系统的观测提醒,不能表述或实现成设备安全保护的替代品。</p>
 */
public class TTestWarningException implements Serializable {
    private static final long serialVersionUID = 1L;
    /** 异常主键。 */
    private Long exceptionId;
    /** 所属测试主键。 */
    private Long testId;
    /** 异常类型:THRESHOLD 阈值超限、DEVICE_OFFLINE 接收期间设备离线。 */
    private String exceptionType = "THRESHOLD";
    /** 所属测试名称,查询时带出,仅供展示。 */
    private String testName;
    /** 来源类型:CABINET 检测柜通道、CABINET_CHANNEL 绑定来源离线、COLLECTOR 采集器。 */
    private String sourceType;
    /** 来源身份:检测柜按适配器实例与厂商通道字段拼接,采集器按设备 ID。 */
    private String sourceIdentity;
    /** 指标编码;离线异常固定为 DEVICE_ONLINE。 */
    private String metricCode;
    /** 触发异常时的测量值;离线异常不伪造测量值,保持为空。 */
    private BigDecimal abnormalValue;
    /** 测量值单位;离线异常为空字符串。 */
    private String unit;
    /** 触发时阈值规则的内容快照 JSON,规则后续修改不回写历史异常。 */
    private String ruleSnapshot;
    /** 严重程度:WARNING 警告;离线异常固定为 WARNING。 */
    private String severity;
    /** 异常状态:OPEN 开放、CLOSED 已关闭;同一聚合键人工关闭前只保留一条开放异常。 */
    private String exceptionStatus;
    /** 首次触发时间,以 UTC 保存。 */
    private Date firstOccurredAtUtc;
    /** 最近一次触发时间,以 UTC 保存;正常观测不会自动关闭异常。 */
    private Date lastOccurredAtUtc;
    /** 累计触发次数。 */
    private Long occurrenceCount;
    /** 处理人用户 ID,由测试负责人关闭时写入。 */
    private Long handledBy;
    /** 处理人显示名称,随异常事实保存。 */
    private String handledByName;
    /** 关闭时间,以 UTC 保存。 */
    private Date handledAtUtc;
    /** 负责人填写的处理结果,关闭时必填。 */
    private String handlingNote;
    public Long getExceptionId(){return exceptionId;} public void setExceptionId(Long v){exceptionId=v;}
    public Long getTestId(){return testId;} public void setTestId(Long v){testId=v;}
    public String getExceptionType(){return exceptionType;} public void setExceptionType(String v){exceptionType=v;}
    public String getTestName(){return testName;} public void setTestName(String v){testName=v;}
    public String getSourceType(){return sourceType;} public void setSourceType(String v){sourceType=v;}
    public String getSourceIdentity(){return sourceIdentity;} public void setSourceIdentity(String v){sourceIdentity=v;}
    public String getMetricCode(){return metricCode;} public void setMetricCode(String v){metricCode=v;}
    public BigDecimal getAbnormalValue(){return abnormalValue;} public void setAbnormalValue(BigDecimal v){abnormalValue=v;}
    public String getUnit(){return unit;} public void setUnit(String v){unit=v;}
    public String getRuleSnapshot(){return ruleSnapshot;} public void setRuleSnapshot(String v){ruleSnapshot=v;}
    public String getSeverity(){return severity;} public void setSeverity(String v){severity=v;}
    public String getExceptionStatus(){return exceptionStatus;} public void setExceptionStatus(String v){exceptionStatus=v;}
    public Date getFirstOccurredAtUtc(){return firstOccurredAtUtc;} public void setFirstOccurredAtUtc(Date v){firstOccurredAtUtc=v;}
    public Date getLastOccurredAtUtc(){return lastOccurredAtUtc;} public void setLastOccurredAtUtc(Date v){lastOccurredAtUtc=v;}
    public Long getOccurrenceCount(){return occurrenceCount;} public void setOccurrenceCount(Long v){occurrenceCount=v;}
    public Long getHandledBy(){return handledBy;} public void setHandledBy(Long v){handledBy=v;}
    public String getHandledByName(){return handledByName;} public void setHandledByName(String v){handledByName=v;}
    public Date getHandledAtUtc(){return handledAtUtc;} public void setHandledAtUtc(Date v){handledAtUtc=v;}
    public String getHandlingNote(){return handlingNote;} public void setHandlingNote(String v){handlingNote=v;}
}