using YD_TrainingCompetition_Api.Models;
namespace YD_TrainingCompetition_Api.Services;
public interface IHikvisionAlarmStore
{
///
/// 存储一条报警记录
///
void Add(AlarmRecord record);
///
/// 获取所有报警记录(按时间倒序)
///
IReadOnlyCollection GetAll();
///
/// 获取指定摄像头的报警记录
///
IReadOnlyCollection GetByDeviceId(string deviceId);
///
/// 获取最新一条报警记录
///
AlarmRecord? GetLatest();
///
/// 获取最新一条报警记录(按设备)
///
AlarmRecord? GetLatestByDevice(string deviceId);
///
/// 更新摄像头状态
///
void UpdateCameraStatus(HikvisionCameraStatus status);
///
/// 获取所有摄像头状态
///
IReadOnlyCollection GetAllCameraStatuses();
///
/// 获取单个摄像头状态
///
HikvisionCameraStatus? GetCameraStatus(string deviceId);
///
/// 清空报警记录
///
void ClearAlarms();
}