Ajout des commentaires du service collaborateur

develop
Yanaël GRETTE 4 years ago
parent d673d32cb3
commit 8768f63fac
  1. 99
      Services/CollaborateurService.cs

@ -12,16 +12,31 @@ using System.Threading.Tasks;
namespace EPAServeur.Services
{
/// <summary>
/// Service permettant de récupérer les informations collaborateurs.
/// </summary>
public class CollaborateurService : ICollaborateurService
{
#region Variables
/// <summary>
/// API pour accéder aux données collaborateur en passant par le service collaborateur
/// </summary>
private readonly ICollaborateurApi collaborateurApi;
#endregion
#region Constructeurs
public CollaborateurService(ICollaborateurApi _collaborateurApi)
{
collaborateurApi = _collaborateurApi;
}
#endregion
#region Services
/// <summary>
/// Récupérer un collaborateur en fonction d'un id
/// </summary>
/// <param name="id">Identifiant du collaborateur à renvoyer</param>
/// <returns>Le collaborateur corresponant à l'id en paramètre</returns>
public CollaborateurDTO GetCollaborateurById(Guid? id)
{
Collaborateur collaborateur = collaborateurApi.ChercherCollabId(id);
@ -30,6 +45,11 @@ namespace EPAServeur.Services
return GetCollaborateurDTO(collaborateur);
}
/// <summary>
/// Récupérer un collaborateur en fonction d'un mail
/// </summary>
/// <param name="mail">Mail du collaborateur à renvoyer</param>
/// <returns>Le collaborateur correspondant au mail en paramètre</returns>
public CollaborateurDTO GetCollaborateurByMail(string mail)
{
Collaborateur collaborateur = collaborateurApi.ChercherCollabMail(mail);
@ -38,7 +58,24 @@ namespace EPAServeur.Services
return GetCollaborateurDTO(collaborateur);
}
/// <summary>
/// Récupérer la liste de tous les collaborateurs
/// </summary>
///
/// <param name="asc">Précise si la liste est trié dans l'ordre croissant ou décroissant</param>
/// <param name="numPage">Numéro de la page qui est affiché du côté front</param>
/// <param name="parPage">Nombre de collaborateurs à renvoyer</param>
/// <param name="fonctions">Liste des fonctions</param>
/// <param name="idAgence">id de l'agence à laquelle appartient les collaborateurs à récupérer</param>
/// <param name="idBU"></param>
/// <param name="texte">permet de récupérer les collaborateurs dont le nom + prénom ou le prénom + nom contient le texte</param>
/// <param name="tri">Choisir l'attribut par lequel est trié la liste</param>
/// <remarks>
/// <para> idBU est à prendre en compte avant l'idAgence</para>
/// <para> idAgence n'est à prendre en compte que si idBU est nul </para>
/// </remarks>
///
/// <returns>Renvoie la liste des collaborateurs en fonction des paramètres</returns>
public IEnumerable<CollaborateurDTO> GetCollaborateurs(bool? asc, int? numPage, int? parPage, List<string> fonctions, long? idAgence, long? idBU, string texte, string tri)
{
if (texte == null)
@ -64,15 +101,26 @@ namespace EPAServeur.Services
return collaborateursDTO;
}
/// <summary>
/// Récupérer les collaborateurs d'un référent
/// </summary>
/// <param name="idReferent">id du référent des collaborateurs à récupérer</param>
/// <param name="asc">Précise si la liste est trié dans l'ordre croissant ou décroissant</param>
/// <param name="numPage">Numéro de la page qui est affiché du côté front</param>
/// <param name="parPage">Nombre de collaborateurs à renvoyer</param>
/// <param name="texte">permet de récupérer les collaborateurs dont le nom + prénom ou le prénom + nom contient le texte</param>
/// <param name="tri">Choisir l'attribut par lequel est trié la liste</param>
/// <returns>Renvoyer les collaborateurs du référent dont l'id est passé en paramètre</returns>
public IEnumerable<CollaborateurDTO> GetCollaborateursByReferent(Guid? idReferent, bool? asc, int? numPage, int? parPage, string texte, string tri)
{
Collaborateur referent = collaborateurApi.ChercherCollabId(idReferent);
if (referent == null)
return null;
if (texte == null)
texte = "";
else
texte = texte.ToLower();
Collaborateur referent = collaborateurApi.ChercherCollabId(idReferent);
if (referent == null)
return null;
IEnumerable<Collaborateur> collaborateurs = collaborateurApi.ChercherCollabRef(idReferent);
int skip = (numPage.Value - 1) * parPage.Value;
int take = parPage.Value;
@ -82,6 +130,11 @@ namespace EPAServeur.Services
return collaborateursDTO;
}
/// <summary>
/// Récupérer le profil d'un collaborateur par mail
/// </summary>
/// <param name="mail">mail du collaborateur dont on cherche le profil</param>
/// <returns>Renvoie le profil correspondant au mail passé en paramètre</returns>
public ProfilDTO GetProfilByMail(string mail)
{
Collaborateur collaborateur = collaborateurApi.ChercherCollabMail(mail);
@ -90,6 +143,11 @@ namespace EPAServeur.Services
return GetProfilDTO(collaborateur);
}
/// <summary>
/// Récupérer un profil d'un collaborateur par l'id
/// </summary>
/// <param name="idCollaborateur">id du collaborateur dont on cherche le profil</param>
/// <returns>Renvoie le profil correspondant à l'id passé en paramètre</returns>
public ProfilDTO GetProfilById(Guid? idCollaborateur)
{
Collaborateur collaborateur = collaborateurApi.ChercherCollabId(idCollaborateur);
@ -97,8 +155,15 @@ namespace EPAServeur.Services
return null;
return GetProfilDTO(collaborateur);
}
#endregion
//Object to DTO
#region DTO To Object
/// <summary>
/// Transformer un objet collaborateur en ProfilDTO
/// </summary>
/// <param name="collaborateur">collaborateur a transformé en profilDTO</param>
/// <returns>Renvoie le profil associé au collaborateur passé en paramètre</returns>
private ProfilDTO GetProfilDTO(Collaborateur collaborateur)
{
ProfilDTO profilDTO = new ProfilDTO()
@ -113,7 +178,11 @@ namespace EPAServeur.Services
return profilDTO;
}
/// <summary>
/// Transformer une agence en agenceDTO
/// </summary>
/// <param name="agence">agence à transformer en agenceDTO</param>
/// <returns>Retourne la transformation DTO de l'agence</returns>
private AgenceDTO GetAgenceDTO(Agence agence)
{
if (agence == null)
@ -132,6 +201,11 @@ namespace EPAServeur.Services
return agenceDTO;
}
/// <summary>
/// Transforme une businessUnit en businessUnitDTO
/// </summary>
/// <param name="businessUnit">businessUnit à transformer en businessUnitDTO</param>
/// <returns>Retourne la transformation DTO de la businessUnit</returns>
private BusinessUnitDTO GetBusinessUnitDTO(BU businessUnit)
{
if (businessUnit == null)
@ -145,6 +219,11 @@ namespace EPAServeur.Services
return businessUnitDTO;
}
/// <summary>
/// Transforme un collaborateur en collaborateurDTO
/// </summary>
/// <param name="collaborateur">collaborateur à transformer en collaborateurDTO</param>
/// <returns>Renvoie la transformation DTO du collaborateur</returns>
private CollaborateurDTO GetCollaborateurDTO(Collaborateur collaborateur)
{
CollaborateurDTO collaborateurDTO = new CollaborateurDTO()
@ -161,6 +240,11 @@ namespace EPAServeur.Services
return collaborateurDTO;
}
/// <summary>
/// Transforme un referent en referentDTO
/// </summary>
/// <param name="referent">referent à transformer en referentDTO</param>
/// <returns>Renvoie la transformation DTO du referent</returns>
private ReferentDTO GetReferentDTO(Referent referent)
{
if (referent == null)
@ -174,5 +258,6 @@ namespace EPAServeur.Services
};
return referentDTO;
}
#endregion
}
}

Loading…
Cancel
Save