feat(avvikelserapport): changed router navigation, cleanup /TV-407-2 to develop

Squashed commit of the following:

commit a6fe7a346cb5b66619281141fd29c85b7019946b
Author: fueno <nicolas.fuentes-maturana@arbetsformedlingen.se>
Date:   Fri Sep 17 08:46:16 2021 +0200

    TV-407-2: changed router for navigate back,
This commit is contained in:
Nicolas Fuentes Maturana
2021-09-17 08:52:06 +02:00
parent 1b281be531
commit 2236cc9ec8
3 changed files with 16 additions and 34 deletions

View File

@@ -84,12 +84,6 @@
[afRadiobuttons]="dayOrPartOfDay"
[formControlName]="dayOrPartOfDayFormControlName"
></digi-ng-form-radiobutton-group>
<digi-form-validation-message
af-variation="error"
*ngIf="avvikelseFormGroup.errors?.dayOrPartOfDayIsRequired && avvikelseFormGroup?.get('orsakerFormGroup')?.get('orsaker')?.value && avvikelseFormGroup.touched"
>
Hel- eller halvdag är obligatoriskt
</digi-form-validation-message>
</div>
<ng-container *ngIf="showTimePicker">
<msfa-deltagare-time-picker
@@ -99,7 +93,7 @@
</ng-container>
<digi-button
[attr.af-aria-label]="'Tillbaka till deltagarkortet'"
[attr.af-aria-label]="'Tillbaka till deltagaren'"
class="deltagare-avvikelse__go-back"
af-size="m"
af-variation="secondary"
@@ -108,7 +102,7 @@
Tillbaka</digi-button
>
<digi-button [attr.af-aria-label]="'Skapar en avvikelserapport'" [attr.af-type]="'submit'" af-size="m"
<digi-button [attr.af-aria-label]="'Skapa en avvikelserapport'" [attr.af-type]="'submit'" af-size="m"
>Nästa</digi-button
>
</form>

View File

@@ -16,9 +16,7 @@ import { OrsaksKoderAvvikelse } from '@msfa-models/orsaks-koder-avvikelse.model'
import { KandaAvvikelseKoder, OrsaksKoderFranvaro } from '@msfa-models/orsaks-koder-franvaro.model';
import {
AnnanKandOrsakeIsRequiredCheck,
DateIsRequiredCheck,
DayOrPartOfDayIsRequiredCheck,
DescriptionIsRequiredCheck,
DateIsRequiredCheck, DescriptionIsRequiredCheck,
EndTimeIsRequiredCheck,
MotiveringIsRequiredCheck,
OrsakerIsRequiredCheck, StartTimeIsRequiredCheck
@@ -100,7 +98,6 @@ export class DeltagareAvvikelseComponent implements OnInit {
validators:
[
DescriptionIsRequiredCheck.CheckIfRequired('description', 'orsakerFormGroup', 'andraKandaOrsaker', KandaOrsakerEnum.AnnanOrsak),
DayOrPartOfDayIsRequiredCheck.CheckIfRequired('dayOrPartOfDay'),
OrsakerIsRequiredCheck.CheckIfRequired('orsakerFormGroup', 'orsaker'),
AnnanKandOrsakeIsRequiredCheck.CheckIfRequired('orsakerFormGroup', 'andraKandaOrsaker'),
DateIsRequiredCheck.CheckIfRequired('date'),
@@ -228,16 +225,20 @@ export class DeltagareAvvikelseComponent implements OnInit {
this.avvikelseOrsaker$ = this.deltagareAvvikelseService.getOrsaksKoderAvvikelse$();
this.fragor1$ = this.deltagareAvvikelseService.getFragorForAvvikelser$()
.pipe(
map(fragor => fragor.filter(fraga => fraga.id.includes('_1'))
map((fragor: FragorForAvvikelser[]) => {
return fragor.filter((fraga: FragorForAvvikelser) => fraga.id.includes('_1'))
}
)
);
this.fragor2$ = this.deltagareAvvikelseService.getFragorForAvvikelser$()
.pipe(
map(fragor => fragor.filter(fraga => {
this.setIfRequiredDescription(fraga);
return fraga.id.includes('_2')
}))
map((fragor: FragorForAvvikelser[]) => {
return fragor.filter((fraga: FragorForAvvikelser) => {
this.setIfRequiredDescription(fraga);
return fraga.id.includes('_2')
})
})
)
}
@@ -272,15 +273,15 @@ export class DeltagareAvvikelseComponent implements OnInit {
get showFragor(): boolean {
return this.alternativeFormControl.value as string === Alternative.AVVIKELSE &&
this.orsakerFormControl.value > 0;
this.orsakerFormControl.value as boolean;
}
get showDatePicker(): boolean {
return this.orsakerFormControl.value > 0;
return this.orsakerFormControl.value as boolean;
}
get showDayOrPartOfDayPicker(): boolean {
return this.alternativeFormControl.value as string === Alternative.FRANVARO && this.orsakerFormControl.value > 0;
return this.alternativeFormControl.value as string === Alternative.FRANVARO && this.orsakerFormControl.value as boolean;
}
get showTimePicker(): boolean {
@@ -297,7 +298,7 @@ export class DeltagareAvvikelseComponent implements OnInit {
}
goBack(): void {
void this.router.navigate(['./deltagare']);
void this.router.navigate(['./deltagare', this.activatedRoute.snapshot.params['deltagareId']]);
}
}

View File

@@ -21,19 +21,6 @@ export class DescriptionIsRequiredCheck {
}
}
export class DayOrPartOfDayIsRequiredCheck {
static CheckIfRequired(
controlToValidateName: string,
): ValidatorFn {
return (fg: AbstractControl): { [key: string]: boolean } => {
const valueOfControlToValidate = fg?.get(controlToValidateName)?.value as string;
const isRequired = valueOfControlToValidate === null && fg?.get('alternative').value === Alternative.FRANVARO;
return isRequired ? { dayOrPartOfDayIsRequired: true } : null;
};
}
}
export class OrsakerIsRequiredCheck {
static CheckIfRequired(
nestedFormGroupName: string,