Zum Inhalt

UC-Zielschema-Matrix: UC00–UC09, UC-SA und UC18

Stand: 01.08.2026 14:55 Branch: docs/einheitliche-kopfbereiche Status: Zielbild für Schema-Bereinigung

Datum, Uhrzeit Version Änderung Autor
01.08.2026 14:55 1.0 Kopfbereich vereinheitlicht David Mittig

Ziel

Dieses Dokument definiert das Zielbild zwischen Use Cases und Datenbankschema.

Es beantwortet je UC:

  • welche Datenbankobjekte benötigt werden,
  • welche Objekte im aktuellen Prisma-Schema vorhanden sind,
  • welche Objekte ergänzt werden sollen,
  • welche Objekte bewusst erst V2 sind,
  • welche Punkte offen bleiben.

Grundsatz:

V1 muss UC00–UC09 und UC-SA konsistent abbilden. UC18 bleibt V2, muss aber durch V1 architektonisch vorbereitet bleiben.

1. Führende technische Quelle

Für die Bereinigungsphase wird backend/prisma/schema.prisma als technische Zielquelle verwendet.

Begründung:

  • Das Backend arbeitet mit Prisma.
  • Das aktuelle Schema enthält bereits die neueren Statusmodelle.
  • RefreshToken ist im Code und Prisma vorhanden.
  • Ältere SQL- und Markdown-Dokumente weichen nachweislich ab.

Folge:

  • Dokumentation und SQL-Scripte müssen nach Prisma ausgerichtet werden.
  • Fehlende fachlich notwendige V1-Objekte werden in Prisma ergänzt.

2. UC-Matrix

UC Zweck V1-Zielobjekte Aktueller Prisma-Stand Entscheidung
UC00 Tenant-Onboarding & Schulverwaltung tenants, users, invitation_tokens, refresh_tokens, auth_log, audit_log, system_log, recovery_codes, notification_templates teilweise vorhanden recovery_codes, notification_templates, tokenType ergänzen
UC01 Equipment erfassen equipment, cylinder_details, regulator_details, equipment_notes, equipment_identifiers, customers teilweise vorhanden Equipment-Core erweitern
UC02 TÜV-Inspektion einreichen equipment, cylinder_details, usecase_workflows, workflow_history, audit_log grundsätzlich vorhanden UsecaseType erweitern und UC02 dokumentieren
UC03 Füll-Abo & Füllkarten-Verwaltung fill_subscriptions, fill_cards, fill_card_transactions nicht vorhanden V1-Schema ergänzen, weil UC03 V1 ist
UC04 Inhouse-Service erfassen equipment, regulator_details, usecase_workflows, workflow_history teilweise vorhanden UsecaseType erweitern
UC05 Fristen-Dashboard cylinder_details, regulator_details, notification_rules, notification_log grundsätzlich vorhanden Templates und Equipment-Typen synchronisieren
UC06 Kunden einladen & Portal customers, users, invitation_tokens, customer_activity_log, auth_log teilweise vorhanden Customer-User-Verknüpfung und tokenType ergänzen
UC07 Benachrichtigungen notification_rules, notification_log, notification_templates, system_log teilweise vorhanden notification_templates ergänzen
UC08 Benutzerverwaltung users, invitation_tokens, refresh_tokens, auth_log grundsätzlich vorhanden globale E-Mail-Eindeutigkeit beibehalten und dokumentieren
UC09 Berichte & Export bestehende Fach- und Logtabellen grundsätzlich vorbereitet kein eigenes V1-Report-Model nötig
UC-SA Superadmin-Panel tenants, users, auth_log, audit_log, system_log grundsätzlich vorhanden PlanType, Status und Logs dokumentieren
UC18 Equipment-Verleih V2: rental_transactions, rental_items, rental_condition_logs nicht vorhanden bleibt V2; V1 darf nicht blockieren

3. V1-Ergänzungen im Prisma-Schema

Folgende Ergänzungen sind für V1 fachlich notwendig oder zur Konsistenz erforderlich:

3.1 UC00 / UC07

  • RecoveryCode
  • NotificationTemplate
  • InvitationToken.tokenType
  • InvitationTokenType Enum

3.2 UC01

  • Erweiterung EquipmentType
  • EquipmentDataQualityStatus Enum
  • EquipmentAssignmentType Enum
  • Equipment.inventoryNumber
  • Equipment.displayName
  • Equipment.location
  • Equipment.purchaseDate
  • Equipment.colorMarking
  • Equipment.condition
  • EquipmentNote
  • EquipmentIdentifier

3.3 UC03

  • FillSubscription
  • FillCard
  • FillCardTransaction

3.4 UC04

  • Erweiterung UsecaseType

3.5 UC06

  • optionale Verknüpfung Customer.userId

4. V2-bewusste Objekte

Folgende Objekte bleiben bewusst V2 und werden nicht als V1-Pflicht bewertet:

  • customer_tenant_map
  • documents
  • change_requests
  • push_tokens
  • registration_requests
  • organizations
  • rental_transactions
  • rental_items
  • rental_condition_logs

Wichtig:

UC18 wird nicht in V1 implementiert, aber V1 muss den Equipment-Core so halten, dass UC18 später ohne Schema-Bruch ergänzt werden kann.

5. Offene Punkte nach der Matrix

  • SQL-Scripte müssen nach Prisma nachgezogen werden.
  • docs/developer/db-schema.md muss neu aufgebaut oder stark aktualisiert werden.
  • Roadmap und Index müssen den neuen Schema-Stand übernehmen.
  • GEM 01, GEM 12, GEM 13 und GEM 14 müssen nach Schemaänderung neu bewertet werden.