using adas_core.Domain.Models.MongoModels; using MongoDB.Bson; namespace adas_core.Application.Services.Interfaces; public interface IArchivePatientCarePlanService { /// /// Retrieves a list of patient care plans associated with the specified patient identifier. /// /// The unique identifier of the patient whose care plans are being retrieved. /// A task that represents the asynchronous operation. The task result contains a list of objects if found, or null if no care plans exist for the patient. Task?> FindByPatientId(ObjectId id); /// /// Retrieves the list of care plans associated with the specified patient identifier. /// /// The unique identifier of the patient whose care plans should be retrieved. /// A task that returns a list of records for the patient, or null if no care plans are found. Task?> FindByPatientId(string id); /// /// Retrieves a list of patient care plans associated with the specified patient number. /// /// The patient number used to locate the associated care plans. /// A task that returns a list of for the given patient number, or null if no care plans are found. Task?> FindByPatientNumber(string id); /// /// Asynchronously retrieves all patient care plans. /// /// A task that represents the asynchronous operation, containing a list of objects. Task> FindAll(); // Task UpdateTreatment(PatientCarePlan patientCarePla, List options); // Task UpdateProcedure(PatientCarePlan patientCarePla, List options); /// /// Asynchronously inserts a single patient care plan and returns the inserted entity, or null if the insert did not produce a result. /// /// The patient care plan to insert. /// A that represents the asynchronous insert operation, containing the inserted or null if no entity was returned. Task InsertOneAsync(PatientCarePlan patientCarePla); /// /// Asynchronously inserts a collection of patient care plans into the data store in a single bulk operation. /// /// The list of entities to be inserted. Task InsertManyAsync(List patientCarePla); // Task Update(PatientCarePlan oldPatientCarePla, PatientCarePlan newPatientCarePla); // Task FindByIds(ObjectId oldPatientCarePlaId, string? oldPatientCarePlaPatientId, string? oldPatientCarePlaPatientNumber); }