From b5d1170c0fa704404700a474ce805ca1234d29f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yana=C3=ABl=20GRETTE?= Date: Fri, 7 Aug 2020 16:18:03 +0200 Subject: [PATCH] =?UTF-8?q?Affichage=20des=20liste=20des=20participants=20?= =?UTF-8?q?dans=20les=20d=C3=A9tails=20d'une=20formation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../formation.component.html | 46 +++++++++++++++---- .../details-formation/formation.component.ts | 37 ++++++++++++++- .../model/participationFormationModel.ts | 1 + .../shared/displayInfo/displayFormation.ts | 2 +- .../displayInfo/displayParticipation.ts | 12 +++-- src/app/shared/displayInfo/displays.ts | 1 + src/app/shared/utils/paths.ts | 2 +- 7 files changed, 87 insertions(+), 14 deletions(-) diff --git a/src/app/formations/details-formation/formation.component.html b/src/app/formations/details-formation/formation.component.html index 5d4576d..2fe0f24 100644 --- a/src/app/formations/details-formation/formation.component.html +++ b/src/app/formations/details-formation/formation.component.html @@ -9,19 +9,49 @@

{{dateTexte}} {{formation.dateDebut | date:"dd/MM/yyyy"}}

Origine : {{formation.origine}}

Organisme : {{ formation.organisme}}

-

Mode formation : {{ formation.modeFormation}}

-

Type formation : {{ formation.typeFormation}}

+

Mode formation : {{ formation.mode}}

+

Type formation : {{ formation.type}}

Liste des participants

- + + + + Agence + {{row.agence}} + + + + Collaborateur + {{row.collaborateur}} + + + + Inscrit le + {{row.dateCreation | date :'dd/MM/yy à HH:mm'}} + + + + EP + +

Voir EP

+

EP en cours

+

Attente prochain EP

+
+
+ + + Evaluations + +

Voir évaluation

+

Attente évaluation

+
+
+ + +
-POSER DES QUESTIONS A HELEN -Heures/Jours -Mode de formation, type de formation - -CREER LES PARTICIPATIONS diff --git a/src/app/formations/details-formation/formation.component.ts b/src/app/formations/details-formation/formation.component.ts index ec651b7..24a9d4b 100644 --- a/src/app/formations/details-formation/formation.component.ts +++ b/src/app/formations/details-formation/formation.component.ts @@ -3,8 +3,15 @@ import { Component, OnInit } from '@angular/core'; import { Subscription } from 'rxjs'; import {ActivatedRoute} from '@angular/router'; +import {MatTableDataSource} from '@angular/material/table'; +import {MatPaginator} from '@angular/material/paginator'; +import {MatSort} from '@angular/material/sort'; + import { FormationsService } from '@shared/api-swagger/api/api'; import { FormationModel } from "@shared/api-swagger/model/models"; + +import { DisplayParticipation } from "@shared/displayInfo/displays"; + /** */ @Component({ @@ -15,7 +22,11 @@ export class FormationComponent implements OnInit { formation:FormationModel; dateTexte:string = "Prévue le"; formationSubscription: Subscription; + + participationsDisplay: DisplayParticipation[]; + dataSource : MatTableDataSource; + displayedColumns: string[]= ["agence", "collaborateur", "dateinscription", "ep"]; constructor(private service:FormationsService,private route:ActivatedRoute) {} @@ -30,11 +41,35 @@ export class FormationComponent implements OnInit { this.formation = formation; if(this.formation.statut == 2) { this.dateTexte = "Effecutée le"; + this.displayedColumns.push("evaluation"); } if(this.formation.statut == 3) { this.dateTexte = "Initialement prévue le"; } - //if(formation.participantsFormation != undefined ) + if(formation.participantsFormation != undefined && formation.participantsFormation.length != 0 ) { + this.initParticpationFormation(); + } + } + + + initParticpationFormation() { + let participationDisplay : DisplayParticipation; + this.participationsDisplay = []; + for(let participation of this.formation.participantsFormation ) { + participationDisplay = new DisplayParticipation(); + participationDisplay.id =participation.id; + participationDisplay.dateCreation = participation.dateCreation; + + participationDisplay.estEvaluee = participation.estEvaluee; + participationDisplay.idEP = participation.demandeformation.ep.id; + participationDisplay.statutEP = participation.demandeformation.ep.etat; + participationDisplay.idCollaborateur = participation.demandeformation.ep.collaborateur.id; + participationDisplay.collaborateur = participation.demandeformation.ep.collaborateur.prenom + " " + participation.demandeformation.ep.collaborateur.nom; + participationDisplay.agence = participation.demandeformation.ep.collaborateur.businessUnit.nom; + + this.participationsDisplay.push(participationDisplay); + } + this.dataSource = new MatTableDataSource(this.participationsDisplay); } getStatut(statut:number) { diff --git a/src/app/shared/api-swagger/model/participationFormationModel.ts b/src/app/shared/api-swagger/model/participationFormationModel.ts index 15cb3e0..3a8f062 100644 --- a/src/app/shared/api-swagger/model/participationFormationModel.ts +++ b/src/app/shared/api-swagger/model/participationFormationModel.ts @@ -16,6 +16,7 @@ import { SaisieModel } from './saisieModel'; export interface ParticipationFormationModel { id: number; dateCreation: Date; + estEvaluee: boolean; formation: FormationModel; demandeformation: DemandeFormationModel; evaluations?: Array; diff --git a/src/app/shared/displayInfo/displayFormation.ts b/src/app/shared/displayInfo/displayFormation.ts index c390539..2cf82d4 100644 --- a/src/app/shared/displayInfo/displayFormation.ts +++ b/src/app/shared/displayInfo/displayFormation.ts @@ -6,5 +6,5 @@ export class DisplayFormation { nbParticipants : number; datePrevu: Date; origine : string; - statut: FormationModel.StatusEnum; + statut: FormationModel.StatutEnum; } diff --git a/src/app/shared/displayInfo/displayParticipation.ts b/src/app/shared/displayInfo/displayParticipation.ts index 817db04..9bcd389 100644 --- a/src/app/shared/displayInfo/displayParticipation.ts +++ b/src/app/shared/displayInfo/displayParticipation.ts @@ -1,8 +1,14 @@ +import { CollaborateurModel, EpModel, FormationModel } from "@shared/api-swagger/model/models"; - -export class displayParticipation { +export class DisplayParticipation { id: number; intitule: string; + agence: string; collaborateur: string; - referent: string; + idCollaborateur: string; + idEP: number; + estEvaluee: boolean; + statutEP : number; + dateCreation: Date; + formation: FormationModel; } diff --git a/src/app/shared/displayInfo/displays.ts b/src/app/shared/displayInfo/displays.ts index bcc463a..75b1357 100644 --- a/src/app/shared/displayInfo/displays.ts +++ b/src/app/shared/displayInfo/displays.ts @@ -1,3 +1,4 @@ export * from "./displayEP"; export * from "./displayCollaborateur"; export * from "./displayFormation"; +export * from "./displayParticipation"; diff --git a/src/app/shared/utils/paths.ts b/src/app/shared/utils/paths.ts index f091a1e..7eef89a 100644 --- a/src/app/shared/utils/paths.ts +++ b/src/app/shared/utils/paths.ts @@ -3,7 +3,7 @@ const paths_collaborateurs = { path: "collaborateurs", get: ":id", formations: ":id/formations", - evaluation: ":id/formations/evaluation/:id", + evaluation: ":id/formations/evaluation/:idParticipation", edit: ":id/formations/evaluation/:id/edit" };