using adas_core.Application.Repositories.Interfaces;
using adas_core.Application.Services.Interfaces;
using adas_core.Domain.Models;
using MongoDB.Bson;
namespace adas_core.Application.Services;
///
/// Implements to archive patient observations through the supplied .
///
///
/// The archive repository dependency is provided via the primary constructor and is used to perform the underlying archiving operations.
///
///
public class ArchivePatientObservationsService(IObservationArchiveRepository archivedPatientObservationService)
: IArchivedPatientObservationService
{
///
/// Retrieves all archived patient observations associated with the specified patient.
///
/// The unique identifier of the patient whose archived observations are being requested.
/// A task that represents the asynchronous operation, containing a list of archived records for the patient.
///
public async Task> FindArchivedPatientObservationsFromPatient(ObjectId patientId)
{
return await archivedPatientObservationService.FindAllFromPatient(patientId);
}
}