Files
4plants/Doku/Tasks/02_datenmodel.md
T

1.1 KiB

Dokument 2: Datenmodell & Persistenz (Backend)

Ziel: Implementierung der relationalen Struktur zur Verwaltung des Saatgut-Bestands.

Entity-Definitionen (Doctrine ORM):
     Kategorie: id, name (unique), farbe.
     Pflanze: id, art_name, sorten_name, kategorie_id (FK → Kategorie), beschreibung.
     SaatgutBestand: id, nutzer_id (String aus Keycloak), pflanze_id (FK → Pflanze), menge, kaufdatum, ablaufdatum, notizen.
Daten-Integrität:
    Kaskadierendes Löschen: Wenn eine Kategorie gelöscht wird, muss entschieden werden, wie mit den Pflanzen verfahren wird (z.B. Setzen auf null oder Mitlöschen).
    Unique Constraint für nutzer_id + pflanze_id, um doppelte Einträge derselben Sorte pro Nutzer zu vermeiden (optional, je nach Wunsch).
Akzeptanzkriterien:
     
    Datenbank-Migrationen sind erstellt und erfolgreich ausgeführt.
     
    Testdaten für den globalen Katalog (Kategorie & Pflanze) wurden importiert.
     
    Die Beziehungen zwischen den Tabellen sind via Doctrine korrekt abgebildet.