création d'une PE après la création d'un collaborateur

pull/23/head
Clement FERRERE 2 years ago
parent 87f43200d3
commit ebb337d706
  1. 5
      src/app/components/collaborateur/collaborateur-add/collaborateur-add.component.ts
  2. 12
      src/app/components/periode-essai/periode-essai-add/periode-essai-add.component.html
  3. 24
      src/app/components/periode-essai/periode-essai-add/periode-essai-add.component.ts

@ -6,6 +6,7 @@ import {HttpClient} from "@angular/common/http";
import {BusinessunitService} from "../../../services/businessunit.service";
import {CollaborateurService} from "../../../services/collaborateur.service";
import {ToastrService} from "ngx-toastr";
import {Router} from '@angular/router';
@Component({
selector: 'app-collaborateur-add',
@ -30,7 +31,8 @@ export class CollaborateurAddComponent implements OnInit {
private businessunitService: BusinessunitService,
private collaborateurService: CollaborateurService,
private formBuilder: FormBuilder,
private toastr: ToastrService) {
private toastr: ToastrService,
private router: Router) {
}
get form() {
@ -82,6 +84,7 @@ export class CollaborateurAddComponent implements OnInit {
this.collaborateurService.addCollaborateur(this.collaborateur).subscribe(collaborateur => {
this.collaborateurs.push(collaborateur);
this.showSuccess();
this.router.navigateByUrl('/periodeessais/add?apsideMail='+this.registerForm.value.apsideMail);
},
() => {
this.showError()

@ -4,9 +4,11 @@
<div class="form-group col-12 col-md-6">
<label class="form-label">Collaborateur</label>
<select [ngClass]="{ 'is-invalid': submitted && f.collaborateurId.errors }" class="form-select" formControlName="collaborateurId"
<select [ngClass]="{ 'is-invalid': submitted && f.collaborateurId.errors }" class="form-select"
formControlName="collaborateurId"
id="collaborateur-select">
<option disabled selected value="">Choisissez le collaborateur concerné par cette période d'essai</option>
<!--<option [defaultSelected]="collaborateur"
[ngValue]="collaborateur.id">{{collaborateur.name}} {{collaborateur.firstName}}</option>-->
<option *ngFor="let collaborateur of collaborateurs"
[ngValue]="collaborateur.id">{{collaborateur.name}} {{collaborateur.firstName}}</option>
</select>
@ -20,7 +22,8 @@
<div class="row mb-2">
<div class="form-group col-12 col-sm-6 col-md-4 col-lg-3">
<label class="form-label">Date de début</label>
<input (change)="onStartingDateChange($event)" [ngClass]="{ 'is-invalid': submitted && f.startingDate.errors }" class="form-control" formControlName="startingDate"
<input (change)="onStartingDateChange($event)" [ngClass]="{ 'is-invalid': submitted && f.startingDate.errors }"
class="form-control" formControlName="startingDate"
type="date">
<div *ngIf="submitted && f.startingDate.errors" class="invalid-feedback">
<div *ngIf="f.startingDate.errors.required">La date de début d'une période d'essai est obligatoire</div>
@ -29,7 +32,8 @@
<div class="form-group col-12 col-sm-6 col-md-4 col-lg-3">
<label class="form-label">Date de fin prévue</label>
<input (change)="onPlannedEndingDateChange($event)" [ngClass]="{ 'is-invalid': submitted && f.plannedEndingDate.errors }" class="form-control"
<input (change)="onPlannedEndingDateChange($event)"
[ngClass]="{ 'is-invalid': submitted && f.plannedEndingDate.errors }" class="form-control"
formControlName="plannedEndingDate"
type="date">
<div *ngIf="submitted && f.plannedEndingDate.errors" class="invalid-feedback">

@ -6,6 +6,7 @@ import {HttpClient} from "@angular/common/http";
import {CollaborateurService} from "../../../services/collaborateur.service";
import {PeriodeEssaiService} from "../../../services/periode-essai.service";
import {ToastrService} from "ngx-toastr";
import {ActivatedRoute} from "@angular/router";
@Component({
selector: 'app-periode-essai-add',
@ -21,12 +22,16 @@ export class PeriodeEssaiAddComponent implements OnInit {
registerForm!: FormGroup;
submitted = false;
apsideMail?: string | null;
id?: number;
constructor(
private http: HttpClient,
private collaborateurService: CollaborateurService,
private periodeEssaiService: PeriodeEssaiService,
private formBuilder: FormBuilder,
private toastr: ToastrService
private toastr: ToastrService,
private route: ActivatedRoute
) {
}
@ -35,7 +40,7 @@ export class PeriodeEssaiAddComponent implements OnInit {
}
ngOnInit(): void {
this.getCollaborateurs();
this.apsideMail = this.route.snapshot.queryParamMap.get('apsideMail');
this.registerForm = this.formBuilder.group({
comment: [],
collaborateurId: ['', Validators.required],
@ -44,11 +49,24 @@ export class PeriodeEssaiAddComponent implements OnInit {
realEndingDate: [],
startingDate: ['', Validators.required]
});
this.getCollaborateurs();
}
getCollaborateurs(): void {
this.collaborateurService.getCollaborateurs()
.subscribe(collaborateurs => this.collaborateurs = collaborateurs);
.subscribe(collaborateurs => {
this.collaborateurs = collaborateurs;
if (this.apsideMail != undefined) {
this.collaborateurs.forEach(collab => {
if (this.apsideMail == collab.apsideMail) {
this.registerForm.get("collaborateurId")?.setValue(collab.id)
this.collaborateur = collab
}
})
}
});
}
onSubmit() {

Loading…
Cancel
Save