using EPAServeur.Context; using EPAServeur.Models.EP; using EPAServeur.Models.Formation; using IO.Swagger.DTO; using IO.Swagger.ModelCollaborateur; using System; using System.Collections.Generic; using System.Linq; using System.Reflection.Metadata; using System.Threading.Tasks; namespace EPAServeur.IServices { public interface ICollaborateurService { Task GetCollaborateurByIdAsync(Guid? id); Task GetCollaborateurByMailAsync(string mail); Task> GetCollaborateursAsync(List roles, List idBUs, bool? asc, int? numPage, int? parPAge, string texte, string tri, DateTime? dateDebut, DateTime? dateFin); Task GetCollaborateursCountAsync(List roles, List idBUs, string texte, DateTime? dateDebut, DateTime? dateFin); Task> GetCollaborateursByReferentAsync(Guid? idReferent, bool? asc, int? numPage, int? parPage, string texte, string tri); Task GetCollaborateursCountByReferentAsync(Guid? idReferent, string texte); Task> GetReferentsPrecedentsEPAsync(Guid? idCollaborateur); Task> GetCollaborateurDTOsAsync(List guids); Task> GetCollaborateurDTOsAsync(List participationsFormation); Task> GetCollaborateurDTOsAsync(IEnumerable participationsFormation); Task> GetCollaborateurDTOsAsync(IEnumerable demandeFormations); Task> GetCollaborateurDTOsAsync(Engagement engagement); Task> GetCollaborateurDTOsAsync(IEnumerable engagements); Task> GetCollaborateurDTOsAsync(IEnumerable eps); Task GetCollaborateurDTOAsync(Collaborateur collaborateur, bool chercherReferent); } }