diff --git a/src/app/api-swagger/api/default.service.ts b/src/app/api-swagger/api/default.service.ts index 45d04eb..55d302c 100644 --- a/src/app/api-swagger/api/default.service.ts +++ b/src/app/api-swagger/api/default.service.ts @@ -188,7 +188,7 @@ export class DefaultService { // to determine the Content-Type header const consumes: string[] = [ ]; - + let idBu = "eh ?"; return this.httpClient.request>('get',`${this.basePath}/demandeformation/bu/${encodeURIComponent(String(idBu))}`, { withCredentials: this.configuration.withCredentials, diff --git a/src/app/home/home-assistante/home-assistante.component.html b/src/app/home/home-assistante/home-assistante.component.html index a5b5ede..66ddc96 100644 --- a/src/app/home/home-assistante/home-assistante.component.html +++ b/src/app/home/home-assistante/home-assistante.component.html @@ -19,9 +19,21 @@ {{row.agence}} - + Collaborateur - {{row.info}} + {{row.collaborateur.nom}} {{row.collaborateur.prenom}} + + + + Ancienneté + {{row.annee | number: '2.0-0'}} an(s) {{row.mois | number: '2.0-0'}} mois + + + + + + Referent + {{row.referent.nom}} {{row.referent.prenom}} @@ -29,6 +41,11 @@ {{row.type}} + + Etat + {{getEtat(row.etat)}} + + Date envoie mail {{row.datemail}} @@ -39,14 +56,10 @@ {{row.dateentretien}} - - Etat - {{row.etat}} - - +

EN DESSOUS

diff --git a/src/app/home/home-assistante/home-assistante.component.ts b/src/app/home/home-assistante/home-assistante.component.ts index 3fda334..4ca4104 100644 --- a/src/app/home/home-assistante/home-assistante.component.ts +++ b/src/app/home/home-assistante/home-assistante.component.ts @@ -9,10 +9,11 @@ import {MatSort} from '@angular/material/sort'; import { ServiceCollaborateur, ServiceEP } from "../../service"; import { CollaborateurModel } from "../../modeles/modele-collaborateur"; -import { EpModel } from "../../modeles/modele-ep"; +import { EpModel } from "../../api-swagger/model/epModel"; import { DisplayEP } from "../../utils/displayEP"; import { DefaultService } from "../../api-swagger/api/api"; + /** * Le composant home qui sera affiché uniquement pour les assistantes. * Cette interface affiche la liste des EP disponibles et en cours, de les trier et de faire une recherche avec la barre de recherche mais aussi choisir un intervalle de dates. @@ -45,7 +46,8 @@ export class HomeAssistanteComponent implements OnInit, AfterViewInit { /** * liste des titres des colonnes du tableau. */ - displayedColumns: string[] = ["agence", "info", "datemail", "dateentretien", "etat", "type"]; + //displayedColumns: string[] = ["agence", "info", "datemail", "dateentretien", "etat", "type"]; + displayedColumns: string[] = ["agence", "collaborateur", "anciennete", "referent", "type", "etat", "datemail", "dateentretien" ]; /** * source pour l'affichage des EP dans le tableau qui est affichée. @@ -77,7 +79,6 @@ export class HomeAssistanteComponent implements OnInit, AfterViewInit { } ngAfterViewInit() { - console.log("VIEWINITED"); } @@ -85,34 +86,65 @@ export class HomeAssistanteComponent implements OnInit, AfterViewInit { * Initialisation de l'affichage des EP dans le tableau. */ initDisplay(eps) { - console.log("INITDISPLAY"); this.epDisponibles = [] let epDisplay : DisplayEP; + let today = new Date(); for(let ep of eps) { epDisplay = new DisplayEP(); epDisplay.id = ep.id; - epDisplay.agence = ep.collaborateur.agence; - epDisplay.info = ep.collaborateur.nom+" "+ep.collaborateur.prenom; + epDisplay.agence = ep.collaborateur.bu.nom; + epDisplay.collaborateur = ep.collaborateur; + epDisplay.referent = ep.referent; epDisplay.dateentretien = ep.dateEntretien; epDisplay.datemail = ep.dateDisponibilite; epDisplay.etat = ep.etat; - epDisplay.type = ep.type; + epDisplay.type = ep.typeEP; + epDisplay.anciennete = this.setAnciennete(new Date(ep.collaborateur.dateEmbauche), today); + epDisplay.annee = Math.floor(epDisplay.anciennete / 31536000000); + epDisplay.mois = Math.floor(epDisplay.anciennete / 2629800000 % 12); this.epDisponibles.push(epDisplay); } this.epFiltre = this.epDisponibles; } + getAnciennete(anciennete) { + let annee = Math.floor(anciennete / 31536000000); + let mois = Math.floor(anciennete/ 2629800000 % 12); + return annee + " an(s) et "+ mois+" mois"; + } + + setAnciennete(firstDate, secondDate) { + return Math.abs(firstDate-secondDate); + } + + getEtat(etat) { + let res = ""; + switch(etat) { + case 1: + res= "Disponible"; + break; + case 2: + res= "Saisi"; + break; + case 3: + res= "Dates proposées"; + break; + case 4: + res= "Entretien prévu"; + break; + case 5: + res= "Attente Signature"; + break; + } + return res; + } + /** * Mise à jour du tableau lorsque qu'un tri est fait via les checkboxes. */ refreshDataSource() { - console.log("REFRESH"); - //this.epFiltre = this.epDisponibles; this.dataSource = new MatTableDataSource(this.epFiltre); - console.log(this.dataSource.paginator); this.dataSource.paginator = this.paginator; - console.log(this.dataSource.paginator); - console.log(this.paginator); this.dataSource.sort = this.sort; } @@ -120,9 +152,9 @@ export class HomeAssistanteComponent implements OnInit, AfterViewInit { * Récupérer la liste des EP Disponibles dès l'initialisation. */ ngOnInit() { - console.log("INIT"); //this.epDisponiblesSubscription = this.serviceEP.listeEPDisponibles(). - this.epDisponiblesSubscription = this.service.epProchainsGet(). + //this.epDisponiblesSubscription = this.service.collaborateursBuIdBuGet("ORL"). + this.epDisponiblesSubscription = this.service.epProchainsBuIdBuGet("ORL"). subscribe(eps => { this.initDisplay(eps); this.refreshDataSource(); @@ -144,7 +176,6 @@ export class HomeAssistanteComponent implements OnInit, AfterViewInit { * Détruire toutes les Subscriptions utilisées pour libérer de la mémoire après le changement de page. */ ngOnDestroy() { - console.log("DESTROY"); if(this.epDisponiblesSubscription != null) { this.epDisponiblesSubscription.unsubscribe(); } diff --git a/src/app/utils/displayEP.ts b/src/app/utils/displayEP.ts index 286e7ed..65ac83c 100644 --- a/src/app/utils/displayEP.ts +++ b/src/app/utils/displayEP.ts @@ -2,12 +2,18 @@ * Class pour récupérer les informations d'un EP qui seront affichées et/ou utilisées. */ +import {CollaborateurModel} from "../api-swagger/model/collaborateurModel"; + export class DisplayEP { id : number; agence : string; - info : string; - dateentretien : Date; - datemail : Date; - etat : string; + collaborateur : CollaborateurModel; + referent : CollaborateurModel; type : string; + etat : string; + datemail : Date; + dateentretien : Date; + anciennete : number; + annee: number; + mois: number; }