diff --git a/src/app/formations/edit-formation/edit-formation.component.ts b/src/app/formations/edit-formation/edit-formation.component.ts
index c820b0c..69fbdc1 100644
--- a/src/app/formations/edit-formation/edit-formation.component.ts
+++ b/src/app/formations/edit-formation/edit-formation.component.ts
@@ -21,25 +21,58 @@ import { FormationsService } from '@shared/api-swagger/api/api';
styleUrls: ["edit-formation.component.css"]
})
export class EditFormationComponent implements OnInit {
-
+ /**
+ * Observable pour récupérer la formation et enregistrer les modifications
+ */
formationSubscription: Subscription;
+ /**
+ * Observable pour récupérer la liste des origines formation
+ */
origineSubscription: Subscription;
+ /**
+ * Observable pour récupérer la liste des types formation
+ */
typeSubscription: Subscription;
+ /**
+ * Observable pour récupérer la liste des modes formation
+ */
modeSubscription: Subscription;
+ /**
+ * Observable pour récupérer la liste des statuts formation
+ */
statutSubscription: Subscription;
+ /**
+ * Liste des modes formations à faire afficher dans une liste déroulante.
+ */
modes: ModeFormationDTO[];
+ /**
+ * Liste des types formations à faire afficher dans une liste déroulante.
+ */
types: TypeFormationDTO[];
+ /**
+ * Liste des origines formations à faire afficher dans une liste déroulante.
+ */
origines: OrigineFormationDTO[];
+ /**
+ * Liste des statuts formations à faire afficher dans une liste déroulante.
+ */
statuts: StatutFormationDTO[];
- //formation: FormationDTO;
+ /**
+ * FormBuilder qui sera lié au formulaire du template avec les attributs d'une formation
+ * C'est dans cet objet qu'est stockée la formation à modifier
+ */
formationForm: FormGroup;
+
+ /**
+ * Id de la formation à récupérer dans l'URL
+ */
id :any;
constructor(private service: FormationsService, private fb: FormBuilder,
private activatedRoute:ActivatedRoute, private router: Router) {
- this.formationForm= this.fb.group(
+ /*this.formationForm= this.fb.group(
{
id: [""],
intitule: [""],
@@ -54,11 +87,11 @@ export class EditFormationComponent implements OnInit {
type: [""],
estCertifie: [""]
}
- );
+ );*/
}
ngOnInit() {
-
+ // récupérer les tableaux pour les afficher dans les liste déroulantes
this.modeSubscription = this.service.getModesFormation().subscribe(
modes => this.modes = modes,
err => console.log(err)
@@ -78,15 +111,17 @@ export class EditFormationComponent implements OnInit {
types => this.types = types,
err => console.log(err)
);
+ // récupérer l'id de la formation en paramètre de l'URL
this.id = this.activatedRoute.snapshot.paramMap.get('id');
this.formationSubscription = this.service.getFormationById(this.id).subscribe(
formation => this.initFormation(formation)
);
}
+ /**
+ * Initialisé les champs du formulation à partir de la formation déjà existante
+ */
initFormation(formation:FormationDTO) {
-
- //this.formation = formation;
this.formationForm= this.fb.group(
{
id: [formation.id],
@@ -103,9 +138,9 @@ export class EditFormationComponent implements OnInit {
estCertifie: [formation.estCertifie]
}
);
-
}
+
updateFormation() {
//this.formation = this.formationForm.value;
this.formationSubscription = this.service.updateFormation(this.formationForm.value, this.formationForm.value.id).subscribe(
@@ -125,41 +160,17 @@ export class EditFormationComponent implements OnInit {
if(this.formationSubscription != undefined) {
this.formationSubscription.unsubscribe();
}
+ if(this.modeSubscription != undefined) {
+ this.formationSubscription.unsubscribe();
+ }
+ if(this.typeSubscription != undefined) {
+ this.formationSubscription.unsubscribe();
+ }
+ if(this.statutSubscription != undefined) {
+ this.formationSubscription.unsubscribe();
+ }
+ if(this.origineSubscription != undefined) {
+ this.formationSubscription.unsubscribe();
+ }
}
}
-/*
-this.formationForm= this.fb.group(
- {
- id: [formation.id],
- intitule: [formation.intitule],
- origine: [formation.origine],
- statut : [formation.statut],
- dateDebut: [new Date(formation.dateDebut)],
- dateFin: [new Date(formation.dateFin)],
- heure: [formation.heure],
- jour: [formation.jour],
- organisme: [formation.organisme],
- mode: [formation.mode],
- type: [formation.type],
- estCertifie: [formation.estCertifie]
- }
-);
-*/
-/*
-this.formationForm.setValue(
- {
- id: formation.id,
- intitule: formation.intitule,
- origine: formation.origine,
- statut : formation.statut,
- dateDebut: new Date(formation.dateDebut),
- dateFin: new Date(formation.dateFin),
- heure: formation.heure,
- jour: formation.jour,
- organisme: formation.organisme,
- mode: formation.mode,
- type: formation.type,
- estCertifie: formation.estCertifie
- }
-);
-*/
diff --git a/src/app/formations/formations.component.html b/src/app/formations/formations.component.html
index d934fac..b84d366 100644
--- a/src/app/formations/formations.component.html
+++ b/src/app/formations/formations.component.html
@@ -1,6 +1,7 @@
Liste des formations
+
Intitulé
@@ -28,5 +29,6 @@
+
diff --git a/src/app/formations/formations.component.ts b/src/app/formations/formations.component.ts
index 7c38753..938294f 100644
--- a/src/app/formations/formations.component.ts
+++ b/src/app/formations/formations.component.ts
@@ -18,13 +18,28 @@ import { FormationsService } from "@shared/api-swagger/api/api";
export class FormationsComponent implements OnInit {
+ /**
+ * Ordre de tri à envoyer au serveur (true : croissant, false : décroissantà).
+ */
asc = true;
+ /**
+ * Numéro de la page à afficher dans le tableau.
+ */
numPage = 1;
+ /**
+ * Nombre d'élément du tableau à affiche en une page.
+ */
parPage = 5;
+ /**
+ * Observable permettant de faire des requêtes sur le service formation.
+ */
private formationsDisponiblesSubscription : Subscription;
//displayedColumns: string[] = ["intitule", "participants", "date", "origine", "statut"]
+ /**
+ * Les colonnes à afficher dans le Mat Table
+ */
displayedColumns: string[] = ["intitule", "origine", "participants", "date", "statut"]
/**
diff --git a/src/app/formations/formations.module.ts b/src/app/formations/formations.module.ts
index 6fe9688..427d569 100644
--- a/src/app/formations/formations.module.ts
+++ b/src/app/formations/formations.module.ts
@@ -13,6 +13,9 @@ import { NewFormationComponent } from './new-formation/new-formation.component';
import { FormationComponent } from './details-formation/formation.component';
import { EditFormationComponent } from './edit-formation/edit-formation.component';
+/**
+ * Module des formations
+ */
import { FormationsRoutingModule } from './formations.routing.module';
@NgModule({
diff --git a/src/app/formations/formations.routing.module.ts b/src/app/formations/formations.routing.module.ts
index e0047e0..60cb4b0 100644
--- a/src/app/formations/formations.routing.module.ts
+++ b/src/app/formations/formations.routing.module.ts
@@ -10,7 +10,9 @@ import { EditFormationComponent } from "./edit-formation/edit-formation.componen
import { KeycloakGuard } from '@shared/guards/keycloakguard';
import { paths_formation } from "@shared/utils/paths";
-
+/**
+ * Routes du module formation
+ */
const routes: Routes = [
{ path:'', component: FormationsComponent, pathMatch: 'full', canActivate: [KeycloakGuard] },
{ path:paths_formation.edit, component: EditFormationComponent, canActivate: [KeycloakGuard] },
diff --git a/src/app/formations/new-formation/new-formation.component.html b/src/app/formations/new-formation/new-formation.component.html
index ada9d28..e2b3001 100644
--- a/src/app/formations/new-formation/new-formation.component.html
+++ b/src/app/formations/new-formation/new-formation.component.html
@@ -1,14 +1,18 @@
Nouvelle formation
+
+
+