using adas_core.Domain.Models.Masters;
using adas_core.Domain.Models.MongoModels;
using MongoDB.Bson;

namespace adas_core.Application.Services.Interfaces;

public interface IPatientCarePlanService
{
    Task<List<PatientCarePlan>> FindByPatientId(ObjectId patientId);
    Task<List<PatientCarePlan>> FindByUserId(ObjectId userId);
    Task<List<PatientCarePlan>> FindAll();
    Task InsertOneAsync(PatientCarePlan patientCarePlan);
    Task ArchiveCarePlanFromJob(Patient patientWithFinishedProcedure, List<OptionList> itemsToArchive);

    Task ArchiveByPatientId(ObjectId patientid);
    Task UpdateManyObjectId(string patientid, ObjectId patientId, ObjectId oldId);
}