Files

28 lines
1.1 KiB
C#

using adas_core.Domain.Enums;
using adas_core.Domain.Models;
using adas_core.Domain.Models.Filter;
using adas_core.Domain.Models.MongoModels;
using adas_core.Domain.Models.Responses;
using MongoDB.Bson;
namespace adas_core.Application.Services.Interfaces;
public interface ILightBeaconService
{
Task SendColor(ObjectId pocId, LightBeaconColor color);
Task SendColor(PointOfCare pocId, LightBeaconColor color);
Task SendBeaconBroadcast(PointOfCare poc, LightBeaconColor color);
Task SendBeaconBroadcast(ObjectId poc, LightBeaconColor color);
Task PowerOffLed(ObjectId pocId);
Task PowerOffLed(PointOfCare poc);
void GenerateColorAlert(PatientObservation obs);
//TODO refactor, one patient can have multiple beacons
public Task<LightBeaconColor> GetColor(ObjectId pocId);
public Task<LightBeaconColor> GetColor(PointOfCare poc);
Task<LightBeacon?> UpdateOne(LightBeacon beacon);
Task<LightBeacon?> InsertOne(LightBeacon beacon);
Task<PaginationResponse<LightBeacon>> GetPaginatedBeacons(PaginationFilter request);
Task<List<LightBeacon>> GetSearchByName(string textToSearch);
}