import { HttpClient } from '@angular/common/http'; import { inject, Injectable } from '@angular/core'; import { Observable } from 'rxjs'; import { IUser } from '../model/interface/user.interface'; import { IKey } from '../model/interface/key.interface'; @Injectable({ providedIn: 'root' }) export class ApiService { private http: HttpClient = inject(HttpClient); constructor() { } getAllUsers(): Observable { return this.http.get('/api/user'); } saveUser(user: IUser) { return this.http.post('/api/user', user); } getRoles(): Observable<{id: string, name: string}[]> { return this.http.get<{id: string, name: string}[]>('/api/role'); } getKeys(): Observable { return this.http.get('api/key') } updateKey(key: IKey): Observable { return this.http.put('api/key', key); } getCylinders(): Observable { return this.http.get('api/key/cylinder'); } createKey(key: any) { } postKeySystem(keySystem: any) { return this.http.post('api/key/system', keySystem); } handoverKey(data: any) { return this.http.post(`api/key/${data.key.id}/handover`, data); } getHandovers(keyID: string): Observable { return this.http.get(`api/key/${keyID}/handover`); } createCustomer(data: { name: string, system: any}) { return this.http.post('api/customer', data); } getCustomers(): Observable { return this.http.get('api/customer') } }