using Model.Entity.Inspection;
namespace Model.Dto.Inspection
{
///
/// 告警上报 DTO(其它模块调用告警中心的统一入参:IAlertCenterService.RaiseAsync / POST raise)
/// 除设备标识外全部可空,降低调用方接入成本
///
public class AlertRaiseDto
{
/// 告警来源(调用方标识自身模块)
public AlertSourceEnum Source { get; set; } = AlertSourceEnum.Other;
/// 关联告警规则Id(来源为规则引擎时传,可空/0 表示无)
public long RuleId { get; set; }
/// 设备编号(建议必传,用于去重合并)
public string? DeviceCode { get; set; }
/// 设备名称
public string? DeviceName { get; set; }
/// 设备类型(如 TemperatureBox)
public string? DeviceType { get; set; }
/// 测点/监测指标(如 Temperature)
public string? Metric { get; set; }
/// 告警类型(默认阈值超限)
public AlertTypeEnum AlertType { get; set; } = AlertTypeEnum.ThresholdExceed;
/// 告警级别(1信息/2警告/3紧急)
public AlertLevelEnum AlertLevel { get; set; } = AlertLevelEnum.Warning;
/// 当前值
public double? CurrentValue { get; set; }
/// 阈值
public double? ThresholdValue { get; set; }
/// 告警内容描述(空则由告警中心按内置模板生成)
public string? Content { get; set; }
/// 通知模板编码(预留对接通知模板模块)
public string? TemplateCode { get; set; }
}
///
/// 告警操作 DTO(确认/处理/关闭/忽略/转工单 共用入参)
///
public class AlertOperateDto
{
/// 操作人
public string? Operator { get; set; }
/// 备注(处理说明/忽略原因等)
public string? Remark { get; set; }
/// 工单Id(仅转工单时使用,二期工单模块创建后回填,可空)
public long WorkOrderId { get; set; }
}
}