import {inject, Injectable} from "@angular/core"; import {HttpClient} from "@angular/common/http"; import {map, Observable} from "rxjs"; import {Qualification} from "../qualification/Qualification"; import {Employee} from "../employee/Employee"; @Injectable({ providedIn: 'root' }) export default class QualificationService { private http: HttpClient = inject(HttpClient); private static readonly BASE_URL = 'http://localhost:8089'; public getAll(): Observable { return this.http.get(`${QualificationService.BASE_URL}/qualifications`).pipe( map(qualifications => qualifications.sort((a, b) => a.id - b.id)) ) } public create(data: any) { return this.http.post(`${QualificationService.BASE_URL}/qualifications`, data) } public edit(id: number, data: any) { return this.http.put(`${QualificationService.BASE_URL}/qualifications/${id}`, data) } public delete(id: number) { return this.http.delete(`${QualificationService.BASE_URL}/qualifications/${id}`) } public findEmployees(id: number): Observable { return this.http.get(`${QualificationService.BASE_URL}/qualifications/${id}/employees`) .pipe( map(response => response.employees) ); } }