Ajout d'une variable globale pour stocker les informations de l'utilisateur connecté

develop
Yanaël GRETTE 4 years ago
parent 1692adaf42
commit 35126aeec8
  1. 28
      src/app/app.component.ts
  2. 3
      src/app/app.module.ts
  3. 2
      src/app/home/home-assistante/home-assistante.component.html
  4. 10
      src/app/shared/auth/auth.service.ts
  5. 7
      src/app/shared/globales/collaborateur-connecte.ts

@ -1,14 +1,34 @@
import { Component } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { CollaborateurConnecte } from '@shared/globales/collaborateur-connecte'
import { CollaborateursService } from '@shared/api-swagger/api/api'
import { AuthService } from '@shared/auth/auth.service';
import { Subscription } from 'rxjs';
@Component({ @Component({
selector: 'app-root', selector: 'app-root',
templateUrl: './app.component.html', templateUrl: './app.component.html',
styleUrls: ['./app.component.css'] styleUrls: ['./app.component.css']
}) })
export class AppComponent {
export class AppComponent implements OnInit {
title = 'EPAClient'; title = 'EPAClient';
constructor() { subscriber: Subscription;
constructor(private collaborateurConnecte:CollaborateurConnecte, private collaborateursService: CollaborateursService,
private authService: AuthService ) {
} }
ngOnInit(): void {
let mail = this.authService.mail;
this.subscriber = this.collaborateursService.getCollaborateurByMail(mail).subscribe(
collaborateur => this.collaborateurConnecte.collaborateur = collaborateur
);
}
ngOnDestroy(): void {
if(this.subscriber != undefined)
this.subscriber.unsubscribe();
}
} }

@ -16,6 +16,8 @@ import { ApiModule } from '@shared/api-swagger'
import { HomeModule } from './home'; import { HomeModule } from './home';
import { CollaborateursModule } from './collaborateurs'; import { CollaborateursModule } from './collaborateurs';
import { CollaborateurConnecte } from "@shared/globales/collaborateur-connecte";
import { ReferentsModule } from './referents'; import { ReferentsModule } from './referents';
import { FormationsModule } from './formations'; import { FormationsModule } from './formations';
import { DemandesFormationModule } from './demandes-formation'; import { DemandesFormationModule } from './demandes-formation';
@ -40,6 +42,7 @@ import { AuthModule } from '@shared/auth/auth.module';
EpSaisieModule, EpModule EpSaisieModule, EpModule
], ],
providers: [CollaborateurConnecte],
bootstrap: [AppComponent] bootstrap: [AppComponent]
}) })

@ -1,5 +1,3 @@
<h1> Bienvenu.e</h1>
<!-- Barre de recher --> <!-- Barre de recher -->
<mat-form-field> <mat-form-field>
<mat-label>Rechercher un collaborateur</mat-label> <mat-label>Rechercher un collaborateur</mat-label>

@ -182,6 +182,16 @@ export class AuthService {
} }
/**
* mail de l'utilisateur
*/
public get mail() {
if(this.identityClaims != null)
return this.identityClaims['email'];
else
return;
}
// Normalement, ce genre de service ne les expose pas, // Normalement, ce genre de service ne les expose pas,
// mais pour le débogage, ça peut-être utile. // mais pour le débogage, ça peut-être utile.

@ -0,0 +1,7 @@
import { Injectable } from "@angular/core";
import { CollaborateurDTO } from "@shared/api-swagger/model/models";
@Injectable()
export class CollaborateurConnecte {
collaborateur: CollaborateurDTO
}
Loading…
Cancel
Save