Merge pull request #137 in TEA/mina-sidor-fa-web from bugfix/TV-695-felmeddelande-roller to next
Squashed commit of the following:
commit 0a77df6c5cfaff5c2615bd1525485f1f7270a565
Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se>
Date: Mon Sep 27 15:05:29 2021 +0200
Updated changelog
commit a8c356c2fb8079ce0cf3aae07008285aced778d0
Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se>
Date: Mon Sep 27 15:02:42 2021 +0200
Removed unused variable
commit daf114fedb3a7a43c2d3e4f6ca588ddf145ef6c3
Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se>
Date: Mon Sep 27 14:59:05 2021 +0200
Added unauthorized-alert component and implemented unauthorized warning inside deltagare
commit c781f485e12e6db61f470ec13c96d40cce3113fe
Merge: 86e224b 62e538e
Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se>
Date: Mon Sep 27 14:15:41 2021 +0200
Merge branch 'next' into bugfix/TV-695-felmeddelande-roller
commit 86e224b06199210662d890179aa50e87793b126a
Author: Daniel Appelgren <daniel.appelgren@arbetsformedlingen.se>
Date: Mon Sep 27 12:08:51 2021 +0200
show role errors
This commit is contained in:
@@ -7,9 +7,10 @@ import { HandledareResponse } from '@msfa-models/api/handledare.response.model';
|
||||
import { Params } from '@msfa-models/api/params.model';
|
||||
import { AvropFilter, mapResponseToAvropFilter } from '@msfa-models/avrop-filter.model';
|
||||
import { AvropCompact, AvropCompactData, mapAvropResponseToAvrop } from '@msfa-models/avrop.model';
|
||||
import { CustomError, errorToCustomError } from '@msfa-models/error/custom-error';
|
||||
import { Handledare, mapHandledareResponseToHandledare } from '@msfa-models/handledare.model';
|
||||
import { BehaviorSubject, Observable, of } from 'rxjs';
|
||||
import { filter, map, tap } from 'rxjs/operators';
|
||||
import { catchError, filter, map, tap } from 'rxjs/operators';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root',
|
||||
@@ -18,6 +19,8 @@ export class AvropApiService {
|
||||
private _apiBaseUrl = `${environment.api.url}/avrop`;
|
||||
private _lockedAvropSnapshot$ = new BehaviorSubject<AvropCompact[]>(null);
|
||||
private _availableHandledareSnapshot$ = new BehaviorSubject<Handledare[]>(null);
|
||||
private _showUnauthorizedError$ = new BehaviorSubject<boolean>(false);
|
||||
public showUnauthorizedError$: Observable<boolean> = this._showUnauthorizedError$.asObservable();
|
||||
|
||||
constructor(private httpClient: HttpClient) {}
|
||||
|
||||
@@ -28,7 +31,19 @@ export class AvropApiService {
|
||||
fetchAvrop$(params: Params): Observable<AvropCompactData> {
|
||||
return this.httpClient
|
||||
.get<AvropApiResponse>(`${this._apiBaseUrl}`, { params })
|
||||
.pipe(map(({ data, meta }) => ({ data: data.map(avrop => mapAvropResponseToAvrop(avrop)), meta })));
|
||||
.pipe(
|
||||
map(({ data, meta }) => ({ data: data.map(avrop => mapAvropResponseToAvrop(avrop)), meta })),
|
||||
catchError((error: Error & { status: number }) => {
|
||||
if (error.status === 403) {
|
||||
this._showUnauthorizedError$.next(true);
|
||||
return of(null);
|
||||
} else {
|
||||
throw new CustomError(
|
||||
errorToCustomError({ ...error, message: `Kunde inte hämta deltagare.\n\n${error.message}` })
|
||||
);
|
||||
}
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
fetchAvailableHandledare$(avrop: AvropCompact[]): Observable<Handledare[]> {
|
||||
|
||||
@@ -34,6 +34,8 @@ export class DeltagareApiService {
|
||||
private _apiBaseUrl = `${environment.api.url}/deltagare`;
|
||||
private _deltagareLoading$ = new BehaviorSubject<boolean>(false);
|
||||
public deltagareLoading$: Observable<boolean> = this._deltagareLoading$.asObservable();
|
||||
private _showUnauthorizedError$ = new BehaviorSubject<boolean>(false);
|
||||
public showUnauthorizedError$: Observable<boolean> = this._showUnauthorizedError$.asObservable();
|
||||
|
||||
constructor(private httpClient: HttpClient) {}
|
||||
|
||||
@@ -65,10 +67,15 @@ export class DeltagareApiService {
|
||||
this._deltagareLoading$.next(false);
|
||||
return { data: data.map(deltagare => mapResponseToDeltagareCompact(deltagare)), meta };
|
||||
}),
|
||||
catchError((error: Error) => {
|
||||
throw new CustomError(
|
||||
errorToCustomError({ ...error, message: `Kunde inte hämta deltagare.\n\n${error.message}` })
|
||||
);
|
||||
catchError((error: Error & { status: number }) => {
|
||||
if (error.status === 403) {
|
||||
this._showUnauthorizedError$.next(true);
|
||||
return of(null);
|
||||
} else {
|
||||
throw new CustomError(
|
||||
errorToCustomError({ ...error, message: `Kunde inte hämta deltagare.\n\n${error.message}` })
|
||||
);
|
||||
}
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ export class AvropService {
|
||||
public handledareIsConfirmed$: Observable<boolean> = this._handledareIsConfirmed$.asObservable();
|
||||
public avropIsSubmitted$: Observable<boolean> = this._avropIsSubmitted$.asObservable();
|
||||
public error$: Observable<string> = this._error$.asObservable();
|
||||
|
||||
public showUnauthorizedError$: Observable<boolean> = this.avropApiService.showUnauthorizedError$;
|
||||
public avropData$: Observable<AvropCompactData> = combineLatest([
|
||||
this._filteredTjanster$,
|
||||
this._filteredUtforandeVerksamheter$,
|
||||
|
||||
@@ -16,6 +16,7 @@ export class DeltagareService {
|
||||
public sort$: Observable<Sort<keyof DeltagareCompact>> = this._sort$.asObservable();
|
||||
private _onlyMyDeltagare$ = new BehaviorSubject<boolean>(false);
|
||||
public onlyMyDeltagare$: Observable<boolean> = this._onlyMyDeltagare$.asObservable();
|
||||
public showUnauthorizedError$: Observable<boolean> = this.deltagareApiService.showUnauthorizedError$;
|
||||
public deltagareLoading$: Observable<boolean> = this.deltagareApiService.deltagareLoading$;
|
||||
public allDeltagareData$: Observable<DeltagareCompactData> = combineLatest([
|
||||
this._limit$,
|
||||
|
||||
Reference in New Issue
Block a user