hopps-app / hopps

Hopps wird eine cloudbasierte Open Source Buchhaltungssoftware mit AI, damit Vereine mehr Zeit für ihre wesentlichen Ziele und Angebote haben und frustrierte Situationen mit der Buchhaltung der Vergangenheit angehören.
MIT License
14 stars 0 forks source link

Anlegen, Editieren und Löschen von Bommeln via API #80

Open d135-1r43 opened 1 week ago

d135-1r43 commented 1 week ago

User Story

Als Benutzer und Entwickler möchte ich eine REST API zur Verwaltung von „Bommeln“ verwenden, um grundlegende CRUD-Operationen (Erstellen, Lesen, Bearbeiten, Löschen) an Bommeln durchzuführen und diese in der hierarchischen Struktur eines Vereins zu verwalten.

Ein Bommel ist ein Knotenpunkt innerhalb der Organisationsstruktur eines Vereins. Ein Bommel kann verschiedene Typen repräsentieren, wie z. B. Abteilungen, Teams, Projekte, Konten oder Kassen. Die Bommelstruktur ist baumartig organisiert, was bedeutet, dass jeder Bommel Verbindungen zu einem übergeordneten Bommel haben kann und so die Hierarchie innerhalb des Vereins widerspiegelt.

Akzeptanzkriterien

schitcrafter commented 1 week ago

Ich würde gerne an dem Issue arbeiten.

Dürfen postgres-exklusive features (z.B. ltree) genutzt werden?

manuelhummler commented 1 week ago

@schitcrafter von meiner Seite aus wäre das in Ordnung. Ich denke mit Postgres fahren wir auf jeden Fall mit einer stabilen Datenbank, die alle Features die wir in Zukunft benötigen mitbringt. Gerne aber noch das Feedback von @d135-1r43 abwarten, was er meint.

schitcrafter commented 1 week ago

Ich habe noch ein paar weitere Fragen:

d135-1r43 commented 1 week ago
schitcrafter commented 3 days ago

Noch ein paar Fragen zu OpenFGA/Auth:

Soll die Implementierung (zu z.B. welche relation für jede Operation geprüft wird) sehr generisch/konfigurierbar gemacht werden, oder ändern wir den code sobald wir das Schema entwickelt haben?

Woher wissen wir welcher User eine Anfrage gestellt hat (z.B. JWT Bearer)?

d135-1r43 commented 3 days ago

Soll die Implementierung (zu z.B. welche relation für jede Operation geprüft wird) sehr generisch/konfigurierbar gemacht werden, oder ändern wir den code sobald wir das Schema entwickelt haben?

Definiere mal eine generische, z. Bsp. read und write. Wenn sich das ändern sollte, refakturieren wir einfach.

Woher wissen wir welcher User eine Anfrage gestellt hat (z.B. JWT Bearer)?

Wenn ich es recht in Erinnerung habe, kannst du dir den SecurityContext injecten. Dort bekommst dann irgendwie den Principal raus.