Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | 1x 5x 5x 5x 5x 5x 5x 6x 6x 2x 2x 2x 1x 1x 1x 1x 1x 1x 1x | import { Component, OnInit } from '@angular/core'; import { FormBuilder, FormGroup, Validators, ReactiveFormsModule, } from '@angular/forms'; import { CommonModule } from '@angular/common'; import { UtilisateurService } from '../utilisateur.service'; import { ActivatedRoute, Router } from '@angular/router'; @Component({ selector: 'app-utilisateur-formulaire', standalone: true, imports: [CommonModule, ReactiveFormsModule], templateUrl: './utilisateur-formulaire.component.html', }) export class UtilisateurFormulaireComponent implements OnInit { utilisateurForm: FormGroup; utilisateurId: number | null = null; constructor( private fb: FormBuilder, private utilisateurService: UtilisateurService, private route: ActivatedRoute, private router: Router ) { this.utilisateurForm = this.fb.group({ nom: ['', Validators.required], email: ['', [Validators.required, Validators.email]], motDePasse: ['', Validators.required], roleId: ['', Validators.required], }); } ngOnInit(): void { const idParam = this.route.snapshot.paramMap.get('id'); if (idParam) { this.utilisateurId = +idParam; this.utilisateurService .getUtilisateur(this.utilisateurId) .subscribe((data) => { this.utilisateurForm.patchValue({ nom: data.nom, email: data.email, motDePasse: data.motDePasse, roleId: data.role?.id, }); }); } } onSubmit(): void { if (this.utilisateurForm.valid) { const formValue = this.utilisateurForm.value; const utilisateurData = { nom: formValue.nom, email: formValue.email, motDePasse: formValue.motDePasse, role: { id: Number(formValue.roleId) }, }; Iif (this.utilisateurId) { this.utilisateurService .updateUtilisateur(this.utilisateurId, utilisateurData) .subscribe({ next: () => { alert('Utilisateur mis à jour avec succès !'); this.router.navigate(['/utilisateurs']); }, error: () => { alert('Une erreur est survenue lors de la mise à jour.'); }, }); } else { this.utilisateurService.addUtilisateur(utilisateurData).subscribe({ next: () => { alert('Utilisateur ajouté avec succès !'); this.router.navigate(['/utilisateurs']); }, error: () => { alert("Une erreur est survenue lors de l'ajout."); }, }); } } } } |