Implémentatin de la récupération de la demande d'EPI

develop
Yanaël GRETTE 4 years ago
parent c54d9fc48b
commit 73e9a0315c
  1. 16
      EPAServeur.Tests/Services/EpDetailsServiceTests.cs
  2. 35
      EPAServeur/Context/DataSeeder.cs
  3. 3
      EPAServeur/Services/EpDetailsService.cs
  4. 16
      EPAServeur/Services/TransformDTO.cs

@ -253,6 +253,20 @@ namespace EPAServeur.Tests.Services
}
#endregion
#region Demande EPI
[TestCase(4)]
[TestCase(8)]
[TestCase(13)]
public async Task GetEp_GetDemandeEPI(long idEp)
{
IEpDetailsService epDetailsService = new EpDetailsService(context, transformDTO, collaborateurService);
EpDTO epDTO = await epDetailsService.GetEp(idEp);
Assert.IsNotNull(epDTO);
Assert.IsNotNull(epDTO.DemandeEPI);
Assert.IsTrue(epDTO.Collaborateur.Id.Equals(epDTO.DemandeEPI.Collaborateur.Id));
Assert.AreEqual(epDTO.DemandeEPI.EtatDemande, EtatDemande.Validee);
}
#endregion
#region Récupérer EP avec demandes de formation
#endregion
@ -262,8 +276,6 @@ namespace EPAServeur.Tests.Services
#region Demande EPI
#endregion
#region
#endregion

@ -104,6 +104,8 @@ namespace EPAServeur.Context
ObjectifPrecedent objectifPrecedent1, objectifPrecedent2, objectifPrecedent3, objectifPrecedent4, objectifPrecedent5, objectifPrecedent6;
DemandeEPI demandeEPI1, demandeEPI2, demandeEPI3;
//Ep en cours
Ep epEnCours1, epEnCours2, epEnCours3, epEnCours4, epEnCours5, epEnCours6, epEnCours7, epEnCours8, epEnCours9;
@ -276,6 +278,17 @@ namespace EPAServeur.Context
EtatDemande = EtatDemande.EnAttente,
RaisonDemande = "Raison quelconque 2"
};
demandeEPI1 = new DemandeEPI()
{
IdReferent = new Guid("eb8b0f33-f529-4985-861e-1207f3312bb5"),
Ep = epEnCours4,
DateDemande = new DateTime(),
DateReponse = new DateTime(),
EtatDemande = EtatDemande.Validee,
IdCollaborateur = new Guid("a0f40e2a-cc03-4032-a627-5389e1281c64")
};
epEnCours4.DemandeEPI = demandeEPI1;
epEnCours4.DemandeDelegation = dm2;
choix5 = new ChoixTypeEntretien()
@ -437,6 +450,17 @@ namespace EPAServeur.Context
RaisonDemande = "Raison quelconque 3"
};
epEnCours8.DemandeDelegation = dm3;
demandeEPI2 = new DemandeEPI()
{
IdReferent = new Guid("ea027734-ff0f-4308-8879-133a09fb3c46"),
Ep = epEnCours8,
DateDemande = new DateTime(),
DateReponse = new DateTime(),
EtatDemande = EtatDemande.Validee,
IdCollaborateur = new Guid("0968ccd3-1ef5-4041-83f3-1c76afb02bbf"),
};
epEnCours8.DemandeEPI = demandeEPI2;
epEnCours9 = new Ep()
{
@ -561,6 +585,17 @@ namespace EPAServeur.Context
IdCollaborateur = new Guid("a0f40e2a-cc03-4032-a627-5389e1281c64"),
Obligatoire = false,
};
demandeEPI3 = new DemandeEPI()
{
IdReferent = new Guid("eb8b0f33-f529-4985-861e-1207f3312bb5"),
IdCollaborateur = new Guid("a0f40e2a-cc03-4032-a627-5389e1281c64"),
DateDemande = new DateTime(),
EtatDemande = EtatDemande.Validee,
DateReponse = new DateTime(),
Ep = epSigne4
};
epSigne4.DemandeEPI = demandeEPI3;
epContext.Ep.Add(epSigne4);
epSigne5 = new Ep()

@ -36,6 +36,7 @@ namespace EPAServeur.Services
.Include(ep => ep.ChoixTypeEntretien).ThenInclude( c => c.TypeEntretien)
.Include(ep => ep.Objectifs)
.Include(ep => ep.ObjectifsPrecedents)
.Include(ep => ep.DemandeEPI)
.FirstOrDefaultAsync(ep => ep.IdEP.Equals(id));
if (ep == null)
throw new EpNotFoundException();
@ -53,6 +54,8 @@ namespace EPAServeur.Services
guids.AddRange(ep.CommentairesAssistant.SelectMany(p => new[] { (Guid?)p.IdAssistant }));
if (ep.DemandeDelegation != null)
guids.Add(ep.DemandeDelegation.IdReferent);
if (ep.DemandeEPI != null && ep.DemandeEPI.IdReferent != null)
guids.Add(ep.DemandeEPI.IdReferent);
IEnumerable<CollaborateurDTO> collaborateurDTOs = await collaborateurService.GetCollaborateurDTOsAsync(guids);

@ -69,7 +69,8 @@ namespace EPAServeur.Services
PropositionsEntretien = GetRDVEntretienDTOs(ep.PropositionsRDV),
ChoixTypeEntretien = GetTypeEntretienDTOs(ep.ChoixTypeEntretien),
Objectifs = GetObjectifDTOs(ep.Objectifs),
ObjectifsPrecedent = GetObjectifPrecedentDTO(ep.ObjectifsPrecedents)
ObjectifsPrecedent = GetObjectifPrecedentDTO(ep.ObjectifsPrecedents),
DemandeEPI = GetDemandeEPIDTO(ep.DemandeEPI, collaborateurDTOs)
};
}
@ -290,7 +291,18 @@ namespace EPAServeur.Services
/// <returns></returns>
public DemandeEPIDTO GetDemandeEPIDTO(DemandeEPI demande, IEnumerable<CollaborateurDTO> collaborateurDTOs)
{
throw new NotImplementedException();
if (demande == null)
return null;
return new DemandeEPIDTO()
{
Collaborateur = collaborateurDTOs.FirstOrDefault(c => c.Id.Equals(demande.IdCollaborateur)),
Id = demande.IdDemandeEPI,
DateDemande = demande.DateDemande,
DateReponse = demande.DateReponse,
EtatDemande = demande.EtatDemande,
RaisonRefus = demande.RaisonRefus,
Referent = collaborateurDTOs.FirstOrDefault(c => c.Id.Equals(demande.IdReferent))
};
}

Loading…
Cancel
Save