BE: Gaeste- und Event-Endpunkte um ?include=person/?include=creator erweitern #170
Labels
No labels
component/backend
component/docs
component/e2e
component/frontend
component/infra
component/keycloak
prio/high
prio/low
prio/medium
type/bug
type/chore
type/feature
type/refactor
type/test
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
WompSchmiede/FamilienFeierPlaner#170
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Beschreibung
GET /api/v1/events/{event_id}/guestsum?include=personerweitern (Personendaten pro Gast inline)GET /api/v1/eventsum?include=creatorerweitern (Ersteller pro Event inline)Motivation / Anwendungsfall
Gaesteliste: Das Frontend zeigt auf der Event-Detailseite eine Gasterliste mit Namen. Aktuell liefert
/guestsnurpersonId— fuer jeden Gast ist ein separaterGET /api/v1/persons/{id}-Call noetig (N+1).Event-Liste: Die Dashboard-/Events-Uebersicht zeigt den Ersteller-Namen.
GET /api/v1/eventsliefert kein Creator-Objekt — es braucht N zusaetzliche Person-Queries.Vorgeschlagene Umsetzung
OpenAPI:
GuestWithPerson-Schema (EventGuest + person mit personId/firstName/lastName)?include=creatoranGET /api/v1/eventsEventWithCreator-SchemaBackend:
guests.ts:querystringumincludeergaenzen; beiinclude: 'person'Person-Daten viainclude: { person: { select: { personId, firstName, lastName } } }inline ladenevents.ts: Bei?include=creatordencreatorviainclude: { creator: { select: { personId, firstName, lastName } } }inline ladenAlternativen
Labels
component/backend, prio/high, type/feature
Meilenstein
MS-REST (#32)