Phase 0: Fundament der Feuerwehr-Verwaltungsplattform
Legt den kompletten Unterbau an, auf dem die Fachmodule aufsetzen. Betrieb: - docker-compose.yml mit Traefik, App, Worker, PostgreSQL 17 + PostGIS, Redis, MinIO und Gotenberg; Entwicklungs-Override ohne Traefik, dafuer mit Mailpit und Adminer - Mehrstufiges Dockerfile: eigener Benutzer, tini als PID 1, Healthcheck - .env.example mit einem Kommentar zu jeder Variable Mandantentrennung: - Row Level Security auf allen mandantenpflichtigen Tabellen - Zwei getrennte Datenbankverbindungen: florian_app mit aktiver RLS fuer die Anwendung, Eigentuemer-Zugang nur fuer Migration, Seed und Anmeldung - fuerOrganisation() als einziger Weg zu Fachdaten Nachvollziehbarkeit: - AuditLog append-only per Trigger; UPDATE ist dauerhaft gesperrt, DELETE nur im gekennzeichneten Aufbewahrungslauf - Geheimnisse werden vor dem Schreiben entfernt Anmeldung: - OIDC gegen ein extern betriebenes authentik, Rollen aus Gruppen nur als Vorbelegung beim ersten Login - Lokaler E-Mail/Passwort-Login als Rueckfallweg - Terminal per PIN und RFID mit zwei Schranken (Geraet, dann Person) Weiteres: - lib/authz.ts mit 9 Rollen und 38 Einzelrechten - lib/storage.ts (MinIO), lib/audit.ts, lib/warteschlange.ts (BullMQ) - Integrationen fuer Mail, Telegram und LLM hinter abschaltbaren Interfaces - tRPC v11, Basis-Layout mit Seitenleiste und dunkler Darstellung - Seed mit einer Beispielwehr: 16 Personen, 3 Fahrzeuge, 40 Geraete - 32 Vitest-Tests (davon 8 gegen eine echte Datenbank), 10 Playwright-Tests - README, Anleitung mit Screenshots, Roadmap, Aufwandsschaetzung, Devlog, Versionierungsregeln und Changelog Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+20
@@ -0,0 +1,20 @@
|
||||
Phase 3: Einsatz- und Übungserfassung.
|
||||
|
||||
Modelle: Einsatz (Einsatznummer, Stichwort, Kategorie nach Landesstatistik,
|
||||
Adresse, Geokoordinaten, Zeitstempel: alarmiert/ausgerueckt/eingetroffen/
|
||||
einsatzende/eingerueckt/einsatzbereit, Beschreibung, Bericht,
|
||||
Einsatzleiter, Wetter), Einsatzfahrzeug, Einsatzkraft (Person, Funktion,
|
||||
Zeit von/bis), Materialverbrauch, Lagemeldung (Text, Foto, wichtig-Flag),
|
||||
Uebung (analog, mit Ausbildungsthema und Lernzielen).
|
||||
|
||||
Funktionen:
|
||||
- Schnellerfassung: Stichwort + Adresse + Fahrzeuge, Rest später nachtragen
|
||||
- Geocoding über self-hosted Nominatim (mit Fallback auf manuelle Koordinaten)
|
||||
- Personalauswahl mit Vorschlag anhand Verfügbarkeit und Qualifikation
|
||||
- Stärkeberechnung nach FwDV 3 (z. B. 1/2/6/9) automatisch
|
||||
- Einsatzbericht als PDF, Sammelexport pro Jahr für die Gemeinde
|
||||
- Statistik: Einsätze nach Kategorie/Monat, Eintreffzeiten als Verteilung,
|
||||
Beteiligung je Person, Fahrzeugauslastung
|
||||
- Externes Portal: signierter QR-Link, ohne Login, für Fremdwehren —
|
||||
nur Statusmeldung und Lagemeldung mit Foto, zeitlich begrenzt gültig,
|
||||
rate-limited
|
||||
Reference in New Issue
Block a user