Files
hv-ui/hv-ui/src/app/zahlung-forderung.service.ts
2021-01-20 16:14:37 +01:00

36 lines
1.6 KiB
TypeScript

import { Injectable } from '@angular/core'
import { Observable, of } from 'rxjs'
import { HttpClient, HttpHeaders } from '@angular/common/http'
import { ZahlungForderung, Forderung, Zahlung, Saldo } from './zahlung-forderung'
import { MessageService } from './message.service'
import { serviceBaseUrl } from './config'
@Injectable({
providedIn: 'root'
})
export class ZahlungForderungService {
constructor(private messageService: MessageService, private http: HttpClient) { }
getZahlungenForderungenByMieterAndYear(mieterId: number, year: number): Promise<ZahlungForderung[]> {
this.messageService.add(`ZahlungForderungService: fetched zahlungen and forderungen by mieter ${mieterId} and year ${year}`)
return this.http.get<ZahlungForderung[]>(`${serviceBaseUrl}/hv/mieter/${mieterId}/zahlungforderung/${year}`).toPromise()
}
getForderung(id: number): Promise<Forderung> {
this.messageService.add(`ZahlungForderungService: fetch forderung id=${id}`)
return this.http.get<Forderung>(`${serviceBaseUrl}/hv/forderung/${id}`).toPromise()
}
postZahlung(zahlung: Zahlung): Promise<string> {
this.messageService.add(`ZahlungForderungService: insert zahlung ${JSON.stringify(zahlung, undefined, 4)}`)
return this.http.post<string>(`${serviceBaseUrl}/hv/zahlung`, zahlung).toPromise()
}
getSaldoByMieterAndYear(mieterId: number, year: number): Promise<Saldo> {
this.messageService.add(`ZahlungForderungService: fetched saldo by mieter ${mieterId} and year ${year}`)
return this.http.get<Saldo>(`${serviceBaseUrl}/hv/mieter/${mieterId}/saldo/${year}`).toPromise()
}
}