MAJ du modèle pour la partie EP

develop
jboinembalome 4 years ago
parent eb61b11b23
commit 3ff19b51b7
  1. 6
      EPAServeur/Context/DataSeeder.cs
  2. 59
      EPAServeur/Context/EpContext.cs
  3. 30
      EPAServeur/Models/EP/AugmentationSalaire.cs
  4. 15
      EPAServeur/Models/EP/Autorisation.cs
  5. 8
      EPAServeur/Models/EP/ChoixTypeEntretien.cs
  6. 30
      EPAServeur/Models/EP/CommentaireAssistant.cs
  7. 20
      EPAServeur/Models/EP/Delegation.cs
  8. 56
      EPAServeur/Models/EP/DemandeDelegation.cs
  9. 56
      EPAServeur/Models/EP/DemandeEPI.cs
  10. 13
      EPAServeur/Models/EP/Document.cs
  11. 43
      EPAServeur/Models/EP/Engagement.cs
  12. 119
      EPAServeur/Models/EP/Ep.cs
  13. 13
      EPAServeur/Models/EP/Objectif.cs
  14. 27
      EPAServeur/Models/EP/ObjectifPrecedent.cs
  15. 14
      EPAServeur/Models/EP/ParticipantEP.cs
  16. 30
      EPAServeur/Models/EP/ParticipationEP.cs
  17. 22
      EPAServeur/Models/EP/RdvEntretien.cs
  18. 26
      EPAServeur/Models/EP/ReferentEP.cs
  19. 13
      EPAServeur/Models/EP/TypeEntretien.cs
  20. 14
      EPAServeur/Services/EngagementService.cs

@ -320,7 +320,7 @@ namespace EPAServeur.Context
engagement1 = new Engagement engagement1 = new Engagement
{ {
Action = "Je m'engage à...", Action = "Je m'engage à...",
Disposition = "interne", Dispositif = "interne",
Modalite = "Modalite", Modalite = "Modalite",
DateLimite = new DateTime(2017, 7, 7), DateLimite = new DateTime(2017, 7, 7),
Realise = false, Realise = false,
@ -333,7 +333,7 @@ namespace EPAServeur.Context
engagement2 = new Engagement engagement2 = new Engagement
{ {
Action = "Je m'engage à faire...", Action = "Je m'engage à faire...",
Disposition = "externe", Dispositif = "externe",
Modalite = "Modalite 2", Modalite = "Modalite 2",
DateLimite = new DateTime(2017, 7, 8), DateLimite = new DateTime(2017, 7, 8),
Realise = true, Realise = true,
@ -346,7 +346,7 @@ namespace EPAServeur.Context
engagement3 = new Engagement engagement3 = new Engagement
{ {
Action = "Je m'engage à faire...", Action = "Je m'engage à faire...",
Disposition = "externe", Dispositif = "externe",
Modalite = "Modalite 3", Modalite = "Modalite 3",
DateLimite = new DateTime(2017, 7, 8), DateLimite = new DateTime(2017, 7, 8),
Realise = null, Realise = null,

@ -18,7 +18,6 @@ namespace EPAServeur.Context
//EP //EP
public DbSet<AugmentationSalaire> AugmentationSalaire { get; set; } public DbSet<AugmentationSalaire> AugmentationSalaire { get; set; }
public DbSet<Autorisation> Autorisation { get; set; }
public DbSet<ChoixTypeEntretien> ChoixTypeEntretien { get; set; } public DbSet<ChoixTypeEntretien> ChoixTypeEntretien { get; set; }
public DbSet<Document> Document { get; set; } public DbSet<Document> Document { get; set; }
public DbSet<Engagement> Engagement { get; set; } public DbSet<Engagement> Engagement { get; set; }
@ -26,6 +25,8 @@ namespace EPAServeur.Context
public DbSet<Objectif> Objectif { get; set; } public DbSet<Objectif> Objectif { get; set; }
public DbSet<ObjectifPrecedent> ObjectifPrecedent { get; set; } public DbSet<ObjectifPrecedent> ObjectifPrecedent { get; set; }
public DbSet<RdvEntretien> RdvEntretien { get; set; } public DbSet<RdvEntretien> RdvEntretien { get; set; }
public DbSet<ReferentEP> ReferentEP { get; set; }
public DbSet<TypeEntretien> TypeEntretien { get; set; } public DbSet<TypeEntretien> TypeEntretien { get; set; }
//Formation //Formation
@ -53,68 +54,76 @@ namespace EPAServeur.Context
//EP //EP
modelBuilder.Entity<AugmentationSalaire>(entity => modelBuilder.Entity<AugmentationSalaire>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdAugmentationSalaire);
entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.Property(e => e.IdAugmentationSalaire).ValueGeneratedOnAdd();
}); });
modelBuilder.Entity<Autorisation>(entity =>
{
entity.HasKey(e => e.Id);
entity.Property(e => e.Id).ValueGeneratedOnAdd();
});
modelBuilder.Entity<Document>(entity => modelBuilder.Entity<Document>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdDocument);
entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.Property(e => e.IdDocument).ValueGeneratedOnAdd();
}); });
modelBuilder.Entity<Engagement>(entity => modelBuilder.Entity<Engagement>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdEngagement);
entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.Property(e => e.IdEngagement).ValueGeneratedOnAdd();
}); });
modelBuilder.Entity<Ep>(entity => modelBuilder.Entity<Ep>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdEP);
entity.HasOne<AugmentationSalaire>(e => e.AugmentationSalaire).WithOne(a => a.Ep).HasForeignKey<AugmentationSalaire>(a => a.EpId); entity.HasOne<AugmentationSalaire>(e => e.AugmentationSalaire).WithOne(a => a.Ep).HasForeignKey<AugmentationSalaire>(a => a.IdEP);
entity.HasOne<Autorisation>(e => e.Autorisation).WithOne(a => a.Ep).HasForeignKey<Autorisation>(a => a.EpId);
entity.HasMany<ChoixTypeEntretien>(e => e.ChoixTypeEntretien).WithOne(c => c.Ep); entity.HasMany<ChoixTypeEntretien>(e => e.ChoixTypeEntretien).WithOne(c => c.Ep);
entity.HasOne<Delegation>(e => e.Delegation).WithOne(d => d.Ep).HasForeignKey<Delegation>(d => d.EpId); entity.HasOne<DemandeDelegation>(e => e.Delegation).WithOne(d => d.Ep).HasForeignKey<DemandeDelegation>(d => d.IdEP);
entity.HasMany<DemandeFormation>(e => e.DemandesFormation).WithOne(d => d.Ep); entity.HasMany<DemandeFormation>(e => e.DemandesFormation).WithOne(d => d.Ep);
entity.HasMany<CommentaireAssistant>(e => e.CommentairesAssistant).WithOne(c => c.Ep);
entity.HasMany<Document>(e => e.Documents).WithOne(d => d.Ep); entity.HasMany<Document>(e => e.Documents).WithOne(d => d.Ep);
entity.HasMany<Engagement>(e => e.Engagements).WithOne(e => e.Ep); entity.HasMany<Engagement>(e => e.Engagements).WithOne(e => e.Ep);
entity.HasMany<Objectif>(e => e.Objectifs).WithOne(o => o.Ep); entity.HasMany<Objectif>(e => e.Objectifs).WithOne(o => o.Ep);
entity.HasMany<ObjectifPrecedent>(e => e.ObjectifsPrecedents).WithOne(o => o.Ep); entity.HasMany<ObjectifPrecedent>(e => e.ObjectifsPrecedents).WithOne(o => o.Ep);
entity.HasMany<ParticipantEP>(e => e.Participants).WithOne(p => p.Ep); entity.HasMany<ParticipationEP>(e => e.Participants).WithOne(p => p.Ep);
entity.HasOne<RdvEntretien>(e => e.RdvEntretien).WithOne(r => r.EpChoixFinal).HasForeignKey<RdvEntretien>(r => r.EpId); entity.HasOne<RdvEntretien>(e => e.RdvEntretien).WithOne(r => r.EpChoixRDV).HasForeignKey<RdvEntretien>(r => r.IdEPChoixRDV);
entity.HasMany<RdvEntretien>(e => e.PropositionsRDV).WithOne(r => r.EpProposition); entity.HasMany<RdvEntretien>(e => e.PropositionsRDV).WithOne(r => r.EpProposition);
entity.HasOne<DemandeEPI>(e => e.DemandeEPI).WithOne(a => a.Ep).HasForeignKey<DemandeEPI>(a => a.IdEP);
}); });
modelBuilder.Entity<Objectif>(entity => modelBuilder.Entity<Objectif>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdObjectif);
entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.Property(e => e.IdObjectif).ValueGeneratedOnAdd();
}); });
modelBuilder.Entity<ObjectifPrecedent>(entity => modelBuilder.Entity<ObjectifPrecedent>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdObjectif);
entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.Property(e => e.IdObjectif).ValueGeneratedOnAdd();
}); });
modelBuilder.Entity<RdvEntretien>(entity => modelBuilder.Entity<RdvEntretien>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdRdvEntretien);
entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.Property(e => e.IdRdvEntretien).ValueGeneratedOnAdd();
});
modelBuilder.Entity<ReferentEP>(entity =>
{
entity.HasKey(e => e.IdCollaborateur);
}); });
modelBuilder.Entity<TypeEntretien>(entity => modelBuilder.Entity<TypeEntretien>(entity =>
{ {
entity.HasKey(e => e.Id); entity.HasKey(e => e.IdTypeEntretien);
entity.HasIndex(e => e.Libelle).IsUnique(); entity.HasIndex(e => e.Libelle).IsUnique();
}); });
modelBuilder.Entity<CommentaireAssistant>(entity =>
{
entity.HasKey(e => e.IdCommentaireAssistant);
entity.Property(e => e.IdCommentaireAssistant).ValueGeneratedOnAdd();
});
//Formation //Formation
modelBuilder.Entity<DemandeFormation>(entity => modelBuilder.Entity<DemandeFormation>(entity =>
{ {

@ -5,13 +5,37 @@ using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Augmentation du salaire pris par le référent à la suite de l’EP.
/// </summary>
public class AugmentationSalaire public class AugmentationSalaire
{ {
public long Id { get; set; } /// <summary>
/// Id de l’augmentation du salaire
/// </summary>
public long IdAugmentationSalaire { get; set; }
/// <summary>
/// Pourcentage de l’augmentation du salaire
/// </summary>
public float Augmentation { get; set; } public float Augmentation { get; set; }
public float? PrimeMission { get; set; }
/// <summary>
/// Pourcentage de l’augmentation de la prime de mission
/// </summary>
public float? AugmentationPrimeMission { get; set; }
/// <summary>
/// Message laissé par le référent à la suite de l’augmentation du salaire
/// </summary>
public string Message { get; set; } public string Message { get; set; }
public long EpId { get; set; }
/// <summary>
/// Id de l'EP
/// </summary>
public long IdEP { get; set; }
public Ep Ep { get; set; } public Ep Ep { get; set; }
} }
} }

@ -1,15 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP
{
public class Autorisation
{
public long Id { get; set; }
public string IdReferent { get; set; }
public long EpId { get; set; }
public Ep Ep { get; set; }
}
}

@ -5,10 +5,16 @@ using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Choix du type d’entretien du collaborateur par ordre de préférence.
/// </summary>
public class ChoixTypeEntretien public class ChoixTypeEntretien
{ {
public long Id { get; set; } /// <summary>
/// Numéro d’ordre de préférence
/// </summary>
public long Ordre { get; set; } public long Ordre { get; set; }
public Ep Ep { get; set; } public Ep Ep { get; set; }
public TypeEntretien TypeEntretien { get; set; } public TypeEntretien TypeEntretien { get; set; }
} }

@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP
{
/// <summary>
/// Commentaire laissé par un assistant avant que l’entretien ne soit lieu.
/// </summary>
public class CommentaireAssistant
{
/// <summary>
/// Id du commentaire de l’assistant
/// </summary>
public long IdCommentaireAssistant { get; set; }
/// <summary>
/// Id de l’assistant qui a écrit le commentaire
/// </summary>
public Guid IdAssistant { get; set; }
/// <summary>
/// Commentaire de l’assistant
/// </summary>
public string Commentaire { get; set; }
public Ep Ep { get; set; }
}
}

@ -1,20 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP
{
public class Delegation
{
public long Id { get; set; }
public string IdReferent { get; set; }
public DateTime DateDemande { get; set; }
public string RaisonDemande { get; set; }
public bool? Reponse { get; set; }
public DateTime DateReponse { get; set; }
public string RaisonRefus { get; set; }
public long EpId { get; set; }
public Ep Ep { get; set; }
}
}

@ -0,0 +1,56 @@
using IO.Swagger.Enum;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP
{
/// <summary>
/// Demande de délégation faite pour demander à une autre personne d’être le référent du prochain EP.
/// </summary>
public class DemandeDelegation
{
/// <summary>
/// Id de la demande de délégation
/// </summary>
public long IdDemandeDelegation { get; set; }
/// <summary>
/// Id de la personne à qui la demande a été faite
/// </summary>
public string IdReferent { get; set; }
/// <summary>
/// Date à laquelle la demande de délégation a été effectuée
/// </summary>
public DateTime DateDemande { get; set; }
/// <summary>
/// Raison pour laquelle la demande a été effectuée
/// </summary>
public string RaisonDemande { get; set; }
/// <summary>
/// Etat de la demande de délégation
/// </summary>
public EtatDemande EtatDemande { get; set; }
/// <summary>
/// Date à laquelle la réponse à la demande a été donnée
/// </summary>
public DateTime? DateReponse { get; set; }
/// <summary>
/// Raison pour laquelle la personne a refusé la demande de délégation
/// </summary>
public string RaisonRefus { get; set; }
/// <summary>
/// Id de l'EP
/// </summary>
public long IdEP { get; set; }
public Ep Ep { get; set; }
}
}

@ -0,0 +1,56 @@
using EPAServeur.Models.Formation;
using IO.Swagger.Enum;
using System;
using System.Collections.Generic;
namespace EPAServeur.Models.EP
{
/// <summary>
/// Demande EPI permettant de passer ou faire passer un EP différent des EPA et EPS.
/// </summary>
public class DemandeEPI
{
/// <summary>
/// Id de la demande d’EPI
/// </summary>
public long IdDemandeEPI { get; set; }
/// <summary>
/// Id du collaborateur concerné par la demande
/// </summary>
public Guid IdCollaborateur { get; set; }
/// <summary>
/// Id du référent concerné par la demande
/// </summary>
public Guid IdReferent { get; set; }
/// <summary>
/// Date à laquelle la demande a été effectuée
/// </summary>
public DateTime DateDemande { get; set; }
/// <summary>
/// Etat de la demande d’EPI
/// </summary>
public EtatDemande EtatDemande { get; set; }
/// <summary>
///Raison pour laquelle la demande d’EPI a été rejeté
/// </summary>
public string RaisonRefus { get; set; }
/// <summary>
/// Date à laquelle une réponse a été donnée
/// </summary>
public DateTime? DateReponse { get; set; }
/// <summary>
/// Id de l'EP
/// </summary>
public long IdEP { get; set; }
public Ep Ep { get; set; }
}
}

@ -7,10 +7,21 @@ using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Document contenant la saisie en fonction du type de l’EP.
/// </summary>
public class Document public class Document
{ {
public long Id { get; set; } /// <summary>
/// Id du document EP
/// </summary>
public long IdDocument { get; set; }
/// <summary>
/// Type du document, correspondant
/// </summary>
public TypeChamps TypeDocument { get; set; } public TypeChamps TypeDocument { get; set; }
public Ep Ep { get; set; } public Ep Ep { get; set; }
public List<Saisie> Saisies { get; set; } public List<Saisie> Saisies { get; set; }
} }

@ -1,20 +1,53 @@
using System; using IO.Swagger.Enum;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Engagement pris par un référent à la suite de l’EP d’un collaborateur.
/// </summary>
public class Engagement public class Engagement
{ {
public long Id { get; set; } /// <summary>
/// Id de l’engagement
/// </summary>
public long IdEngagement { get; set; }
/// <summary>
/// Action de l’engagement
/// </summary>
public string Action { get; set; } public string Action { get; set; }
public string Disposition { get; set; }
/// <summary>
/// Dispositif à mettre en place pour respecter l’engagement dans les temps
/// </summary>
public string Dispositif { get; set; }
/// <summary>
/// ”Sur temps de travail” ou ”Horstemps”
/// </summary>
public string Modalite { get; set; } public string Modalite { get; set; }
/// <summary>
/// Date limite pour respecter l’engament
/// </summary>
public DateTime DateLimite { get; set; } public DateTime DateLimite { get; set; }
public bool? Realise { get; set; }
public bool? Realisable { get; set; } /// <summary>
/// Etat de l’engagement
/// </summary>
public EtatEngagement EtatEngagement { get; set; }
/// <summary>
/// Raison pour laquelle l’engagement ne sera pas respecté
/// </summary>
public string RaisonNonRealisable { get; set; } public string RaisonNonRealisable { get; set; }
public Ep Ep { get; set; } public Ep Ep { get; set; }
} }
} }

@ -1,49 +1,105 @@
using EPAServeur.Models.Formation; using EPAServeur.Models.Formation;
using EPAServeur.Models.SaisieChamp; using IO.Swagger.Enum;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
public enum StatutEP
{
Attente, //entretien créé en attendant le mois précédent la date d'anniversaire (ou d'anniversaire +6 mois)
Disponible, //entretien disponible pour être saisi par le collaborateur
Saisie, //entretien saisi par le collaborateur et en attente des dates de RDV proposées par le référent (la saisie est disponible pour l'assistant qui veut ajouter son commentaire)
PropositionsRDV, //entretien en attente du choix du collaborateur parmi des lates de RDV ont été proposé par le référent
AttenteEntretien,//choix du RDV effectué par le collaborateur, attente que le référent valide que l'entretien a bien eu lieu
EntretienPasse, //déroulement validé par le référent, celui-ci peut ajouter ses commentaires, prendre des engagements, faire des demandes de formation, etc... (la saisie de l'assistant est désactivé
AttenteSignatureCollaborateur, //le référent a rempli ses commentaires, l'entretien est en attente de la signature du collaborateur
Signe, //l'entretien a été signé par le collaborateur
NonEffectue //l'entretien a été refusé ou n'a pas été fait dans les temps
}
/// <summary>
/// Permet de gérer l’ensemble de l’EP d’un collaborateur.
/// </summary>
public class Ep public class Ep
{ {
public long Id { get; set; } /// <summary>
/// Id de l’EP
/// </summary>
public long IdEP { get; set; }
/// <summary>
/// Id du collaborateur qui passe l’EP
/// </summary>
public Guid IdCollaborateur { get; set; } public Guid IdCollaborateur { get; set; }
public Guid IdReferent { get; set; }
public long IdAgence { get; set; } /// <summary>
/// Id du référent qui fait passer l’EP au collaborateur
/// </summary>
public Guid? IdReferent { get; set; }
/// <summary>
/// Id de la Business Unit du collaborateur au moment de la disponibilité de l’EP
/// </summary>
public long IdBu { get; set; } public long IdBu { get; set; }
/// <summary>
/// Fonction principale du collaborateur au moment de la disponibilité de l’EP
/// </summary>
public string Fonction { get; set; } public string Fonction { get; set; }
public TypeChamp TypeEP { get; set; }
/// <summary>
/// Type de l’EP (EPS, EPA, ...)
/// </summary>
public TypeEp TypeEP { get; set; }
/// <summary>
/// Numéro de l’EP en fonction de son type(EPS numéro 1, EPA numéro 1, EPS numéro 2, ...)
/// </summary>
public long? NumeroEp { get; set; } public long? NumeroEp { get; set; }
/// <summary>
/// Indique si oui ou non l’EP doit obligatoirement être effectué
/// </summary>
public bool Obligatoire { get; set; } public bool Obligatoire { get; set; }
public DateTime DateCreation { get; set; }
public DateTime DateSaisie { get; set; } /// <summary>
public DateTime DatePrevisionnelle { get; set; } /// Statut, état actuel de l’EP
public StatutEP Statut { get; set; } /// </summary>
public DateTime DateUpdate { get; set; } public StatutEp Statut { get; set; }
/// <summary>
/// Nom du CV Apside du collaborateur
/// </summary>
public string CV { get; set; } public string CV { get; set; }
public string CommentaireAssistante { get; set; }
public string CommentaireObjectifsPrecedent { get; set; } /// <summary>
public string CommentaireObjectifs { get; set; } /// Date à laquelle l’EP a été créé
/// </summary>
public DateTime? DateCreation { get; set; }
/// <summary>
/// Date à laquelle l’EP est prévu, la date par défaut est celle de l’anniversaire du collaborateur(+6 mois pour EPS)
/// </summary>
public DateTime? DatePrevisionnelle { get; set; }
/// <summary>
/// Date à partir de laquelle l’EP peut être saisi
/// </summary>
public DateTime? DateDisponibilite { get; set; }
/// <summary>
/// Date à laquelle l’EP a été saisi par le collaborateur
/// </summary>
public DateTime? DateSaisie { get; set; }
/// <summary>
/// Date à laquelle l’EP a été modifié pour la dernière fois
/// </summary>
public DateTime? DateMiseAJour { get; set; }
/// <summary>
/// Date à laquelle le collaborateur a signé l’EP
/// </summary>
public DateTime? DateSignatureCollaborateur { get; set; }
/// <summary>
/// Date à laquelle le référent a signé l’EP
/// </summary>
public DateTime? DateSignatureReferent { get; set; }
public DemandeEPI DemandeEPI { get; set; }
public AugmentationSalaire AugmentationSalaire { get; set; } public AugmentationSalaire AugmentationSalaire { get; set; }
public Autorisation Autorisation { get; set; } public Autorisation Autorisation { get; set; }
public Delegation Delegation { get; set; } public DemandeDelegation Delegation { get; set; }
public RdvEntretien RdvEntretien { get; set; } public RdvEntretien RdvEntretien { get; set; }
public List<ChoixTypeEntretien> ChoixTypeEntretien { get; set; } public List<ChoixTypeEntretien> ChoixTypeEntretien { get; set; }
public List<DemandeFormation> DemandesFormation { get; set; } public List<DemandeFormation> DemandesFormation { get; set; }
@ -51,7 +107,10 @@ namespace EPAServeur.Models.EP
public List<Engagement> Engagements { get; set; } public List<Engagement> Engagements { get; set; }
public List<Objectif> Objectifs { get; set; } public List<Objectif> Objectifs { get; set; }
public List<ObjectifPrecedent> ObjectifsPrecedents { get; set; } public List<ObjectifPrecedent> ObjectifsPrecedents { get; set; }
public List<ParticipantEP> Participants { get; set; } public List<ParticipationEP> Participants { get; set; }
public List<RdvEntretien> PropositionsRDV { get; set; } public List<RdvEntretien> PropositionsRDV { get; set; }
public List<CommentaireAssistant> CommentairesAssistant { get; set; }
} }
} }

@ -5,10 +5,21 @@ using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Nouvel objectif du collaborateur pour l’EP.
/// </summary>
public class Objectif public class Objectif
{ {
public long Id { get; set; } /// <summary>
/// Id de l’objectif
/// </summary>
public long IdObjectif { get; set; }
/// <summary>
/// Objectif du collaborateur
/// </summary>
public string Libelle { get; set; } public string Libelle { get; set; }
public Ep Ep { get; set; } public Ep Ep { get; set; }
} }
} }

@ -1,15 +1,36 @@
using System; using IO.Swagger.Enum;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Objectif du précédent EP du collaborateur.
/// </summary>
public class ObjectifPrecedent public class ObjectifPrecedent
{ {
public long Id { get; set; } /// <summary>
/// Id de l’objectif précédent
/// </summary>
public long IdObjectif { get; set; }
/// <summary>
/// Objectif précédent du collaborateur
/// </summary>
public string Libelle { get; set; } public string Libelle { get; set; }
public bool? Atteint { get; set; }
/// <summary>
/// Statut de l’objectif
/// </summary>
public StatutObjectif StatutObjectif { get; set; }
/// <summary>
/// Commentaire du collaborateur sur l’objectif
/// </summary>
public string Commentaire { get; set; }
public Ep Ep { get; set; } public Ep Ep { get; set; }
} }
} }

@ -1,14 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP
{
public class ParticipantEP
{
public long Id { get; set; }
public string IdCollaborateur { get; set; }
public Ep Ep { get; set; }
}
}

@ -0,0 +1,30 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP
{
/// <summary>
/// Participation d’un collaborateur à l’EP d’un autre collaborateur
/// </summary>
public class ParticipationEP
{
/// <summary>
/// Id de la participation EP
/// </summary>
public long IdParticipationEP { get; set; }
/// <summary>
/// Id du collaborateur participant à l’EP
/// </summary>
public string IdParticipant { get; set; }
/// <summary>
/// Indique si la participation est juste une participation d’un EP en cours ou des prochains EP en plus
/// </summary>
public bool EstPermanente { get; set; }
public Ep Ep { get; set; }
}
}

@ -5,12 +5,28 @@ using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Rendez-vous de l’entretien ou rendez-vous proposés au collaborateur qui devra faire un choix.
/// </summary>
public class RdvEntretien public class RdvEntretien
{ {
public long Id { get; set; } /// <summary>
/// Id du rendez-vous
/// </summary>
public long IdRdvEntretien { get; set; }
/// <summary>
/// Id EP concernant le choix du rendez-vous
/// </summary>
public long IdEPChoixRDV { get; set; }
/// <summary>
/// Date proposée/prévue pour l’entretien
/// </summary>
public DateTime DateEntretien { get; set; }
public Ep EpChoixRDV { get; set; }
public TypeEntretien TypeEntretien { get; set; } public TypeEntretien TypeEntretien { get; set; }
public long EpId { get; set; }
public Ep EpChoixFinal { get; set; }
public Ep EpProposition { get; set; } public Ep EpProposition { get; set; }
} }
} }

@ -0,0 +1,26 @@
using EPAServeur.Models.Formation;
using EPAServeur.Models.SaisieChamp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace EPAServeur.Models.EP
{
/// <summary>
/// Fait correspondre à un collaborateur son référent EP pour tous ses prochains EP.
/// </summary>
public class ReferentEP
{
/// <summary>
/// Id du collaborateur dont on choisit le référent
/// </summary>
public Guid IdCollaborateur { get; set; }
/// <summary>
/// Id du référent de tous les prochains EP du collaborateur
/// </summary>
public Guid? IdReferent { get; set; }
}
}

@ -5,10 +5,21 @@ using System.Threading.Tasks;
namespace EPAServeur.Models.EP namespace EPAServeur.Models.EP
{ {
/// <summary>
/// Manière dont l’EP peut se dérouler (sur site, chez le client, au téléphone, par visioconférence).
/// </summary>
public class TypeEntretien public class TypeEntretien
{ {
public long Id { get; set; } /// <summary>
/// Id du type de l’entretien
/// </summary>
public long IdTypeEntretien { get; set; }
/// <summary>
/// Libellé du type de l’entretien
/// </summary>
public string Libelle { get; set; } public string Libelle { get; set; }
public List<RdvEntretien> RdvEntretiens { get; set; } public List<RdvEntretien> RdvEntretiens { get; set; }
public List<ChoixTypeEntretien> ChoixTypeEntretien { get; set; } public List<ChoixTypeEntretien> ChoixTypeEntretien { get; set; }
} }

@ -213,7 +213,7 @@ namespace EPAServeur.Services
throw new EngagementIncompatibleIdException(); throw new EngagementIncompatibleIdException();
Engagement engagement = epContext.Engagement.Include(engagement => engagement.Ep).FirstOrDefault(engagement => engagement.Id == idEngagement); Engagement engagement = epContext.Engagement.Include(engagement => engagement.Ep).FirstOrDefault(engagement => engagement.IdEngagement == idEngagement);
if (engagement == null) if (engagement == null)
throw new EngagementNotFoundException(); throw new EngagementNotFoundException();
@ -258,7 +258,7 @@ namespace EPAServeur.Services
throw new EngagementInvalidException("Impossible de répondre à l'engagement, une raison doit être rensignée lorsqu'un engagement n'est pas réalisé."); throw new EngagementInvalidException("Impossible de répondre à l'engagement, une raison doit être rensignée lorsqu'un engagement n'est pas réalisé.");
Engagement engagement = await epContext.Engagement.Include(engagement => engagement.Ep).FirstOrDefaultAsync(engagement => engagement.Id == idEngagement); Engagement engagement = await epContext.Engagement.Include(engagement => engagement.Ep).FirstOrDefaultAsync(engagement => engagement.IdEngagement == idEngagement);
if (engagement == null) if (engagement == null)
throw new EngagementNotFoundException(); throw new EngagementNotFoundException();
@ -306,10 +306,10 @@ namespace EPAServeur.Services
{ {
EngagementDTO engagementDTO = new EngagementDTO() EngagementDTO engagementDTO = new EngagementDTO()
{ {
Id = engagement.Id, Id = engagement.IdEngagement,
Action = engagement.Action, Action = engagement.Action,
DatePrevisionnelle = engagement.DateLimite, DatePrevisionnelle = engagement.DateLimite,
Dispositif = engagement.Disposition, Dispositif = engagement.Dispositif,
Modalite = engagement.Modalite, Modalite = engagement.Modalite,
RaisonNonRealisable = engagement.RaisonNonRealisable, RaisonNonRealisable = engagement.RaisonNonRealisable,
Realisable = engagement.Realisable, Realisable = engagement.Realisable,
@ -329,10 +329,10 @@ namespace EPAServeur.Services
{ {
EngagementDTO engagementDTO = new EngagementDTO() EngagementDTO engagementDTO = new EngagementDTO()
{ {
Id = engagement.Id, Id = engagement.IdEngagement,
Action = engagement.Action, Action = engagement.Action,
DatePrevisionnelle = engagement.DateLimite, DatePrevisionnelle = engagement.DateLimite,
Dispositif = engagement.Disposition, Dispositif = engagement.Dispositif,
Modalite = engagement.Modalite, Modalite = engagement.Modalite,
RaisonNonRealisable = engagement.RaisonNonRealisable, RaisonNonRealisable = engagement.RaisonNonRealisable,
Realisable = engagement.Realisable, Realisable = engagement.Realisable,
@ -407,7 +407,7 @@ namespace EPAServeur.Services
{ {
engagement.Action = engagementDTO.Action; engagement.Action = engagementDTO.Action;
engagement.DateLimite = engagementDTO.DatePrevisionnelle.Value; engagement.DateLimite = engagementDTO.DatePrevisionnelle.Value;
engagement.Disposition = engagementDTO.Dispositif; engagement.Dispositif = engagementDTO.Dispositif;
engagement.Modalite = engagementDTO.Modalite; engagement.Modalite = engagementDTO.Modalite;
engagement.RaisonNonRealisable = engagementDTO.RaisonNonRealisable; engagement.RaisonNonRealisable = engagementDTO.RaisonNonRealisable;
engagement.Realisable = engagementDTO.Realisable; engagement.Realisable = engagementDTO.Realisable;

Loading…
Cancel
Save