Merge pull request #195 in TEA/mina-sidor-fa-web from feature/refactor-report-models to develop
Squashed commit of the following: commit c99074b30eb9792ba9a67d4257c45621381da068 Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Tue Oct 12 16:29:11 2021 +0200 Removed unused model commit d122a7f61f52e8c6c5a48a7b7700b333c388e83e Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Tue Oct 12 16:24:50 2021 +0200 Updated models commit 27de0084ba5f0dc5e3300ce7dbff0d27ab240941 Author: Erik Tiekstra <erik.tiekstra@arbetsformedlingen.se> Date: Tue Oct 12 16:24:33 2021 +0200 git st
This commit is contained in:
@@ -2,19 +2,12 @@ import { HttpClient } from '@angular/common/http';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { ErrorType } from '@msfa-enums/error-type.enum';
|
||||
import { environment } from '@msfa-environment';
|
||||
import { FragorForAvvikelserResponse } from '@msfa-models/api/fragor-for-avvikelser.response';
|
||||
import { KandaAvvikelseKoderResponse } from '@msfa-models/api/kanda-avvikelse-koder.response.model';
|
||||
import { OrsaksKoderAvvikelseResponse } from '@msfa-models/api/orsaks-koder-avvikelse.response.model';
|
||||
import { Avvikelse_OLD } from '@msfa-models/avvikelse.model';
|
||||
import { AvvikelseQuestionsResponse } from '@msfa-models/api/avvikelse-question.response.model';
|
||||
import { AvvikelseReasonResponse } from '@msfa-models/api/avvikelse-reason.response.model';
|
||||
import { AvvikelseReportRequest } from '@msfa-models/api/avvikelse-request.model';
|
||||
import { AvvikelseQuestion, mapResponseToAvvikelseQuestion } from '@msfa-models/avvikelse-question.model';
|
||||
import { AvvikelseReason, mapResponseToAvvikelseReason } from '@msfa-models/avvikelse-reason.model';
|
||||
import { CustomError } from '@msfa-models/error/custom-error';
|
||||
import { FragorForAvvikelser, mapResponseToFragorForAvvikelser } from '@msfa-models/fragor-for-avvikelser.model';
|
||||
import { mapResponseToOrsaksKoderAvvikelse, OrsaksKoderAvvikelse } from '@msfa-models/orsaks-koder-avvikelse.model';
|
||||
import {
|
||||
KandaAvvikelseKoder,
|
||||
mapResponseToAndraKandaOrsaker,
|
||||
mapResponseToOrsaksKoderFranvaro,
|
||||
OrsaksKoderFranvaro,
|
||||
} from '@msfa-models/orsaks-koder-franvaro.model';
|
||||
import { Observable } from 'rxjs';
|
||||
import { catchError, filter, map } from 'rxjs/operators';
|
||||
|
||||
@@ -26,39 +19,21 @@ export class AvvikelseApiService {
|
||||
|
||||
constructor(private httpClient: HttpClient) {}
|
||||
|
||||
public getOrsaksKoderFranvaro$(): Observable<OrsaksKoderFranvaro[]> {
|
||||
return this.httpClient
|
||||
.get<{ data: OrsaksKoderAvvikelseResponse[] }>(`${this._apiBaseUrl}/orsakskoderfranvaro`)
|
||||
.pipe(
|
||||
filter(response => !!response?.data),
|
||||
map(({ data }) => data.map(orsak => mapResponseToOrsaksKoderFranvaro(orsak)))
|
||||
);
|
||||
}
|
||||
|
||||
public getOrsaksKoderAvvikelse$(): Observable<OrsaksKoderAvvikelse[]> {
|
||||
return this.httpClient
|
||||
.get<{ data: OrsaksKoderAvvikelseResponse[] }>(`${this._apiBaseUrl}/orsakskoderavvikelse`)
|
||||
.pipe(
|
||||
filter(response => !!response?.data),
|
||||
map(({ data }) => data.map(avvikelse => mapResponseToOrsaksKoderAvvikelse(avvikelse)))
|
||||
);
|
||||
}
|
||||
|
||||
public getAndraKandaOrsaker$(): Observable<KandaAvvikelseKoder[]> {
|
||||
return this.httpClient.get<{ data: KandaAvvikelseKoderResponse[] }>(`${this._apiBaseUrl}/kandaavvikelsekoder`).pipe(
|
||||
public fetchAvvikelseReasons$(): Observable<AvvikelseReason[]> {
|
||||
return this.httpClient.get<{ data: AvvikelseReasonResponse[] }>(`${this._apiBaseUrl}/orsakskoderavvikelse`).pipe(
|
||||
filter(response => !!response?.data),
|
||||
map(({ data }) => data.map(annanKandOrsak => mapResponseToAndraKandaOrsaker(annanKandOrsak)))
|
||||
map(({ data }) => data.map(avvikelse => mapResponseToAvvikelseReason(avvikelse)))
|
||||
);
|
||||
}
|
||||
|
||||
public getFragorForAvvikelser$(): Observable<FragorForAvvikelser[]> {
|
||||
return this.httpClient.get<{ data: FragorForAvvikelserResponse[] }>(`${this._apiBaseUrl}/fragorforavvikelser`).pipe(
|
||||
public fetchAvvikelseQuestions$(): Observable<AvvikelseQuestion[]> {
|
||||
return this.httpClient.get<{ data: AvvikelseQuestionsResponse[] }>(`${this._apiBaseUrl}/fragorforavvikelser`).pipe(
|
||||
filter(response => !!response?.data),
|
||||
map(({ data }) => data.map(fraga => mapResponseToFragorForAvvikelser(fraga)))
|
||||
map(({ data }) => data.map(fraga => mapResponseToAvvikelseQuestion(fraga)))
|
||||
);
|
||||
}
|
||||
|
||||
public createAvvikelse$(avvikelse: Avvikelse_OLD): Observable<unknown> {
|
||||
public createAvvikelse$(avvikelse: AvvikelseReportRequest): Observable<unknown> {
|
||||
return this.httpClient.post<void>(`${this._apiBaseUrl}/avvikelse`, avvikelse).pipe(
|
||||
catchError((error: Error) => {
|
||||
throw new CustomError({
|
||||
@@ -69,8 +44,4 @@ export class AvvikelseApiService {
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
public createFranvaro$(avvikelse: Avvikelse_OLD): Promise<void> {
|
||||
return this.httpClient.post<void>(`${this._apiBaseUrl}/franvaro`, avvikelse).toPromise();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import { HttpClient } from '@angular/common/http';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { environment } from '@msfa-environment';
|
||||
import { OrsaksKoderFranvaroResponse } from '@msfa-models/api/orsaks-koder-franvaro.response.model';
|
||||
import { FranvaroReasonResponse } from '@msfa-models/api/franvaro-reason.response.model';
|
||||
import { FranvaroReportRequest } from '@msfa-models/api/franvaro-request.model';
|
||||
import { Avrop } from '@msfa-models/avrop.model';
|
||||
import { FranvaroRequestData_OLD } from '@msfa-models/avvikelse.model';
|
||||
import { CustomError, errorToCustomError } from '@msfa-models/error/custom-error';
|
||||
import { mapResponseToOrsaksKoderFranvaro, OrsaksKoderFranvaro } from '@msfa-models/orsaks-koder-franvaro.model';
|
||||
import { FranvaroReason, mapResponseToFranvaroReason } from '@msfa-models/franvaro-reason.model';
|
||||
import { DeltagareApiService } from '@msfa-services/api/deltagare.api.service';
|
||||
import { Observable } from 'rxjs';
|
||||
import { catchError, filter, map, shareReplay } from 'rxjs/operators';
|
||||
@@ -18,10 +18,10 @@ export class FranvaroReportApiService {
|
||||
|
||||
constructor(private httpClient: HttpClient, private deltagareApiService: DeltagareApiService) {}
|
||||
|
||||
public fetchReasons$(): Observable<OrsaksKoderFranvaro[]> {
|
||||
return this.httpClient.get<{ data: OrsaksKoderFranvaroResponse[] }>(`${this._apiBaseUrl}/orsakskoderfranvaro`).pipe(
|
||||
public fetchReasons$(): Observable<FranvaroReason[]> {
|
||||
return this.httpClient.get<{ data: FranvaroReasonResponse[] }>(`${this._apiBaseUrl}/orsakskoderfranvaro`).pipe(
|
||||
filter(response => !!response?.data),
|
||||
map(({ data }) => data.map(reason => mapResponseToOrsaksKoderFranvaro(reason))),
|
||||
map(({ data }) => data.map(reason => mapResponseToFranvaroReason(reason))),
|
||||
catchError((error: Error & { status: number }) => {
|
||||
throw new CustomError(
|
||||
errorToCustomError({ ...error, message: `Kunde inte hämta orsaker till frånvaro.\n\n${error.message}` })
|
||||
@@ -30,10 +30,10 @@ export class FranvaroReportApiService {
|
||||
shareReplay(1)
|
||||
);
|
||||
}
|
||||
public fetchOtherKnownReasons$(): Observable<OrsaksKoderFranvaro[]> {
|
||||
return this.httpClient.get<{ data: OrsaksKoderFranvaroResponse[] }>(`${this._apiBaseUrl}/kandaavvikelsekoder`).pipe(
|
||||
public fetchOtherKnownReasons$(): Observable<FranvaroReason[]> {
|
||||
return this.httpClient.get<{ data: FranvaroReasonResponse[] }>(`${this._apiBaseUrl}/kandaavvikelsekoder`).pipe(
|
||||
filter(response => !!response?.data),
|
||||
map(({ data }) => data.map(reason => mapResponseToOrsaksKoderFranvaro(reason))),
|
||||
map(({ data }) => data.map(reason => mapResponseToFranvaroReason(reason))),
|
||||
catchError((error: Error & { status: number }) => {
|
||||
throw new CustomError(
|
||||
errorToCustomError({ ...error, message: `Kunde inte hämta kända orsaker till frånvaro.\n\n${error.message}` })
|
||||
@@ -47,7 +47,7 @@ export class FranvaroReportApiService {
|
||||
return this.deltagareApiService.fetchAvropInformation$(genomforandeReferens);
|
||||
}
|
||||
|
||||
public async postFranvaroReport$(requestData: FranvaroRequestData_OLD): Promise<void> {
|
||||
public async postFranvaroReport$(requestData: FranvaroReportRequest): Promise<void> {
|
||||
return this.httpClient.post<void>(`${this._apiBaseUrl}/franvaro`, requestData).toPromise();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,15 +7,15 @@ import { FranvaroReportResponse } from '@msfa-models/api/franvaro-response.model
|
||||
import { GemensamPlaneringResponse } from '@msfa-models/api/gemensam-planering.response.model';
|
||||
import { Params } from '@msfa-models/api/params.model';
|
||||
import { Avrop } from '@msfa-models/avrop.model';
|
||||
import { AvvikelseQuestion } from '@msfa-models/avvikelse-question.model';
|
||||
import { AvvikelseReason } from '@msfa-models/avvikelse-reason.model';
|
||||
import { AvvikelseReport, mapResponseToAvvikelse } from '@msfa-models/avvikelse.model';
|
||||
import { FragorForAvvikelser } from '@msfa-models/fragor-for-avvikelser.model';
|
||||
import { FranvaroReason } from '@msfa-models/franvaro-reason.model';
|
||||
import { FranvaroReport, mapResponseToFranvaro } from '@msfa-models/franvaro.model';
|
||||
import {
|
||||
GemensamPlaneringDetailed,
|
||||
mapResponseToGemensamPlaneringDetailed,
|
||||
} from '@msfa-models/gemensam-planering.model';
|
||||
import { OrsaksKoderAvvikelse } from '@msfa-models/orsaks-koder-avvikelse.model';
|
||||
import { OrsaksKoderFranvaro } from '@msfa-models/orsaks-koder-franvaro.model';
|
||||
import { DeltagareApiService } from '@msfa-services/api/deltagare.api.service';
|
||||
import { combineLatest, Observable } from 'rxjs';
|
||||
import { filter, map, switchMap } from 'rxjs/operators';
|
||||
@@ -29,12 +29,12 @@ import { GemensamPlaneringApiService } from './gemensam-planering-api.service';
|
||||
export class ReportApiService {
|
||||
private _apiBaseUrl = `${environment.api.url}/handlingar`;
|
||||
|
||||
private _avvikelseReasons$: Observable<OrsaksKoderAvvikelse[]> = this.avvikelseApiService.getOrsaksKoderAvvikelse$();
|
||||
private _avvikelseQuestions$: Observable<FragorForAvvikelser[]> = this.avvikelseApiService.getFragorForAvvikelser$();
|
||||
private _avvikelseReasons$: Observable<AvvikelseReason[]> = this.avvikelseApiService.fetchAvvikelseReasons$();
|
||||
private _avvikelseQuestions$: Observable<AvvikelseQuestion[]> = this.avvikelseApiService.fetchAvvikelseQuestions$();
|
||||
private _activities$: Observable<Activity[]> = this.gemensamPlaneringApiService.fetchActivities$();
|
||||
private _franvaroReasons$: Observable<OrsaksKoderFranvaro[]> = this.franvaroReportApiService.fetchReasons$();
|
||||
private _franvaroReasons$: Observable<FranvaroReason[]> = this.franvaroReportApiService.fetchReasons$();
|
||||
private _otherFranvaroReasons$: Observable<
|
||||
OrsaksKoderFranvaro[]
|
||||
FranvaroReason[]
|
||||
> = this.franvaroReportApiService.fetchOtherKnownReasons$();
|
||||
|
||||
constructor(
|
||||
|
||||
Reference in New Issue
Block a user