public class Encounter
{
    public Guid Id { get; set; }
    public Guid PatientId { get; set; }
    public EncounterType EncounterType { get; set; }
    public EncounterStatus Status { get; set; }
    public Department Department { get; set; }
    public string AttendingPhysician { get; set; } = null!;
    public string? RoomBed { get; set; }
    public string? AdmissionReason { get; set; }
    public string? DischargeDiagnosis { get; set; }
    public DateTimeOffset AdmittedAt { get; set; }
    public DateTimeOffset? DischargedAt { get; set; }
    public DateTimeOffset CreatedAt { get; set; }

    public Patient Patient { get; set; } = null!;
    public ICollection<Observation> Observations { get; set; } = new List<Observation>();
    public ICollection<ClinicalAlert> Alerts { get; set; } = new List<ClinicalAlert>();
    public ICollection<Order> Orders { get; set; } = new List<Order>();
}