using adas_core.Domain.Enums;

namespace adas_core.Domain.Models.SignalR;

/// <summary>
/// Represents a recording, encapsulating data and behavior associated with a captured event or media.
/// </summary>
public class Recording
{
    public string Id { get; set; } = null!;
    public string? PatientId { get; set; }
    public int RoomId { get; set; }
    public int? CameraId { get; set; }
    public string? DiagnosisId { get; set; }
    public string? ProcedureId { get; set; }
    public string? ServiceId { get; set; }
    public int? DiseaseId { get; set; }
    public int? ThumbnailId { get; set; }
    public string Sid { get; set; } = null!; //
    public DateTime Date { get; set; } //
    public DateTime? EndDate { get; set; } //
    public string Store { get; set; } = null!; //
    public string? DiagnosisDescription { get; set; } //
    public string? ProcedureDescription { get; set; } //
    public string? Observations { get; set; } //
    public int Duration { get; set; } //
    public string Status { get; set; } = StatusEnum.Video.Initialized.ToString(); //
    public DateTime? UpdateDate { get; set; }
    public string? DeletedBy { get; set; }
    public DateTime? StartDate { get; set; }
    public string? Alarm { get; set; }
    public int? Retry { get; set; }
    public string? Alert { get; set; }
}