Add APIs for Bestellung and Eintrittskarte entities

Introduced CRUD and filter methods for Bestellung and Eintrittskarte in HttpService, enabling interaction with their respective backend endpoints. Also renamed getPerformaces to getAllPerformaces for consistency.
This commit is contained in:
2025-11-14 01:15:41 +01:00
parent 9b87e336a3
commit f165a91e3c

View File

@@ -1,4 +1,4 @@
import { Kinosaal, Sitzplatz, Vorstellung, Film, OmdbSearch } from '@infinimotion/model-frontend';
import { Kinosaal, Sitzplatz, Vorstellung, Film, OmdbSearch, Bestellung, Eintrittskarte } from '@infinimotion/model-frontend';
import { HttpClient } from "@angular/common/http";
import { inject, Injectable } from "@angular/core";
import { Observable } from "rxjs";
@@ -11,6 +11,72 @@ export class HttpService {
private baseUrl = 'https://infinimotion.de/api/';
/* Bestellung APIs */
/* GET /api/bestellung/{id} */
getAllOrder(id: number): Observable<Bestellung[]> {
return this.http.get<Bestellung[]>(`${this.baseUrl}bestellung`);
}
/* GET /api/bestellung/{id} */
getOrderById(id: number): Observable<Bestellung> {
return this.http.get<Bestellung>(`${this.baseUrl}bestellung/${id}`);
}
/* POST /api/bestellung/filter */
getOrdersByFilter(filter: string[]): Observable<Bestellung[]> {
return this.http.post<Bestellung[]>(`${this.baseUrl}bestellung/filter`, filter);
}
/* POST /api/bestellung */
addOrder(order: Omit<Bestellung, 'id'>): Observable<Bestellung> {
return this.http.post<Bestellung>(`${this.baseUrl}bestellung`, order);
}
/* PUT /api/bestellung/{id} */
updateOrder(id: number, order: Partial<Bestellung>): Observable<Bestellung> {
return this.http.put<Bestellung>(`${this.baseUrl}bestellung/${id}`, order);
}
/* DELETE /api/bestellung/{id} */
deleteOrder(id: number): Observable<void> {
return this.http.delete<void>(`${this.baseUrl}bestellung/${id}`);
}
/* Eintrittskarte APIs */
/* GET /api/eintrittskarte/{id} */
getAllTickets(id: number): Observable<Eintrittskarte[]> {
return this.http.get<Eintrittskarte[]>(`${this.baseUrl}eintrittskarte`);
}
/* GET /api/eintrittskarte/{id} */
getTicketById(id: number): Observable<Eintrittskarte> {
return this.http.get<Eintrittskarte>(`${this.baseUrl}eintrittskarte/${id}`);
}
/* POST /api/eintrittskarte/filter */
getTicketsByFilter(filter: string[]): Observable<Eintrittskarte[]> {
return this.http.post<Eintrittskarte[]>(`${this.baseUrl}eintrittskarte/filter`, filter);
}
/* POST /api/eintrittskarte */
addTicket(order: Omit<Eintrittskarte, 'id'>): Observable<Eintrittskarte> {
return this.http.post<Eintrittskarte>(`${this.baseUrl}eintrittskarte`, order);
}
/* PUT /api/eintrittskarte/{id} */
updateTicket(id: number, order: Partial<Eintrittskarte>): Observable<Eintrittskarte> {
return this.http.put<Eintrittskarte>(`${this.baseUrl}eintrittskarte/${id}`, order);
}
/* DELETE /api/eintrittskarte/{id} */
deleteTicket(id: number): Observable<void> {
return this.http.delete<void>(`${this.baseUrl}eintrittskarte/${id}`);
}
/* Kinosaal APIs */
/* GET /api/kinosaal */
@@ -42,7 +108,7 @@ export class HttpService {
/* Vorstellung APIs */
/* GET /api/vorstellung */
getPerformaces(): Observable<Vorstellung[]> {
getAllPerformaces(): Observable<Vorstellung[]> {
return this.http.get<Vorstellung[]>(`${this.baseUrl}vorstellung`);
}