using adas_core.Domain.Models.Masters; using MongoDB.Bson; namespace adas_core.Domain.Models.MongoModels; public class Admission { public ObjectId Id { get; set; } public DateTime AdmissionDate { get; set; } public string Nhc { get; set; } = string.Empty; public ObjectId UnitId { get; set; } public ObjectId? PointOfCareId { get; set; } public Person? Person { get; set; } public OptionList? Origin { get; set; } public string? OriginAux { get; set; } public OptionList? Diagnosis { get; set; } public string? DiagnosisAux { get; set; } public List? Allergies { get; set; } public OptionList? Insulation { get; set; } public List? LanguageBarrier { get; set; } public OptionList? PassiveSitting { get; set; } #region UnMap public PatientLocation? PatientLocation { get; set; } #endregion public override string ToString() { List items = []; if (!string.IsNullOrEmpty(Nhc)) items.Add($"NHC: {Nhc}"); if (Person != null) items.Add($", Person: {Person}"); items.Add($"Admission Date: {AdmissionDate}"); if (PointOfCareId != null) items.Add($"Location: {PointOfCareId}"); if (PatientLocation != null) items.Add($"Location: {PatientLocation}"); if (Origin != null) items.Add($", Origin: {Origin.Name}"); if (Diagnosis != null) items.Add($", Diagnosis; {Diagnosis.Name}"); if (Allergies != null) { items.Add("Allergies:"); Allergies.ForEach(a => items.Add($", Allergy; {a.Name}")); } return "Admission [" + string.Join(", ", items) + "]"; } }