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