Impersination backend
This commit is contained in:
@@ -5,6 +5,7 @@ import { IUser } from '../model/interface/user.interface';
|
||||
import { IKey } from '../model/interface/key.interface';
|
||||
import { ICylinder } from '../model/interface/cylinder.interface';
|
||||
import { HotToastService } from '@ngxpert/hot-toast';
|
||||
import { ICustomer } from '../model/interface/customer.interface';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
@@ -16,6 +17,7 @@ export class ApiService {
|
||||
public keys: BehaviorSubject<IKey[]> = new BehaviorSubject<IKey[]>([]);
|
||||
public cylinders: BehaviorSubject<ICylinder[]> = new BehaviorSubject<ICylinder[]>([]);
|
||||
public systems: BehaviorSubject<any[]> = new BehaviorSubject<any[]>([]);
|
||||
public customers: BehaviorSubject<ICustomer[]> = new BehaviorSubject<ICustomer[]>([]);
|
||||
|
||||
|
||||
public user: BehaviorSubject<IUser> = new BehaviorSubject<IUser>(null!);
|
||||
@@ -55,6 +57,9 @@ export class ApiService {
|
||||
return this.http.get<IKey[]>('api/key')
|
||||
}
|
||||
|
||||
/**
|
||||
* triggert das Laden der Schlüssel vom Server und speichert sie in keys
|
||||
*/
|
||||
refreshKeys(): void{
|
||||
this.getKeys().subscribe({
|
||||
next: keys => {
|
||||
@@ -138,16 +143,25 @@ export class ApiService {
|
||||
return this.http.post('api/customer', data);
|
||||
}
|
||||
|
||||
getCustomers(): Promise<any[]> {
|
||||
return new Promise(resolve => {
|
||||
this.http.get<any[]>('api/customer').subscribe({
|
||||
next: (customers) => resolve(customers),
|
||||
error: (err) => {
|
||||
this.toast.error('Fehler beim Laden der Mieter');
|
||||
resolve([]);
|
||||
}
|
||||
private getCustomers(): Observable<ICustomer[]> {
|
||||
return this.http.get<ICustomer[]>('api/customer')
|
||||
}
|
||||
|
||||
})
|
||||
/**
|
||||
* triggert das Laden der Schlüssel vom Server und speichert sie in keys
|
||||
*/
|
||||
refreshCustomers(): Promise<ICustomer[]> {
|
||||
return new Promise(resolve => {
|
||||
this.getCustomers().subscribe({
|
||||
next: customers => {
|
||||
this.customers.next(customers);
|
||||
resolve(customers)
|
||||
},
|
||||
error: () => {
|
||||
this.toast.error('Fehler beim Laden der Schlüssel');
|
||||
resolve([])
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
@@ -176,6 +190,12 @@ export class ApiService {
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* Löscht das System vom Server und zeigt Toast an.
|
||||
* Aktualisiert die Systeme danach
|
||||
* @param system zu löschen
|
||||
* @returns true oder false
|
||||
*/
|
||||
deleteSystem(system: any): Promise<boolean> {
|
||||
return new Promise<boolean>(resolve => {
|
||||
this.http.delete(`api/system${system.id}`).pipe(
|
||||
@@ -239,6 +259,11 @@ export class ApiService {
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* Aktualisiert die Schließanlagen im Behaviour Subject
|
||||
* systems
|
||||
* @returns Promise wenn geladen
|
||||
*/
|
||||
refreshSystems(): Promise<void> {
|
||||
return new Promise(resolve => {
|
||||
this.getSystems().subscribe({
|
||||
|
||||
Reference in New Issue
Block a user