using adas_core.Domain.Enums;

namespace adas_core.Domain.Models.Recording;

public record VideoDto
{
    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 bool BlockChange { 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 StatusEnum.Video VideoStatus { get; set; } = StatusEnum.Video.Initialized;
    public DateTime? UpdateDate { get; set; }
    public string? DeletedBy { get; set; }
    public DateTime? StartDate { get; set; }
    public AlarmEnum.Type? Alarm { get; set; }

    public string? Alert { get; set; }

    public string? PublishedFilename { get; set; }
    public string? PublishedExportDir { get; set; }
    public string? PublishedVideoPath { get; set; }

    public string? SecondaryProcId { get; set; }
    public string? SecondaryDiagnosisId { get; set; }
}