55 lines
2.1 KiB
C#
55 lines
2.1 KiB
C#
using adas_core.Domain.Enums;
|
|
using MongoDB.Bson;
|
|
|
|
namespace adas_core.Domain.Models.MongoModels;
|
|
|
|
/// <summary>
|
|
/// Represents a point-of-care location or entity within a healthcare delivery context.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// This class serves as a data model for capturing information related to a specific point where care is administered to patients.
|
|
/// </remarks>
|
|
public class PointOfCare
|
|
{
|
|
public ObjectId Id { get; set; }
|
|
public string Room { get; set; } = string.Empty;
|
|
public string Bed { get; set; } = string.Empty;
|
|
public string? Hall { get; set; } = string.Empty;
|
|
public ObjectId UnitId { get; set; }
|
|
public PointOfCareConfiguration? Configuration { get; set; }
|
|
public StatusEnum.PointOfCare Status { get; set; }
|
|
public ObjectId? AdmissionId { get; set; }
|
|
|
|
#region Unmap
|
|
|
|
public string UnitName { get; set; } = string.Empty;
|
|
public Unit? Unit { get; set; }
|
|
public PatientLocation Location => new(UnitName, Bed, Room);
|
|
public List<PatientObservation> Observations { get; set; } = [];
|
|
public bool? HasPatient { get; set; }
|
|
public ObjectId? Patientid { get; set; }
|
|
public Patient? Patient { get; set; }
|
|
public bool? IsActive { get; set; }
|
|
public bool? IsVisible { get; set; }
|
|
public Admission? Admission { get; set; }
|
|
|
|
#endregion
|
|
}
|
|
|
|
/// <summary>
|
|
/// Represents the configuration settings for a point-of-care system, encapsulating the parameters and options required to manage its behavior.
|
|
/// </summary>
|
|
public class PointOfCareConfiguration
|
|
{
|
|
public List<ObjectId>? BeaconIdList { get; set; } = [];
|
|
public List<ObjectId>? CameraIdList { get; set; } = [];
|
|
public List<ObjectId>? RelayIdList { get; set; }
|
|
public List<LightBeacon>? BeaconList { get; private set; }
|
|
public List<Camera>? CameraList { get; private set; }
|
|
public List<Relay>? RelayList { get; private set; }
|
|
public string? Type { get; set; }
|
|
|
|
// Esta parte hay que tenerla en cuenta al momento de lanzar las grabaciones automaticas y manuales para la API de OR
|
|
// OR espera recibir roomId
|
|
public int? Id { get; set; }
|
|
} |