58 lines
2.2 KiB
C#
58 lines
2.2 KiB
C#
using adas_core.Domain.Enums;
|
|
using adas_core.Domain.Models.Filter;
|
|
using adas_core.Domain.Models.Masters;
|
|
using adas_core.Domain.Models.MongoModels;
|
|
using adas_core.Domain.Models.Responses;
|
|
using MongoDB.Bson;
|
|
|
|
namespace adas_core.Application.Services.Interfaces;
|
|
|
|
public interface IPointOfCareService
|
|
{
|
|
Task Delete(ObjectId id);
|
|
|
|
Task<PointOfCare?> Update(PointOfCare pointOfCare);
|
|
|
|
Task UpdateUnit(ObjectId id, Unit unit);
|
|
Task<List<PointOfCare>> GetAll();
|
|
|
|
Task<List<PointOfCare>> GetAllConfigs();
|
|
Task<List<PointOfCare>> GetAllLocationInfo();
|
|
|
|
Task UpdateConfiguration(ObjectId id, PointOfCareConfiguration configuration);
|
|
|
|
Task<PointOfCare?> FindById(ObjectId id);
|
|
Task<PointOfCare?> FindByIdAllConfig(ObjectId id);
|
|
|
|
Task<IEnumerable<PointOfCare>?> FindAllByUnitId(ObjectId unit);
|
|
|
|
Task<IEnumerable<PointOfCare>?> FindByRoom(string room);
|
|
|
|
Task<IEnumerable<PointOfCare>?> FindByBed(string bed);
|
|
|
|
Task<List<PointOfCare>> FindAllByUnitIds(List<ObjectId> unitIds);
|
|
|
|
Task<PointOfCare?> GetInfo(ObjectId id, LocaleEnum? locale = null, bool fillPatientData = true, CancellationToken ct = default);
|
|
|
|
Task<PointOfCare?> InsertPointOfCare(PointOfCare pointOfCare);
|
|
Task<PointOfCare?> FindPoCByPatientId(ObjectId patientId);
|
|
|
|
Task SetPointOfCareStatus(ObjectId id, StatusEnum.PointOfCare status);
|
|
|
|
Task<IEnumerable<PointOfCare>> FindByUnitAndStatus(ObjectId unitId, StatusEnum.PointOfCare poc,
|
|
bool excludeVirtual = false);
|
|
|
|
void CheckNextAdmission(ObjectId? patientLocation);
|
|
Task<PointOfCare?> FindByBedAndUnitId(string? bed, ObjectId? unitId);
|
|
Task UpdateRelayConfig(PointOfCare poc);
|
|
Task<PointOfCare?> FindPoCByPatientNumber(string patientNumber);
|
|
|
|
Task<long> CountPoCsByUnitId(ObjectId unitId);
|
|
Task<long> CountVirtualPoCsByUnitId(ObjectId unitId);
|
|
Task<PaginationResponse<PointOfCare>> GetPaginatedPoCs(PaginationFilter filter);
|
|
Task DeletePoCsByUnitId(ObjectId unitId);
|
|
Task<HashSet<ObjectId>> FindAllIdCamerasInUse();
|
|
Task<HashSet<ObjectId>> FindAllIdRelaysInUse();
|
|
Task<HashSet<ObjectId>> FindAllIdBeaconsInUse();
|
|
Task<IEnumerable<PointOfCare>?> FindAllByUnitIdWithDevices(ObjectId unitId);
|
|
} |