Files
assetsTracker/docs/VERKAUF_UEBERSICHT.md
2026-04-07 17:12:32 +02:00

26 KiB
Raw Blame History

DefektTrack — Produkt- und Infrastruktur-Dokumentation

Digitale Defekt- und Asset-Verwaltung für Unternehmen mit mehreren Filialen. Echtzeit-Tracking defekter Ware, rollenbasierte Dashboards und transparente Auswertungen — alles in einer Anwendung.


Inhaltsverzeichnis

  1. Produktübersicht
  2. Architektur & Tech-Stack
  3. Datenmodell
  4. Rollenkonzept
  5. Asset-Tracker — Liste & Filter
  6. Admin-Panel
  7. Filialleiter-Dashboard
  8. Firmenleiter-Dashboard
  9. Sicherheitskonzept
  10. Navigationsfluss

1. Produktübersicht

DefektTrack ist eine webbasierte Anwendung zur lückenlosen Erfassung, Verfolgung und Auswertung defekter Ware über mehrere Filialen hinweg.

Welches Problem löst DefektTrack?

Problem Lösung
Defekte Ware wird auf Papier oder in Excel erfasst — unübersichtlich, fehleranfällig, nicht zentral Zentrale Web-App mit Echtzeit-Synchronisation
Keine Transparenz über Standorte hinweg Firmenweite Dashboards mit Filialvergleich
Zuständigkeiten unklar, Aufgaben gehen unter Zuständigkeits-Zuweisung + Überfälligkeits-Tracking mit 7-Tage-Frist
Filialleiter haben keinen Überblick über Team-Performance Mitarbeiter-Erledigungsraten + Trend-Analysen
Firmenleitung sieht keine Gesamtzahlen Globales Dashboard mit KPIs und Filialvergleich

Kernfunktionen auf einen Blick

  • Defekt-Erfassung mit ERL-Nummer, Seriennummer, Priorität, Kommentar und Datei-Anhängen
  • Dreistufiger Status-Workflow: Offen → In Bearbeitung → Entsorgt
  • Automatisches Überfälligkeits-Tracking (Frist: 7 Tage)
  • 5 Spalten-Filter + 4 Sortieroptionen in der Asset-Tabelle
  • Druck-Export (offene/in Bearbeitung) und JSON-Export
  • Rollenbasierte Dashboards (Admin, Filialleiter, Firmenleiter)
  • Mitarbeiter-Performance-Übersicht
  • Audit-Log für alle Änderungen
  • Dark Mode / Light Mode
  • Responsive Design (Desktop + Mobile)

2. Architektur & Tech-Stack

Technologie

Schicht Technologie Version
Frontend React 19
Bundler Vite 6
Styling Tailwind CSS 4
UI-Komponenten shadcn/ui (Base UI) 4
Charts Recharts 2.15
Icons Lucide React 0.577
Routing React Router 7
Backend (BaaS) Appwrite 21 (Client) / 22 (Server)
API-Server Express 5
Benachrichtigungen Sonner 2
Theming next-themes 0.4

Architektur-Diagramm

flowchart TB
    subgraph client [Browser]
        SPA["React SPA"]
    end

    subgraph server [Server-Infrastruktur]
        ExpressAPI["Express API\n(Admin-Operationen)"]
        AppwriteServer["Appwrite Server"]
    end

    subgraph appwrite [Appwrite Services]
        Auth["Authentication\n(E-Mail/Passwort)"]
        TeamsService["Teams\n(Rollen)"]
        DB["Database\n(5 Collections)"]
        StorageSvc["Storage\n(Anhänge)"]
    end

    SPA -->|"REST API"| AppwriteServer
    SPA -->|"/api/*"| ExpressAPI
    ExpressAPI -->|"Server SDK"| AppwriteServer
    AppwriteServer --> Auth
    AppwriteServer --> TeamsService
    AppwriteServer --> DB
    AppwriteServer --> StorageSvc

Deployment-Optionen

  • Self-hosted: Appwrite als Docker-Container + Node.js-Server
  • Cloud: Appwrite Cloud + beliebiges Node.js-Hosting (z.B. Railway, Render, VPS)
  • Statisches Frontend: Vite-Build als statische Dateien auf beliebigem Webserver

3. Datenmodell

Die Appwrite-Datenbank (defekttrack_db) umfasst 5 Collections und einen Storage-Bucket:

Collections

locations — Filialen

Attribut Typ Pflicht Beschreibung
name String (128) Ja Filialname (z.B. „Kaiserslautern")
address String (256) Nein Adresse der Filiale
isActive Boolean Nein Filiale aktiv/inaktiv (Standard: true)

Berechtigungen: Lesen: alle authentifizierten Benutzer. Schreiben/Löschen: nur Admin.

users_meta — Benutzerprofile

Attribut Typ Pflicht Beschreibung
userId String (64) Ja Appwrite User-ID
locationId String (64) Nein Zugeordnete Filiale
userName String (128) Nein Anzeigename
role String (32) Ja Rolle (admin, firmenleiter, filialleiter, service, lager)
mustChangePassword Boolean Nein Passwortänderung beim nächsten Login erforderlich

Berechtigungen: Lesen: alle. Erstellen/Löschen: nur Admin. Aktualisieren: alle.

lagerstandorte — Lagerstandorte pro Filiale

Attribut Typ Pflicht Beschreibung
name String (128) Ja Name des Lagerstandorts
locationId String (64) Ja Zugehörige Filiale
isActive Boolean Nein Aktiv/Inaktiv (Standard: true)

Berechtigungen: Lesen: alle. CRUD: Admin + Filialleiter.

assets — Defekt-Einträge

Attribut Typ Pflicht Beschreibung
erlNummer String (64) Ja ERL-Nummer (eindeutige Kennung)
seriennummer String (128) Ja Seriennummer des Artikels
artikelNr String (64) Nein Artikelnummer
bezeichnung String (256) Nein Artikelbezeichnung
defekt String (1024) Nein Defektbeschreibung
lagerstandortId String (64) Nein Zugeordneter Lagerstandort
zustaendig String (128) Ja Zuständiger Mitarbeiter
status String (32) Ja offen / in_bearbeitung / entsorgt
prio String (16) Ja kritisch / hoch / mittel / niedrig
bearbeitungsStatus String (64) Nein Bearbeitungs-Unterstatus bei "In Bearbeitung" (portalpruefung / gutschreiben_entsorgen / zurueck_hersteller / defekt_ankunft)
kommentar String (8192) Nein Kommentar inkl. Anhang-Marker
createdBy String (128) Nein Erstellt von
lastEditedBy String (128) Nein Zuletzt bearbeitet von

Berechtigungen: Lesen/Erstellen/Aktualisieren: alle. Löschen: Admin + Filialleiter.

audit_logs — Änderungsprotokoll

Attribut Typ Pflicht Beschreibung
assetId String (64) Ja Referenz auf Asset
action String (64) Ja Aktion (z.B. „erstellt", „status_geaendert")
details String (2048) Nein Beschreibung der Änderung
userId String (64) Ja Wer hat die Änderung vorgenommen
userName String (128) Ja Name des Benutzers

Berechtigungen: Lesen + Erstellen: alle authentifizierten Benutzer.

Storage

Bucket Max. Dateigröße Erlaubte Formate Verwendung
defekttrack_anhaenge 15 MB JPG, PNG, GIF, WebP, PDF Kommentar-Anhänge mit Bildvorschau

4. Rollenkonzept & Berechtigungsmatrix

DefektTrack nutzt 5 Rollen, die über Appwrite Teams zugewiesen werden. Bei Mehrfach-Mitgliedschaft gilt die Rolle mit der höchsten Priorität.

Rollenhierarchie

flowchart TD
    Admin["Admin\n(Volle Kontrolle)"]
    Firmenleiter["Firmenleiter\n(Unternehmensweite Sicht)"]
    Filialleiter["Filialleiter\n(Filial-Management)"]
    Service["Service\n(Operativ)"]
    Lager["Lager\n(Operativ)"]

    Admin --- Firmenleiter
    Firmenleiter --- Filialleiter
    Filialleiter --- Service
    Filialleiter --- Lager

Rollenübersicht

Rolle Startseite Beschreibung
Admin /admin Systemadministrator mit voller Kontrolle über Filialen, Benutzer und Daten
Firmenleiter /firmenleiter Geschäftsführung mit unternehmensweitem Überblick über alle Filialen
Filialleiter /filialleiter Filialleitung mit detailliertem Einblick in die eigene Filiale + Vergleich
Service /tracker Operative Kraft — erfasst und bearbeitet Defekte im Tagesgeschäft
Lager /tracker Operative Kraft — identisch mit Service, arbeitet im Defekt-Tracker

Detaillierte Berechtigungsmatrix

Funktion Admin Firmenleiter Filialleiter Service Lager
Defekt-Tracker verwenden Ja Ja Ja Ja Ja
Assets erfassen Ja Ja Ja Ja Ja
Assets Status ändern Ja Ja Ja Ja Ja
Assets bearbeiten Ja Ja Ja Ja Ja
Assets löschen Ja Ja
JSON-Export Ja Ja Ja Ja Ja
Drucken Ja Ja Ja Ja Ja
Admin-Panel Ja
Filialen verwalten (CRUD) Ja
Benutzer anlegen/verwalten Ja
Rollen zuweisen Ja
Benutzer-Details einsehen Ja Ja Nur eigene Filiale
Benutzer-Details bearbeiten Ja Ja — (nur Lesen)
Firmenleiter-Dashboard Ja Ja
Filialleiter-Dashboard Ja Ja
Lagerstandorte verwalten Ja Ja
Audit-Log einsehen Ja Ja Ja Ja Ja

Was jede Rolle im Detail kann

Admin — Volle Systemkontrolle

  • Zugang zu allen Bereichen der Anwendung (Admin-Panel, alle Dashboards, Tracker)
  • Filialen anlegen, bearbeiten, aktivieren/deaktivieren und löschen
  • Benutzer anlegen mit Rollenzuweisung und Filialzuordnung
  • Benutzerprofile einsehen und bearbeiten (Name, Rolle, Filiale)
  • Assets löschen
  • Lagerstandorte verwalten
  • Überblick über System-KPIs: Benutzeranzahl, Filialanzahl, Assets, Lagerstandorte, Filialen ohne Filialleiter

Firmenleiter — Strategischer Unternehmensüberblick

  • Firmenleiter-Dashboard mit globalen Kennzahlen über alle Filialen
  • Überblick: Anzahl Filialen, Mitarbeiter gesamt, Assets gesamt, globale Erledigungsrate
  • Status-Übersicht: Offen / In Bearbeitung / Erledigt (firmenweit)
  • Filialkarten mit Kennzahlen pro Standort (Mitarbeiter, Lagerstandorte, Assets)
  • Benutzer-Details einsehen und bearbeiten
  • Defekt-Tracker für operative Arbeit

Filialleiter — Detailliertes Filial-Management

  • Filialleiter-Dashboard mit umfangreichen Analysen der eigenen Filiale
  • Gesamtübersicht: Donut-Diagramm der Status-Verteilung + Tabelle überfälliger Einträge
  • Tages-Analyse: Tages-Donut, 7-Tage-Balkendiagramm (Erfasst/Erledigt/Überfällig), Vergleich zum Vortag
  • Monats-Analyse: Monats-Donut, 6-Monate-Balkendiagramm, Vergleich zum Vormonat
  • Filialvergleich: Durchschnittswerte anderer Filialen als Benchmark
  • Mitarbeiter-Performance: Pro Mitarbeiter: zugewiesene Assets, offen, in Bearbeitung, erledigt, Erledigungsrate (%) mit Fortschrittsbalken
  • Navigation zu Mitarbeiter-Details (nur Lesen, nur eigene Filiale)
  • Lagerstandorte für eigene Filiale verwalten
  • Assets löschen

Service & Lager — Operative Tagesarbeit

  • Defekt-Tracker als Hauptarbeitsbereich
  • Neue Defekte erfassen: ERL-Nr., Seriennummer, Artikelnr., Bezeichnung, Defekt, Priorität, Lagerstandort, Zuständiger, Kommentar mit Datei-Anhängen
  • Status-Workflow: Offen → In Bearbeitung → Entsorgt (zyklisch)
  • Filter und Sortierung in der Asset-Tabelle
  • Asset-Detailansicht zum Bearbeiten
  • Kommentar-/Anhang-Popup zum schnellen Einsehen
  • Druckfunktion und JSON-Export

5. Asset-Tracker — Liste & Filter

Der Defekt-Tracker (/tracker) ist die zentrale Arbeitsansicht für alle Benutzer. Er besteht aus drei Bereichen:

Layout

┌────────────────────────────────────────────────────────────┐
│  Header (Navigation, Export, Benutzer-Menü)                │
├──────────────┬─────────────────────────────────────────────┤
│              │  Dashboard-Karten (6 Karten)                │
│  Erfassungs- │─────────────────────────────────────────────│
│  Formular    │                                             │
│  (Sidebar)   │  Asset-Tabelle                              │
│              │  (Filter, Sortierung, Aktionen)             │
│              │                                             │
└──────────────┴─────────────────────────────────────────────┘

Dashboard-Karten (Status-Filter)

6 klickbare Karten, die gleichzeitig als Filter dienen:

Karte Farbe Anzeige Filter-Effekt
Offen Rot Anzahl Assets mit Status „offen" Zeigt nur offene Assets
In Bearbeitung Amber Anzahl Assets mit Status „in_bearbeitung" Zeigt nur Assets in Bearbeitung
Entsorgt Grau Anzahl Assets mit Status „entsorgt" Zeigt nur entsorgte Assets
12 Tage überfällig Blau Assets 12 Tage über der 7-Tage-Frist Filtert auf diese Gruppe
34 Tage überfällig Indigo Assets 34 Tage über der 7-Tage-Frist Filtert auf diese Gruppe
5+ Tage überfällig Violett Assets 5+ Tage über der 7-Tage-Frist Filtert auf diese Gruppe

Erneutes Klicken auf eine aktive Karte entfernt den Filter.

Asset-Tabelle — Spalten

Spalte Inhalt Besonderheiten
ERL-Nr. ERL-Nummer Zellhintergrund farbig nach Priorität (Kritisch=Rot, Hoch=Orange, Mittel=Gelb, Niedrig=Grün)
Artikel Artikelnummer + Bezeichnung Zweizeilig: Nummer fett, Bezeichnung klein
Seriennr. Seriennummer Monospace-Schrift
Defekt Defektbeschreibung Max. 180px Breite, Textabschneidung
Standort Name des Lagerstandorts Aufgelöst aus Lagerstandort-ID
Status Offen / In Bearbeitung / Entsorgt Farbige Badges
Alter Tage seit Erfassung „Heute", „1 Tag", „n Tage" + „Überfällig!"-Warnung ab 7 Tagen
Aktionen 4 Buttons im 2x2-Grid Status ändern, Bearbeiten, Info-Popup, Zuständiger

Spalten-Filter (5 Stück)

Filter Typ Funktionsweise
ERL-Nr. Textsuche Teilstring-Suche, case-insensitive
Artikel Textsuche Sucht in Artikelnummer ODER Bezeichnung
Seriennr. Textsuche Teilstring-Suche, case-insensitive
Defekt Textsuche Teilstring-Suche, case-insensitive
Standort Dropdown Auswahl eines spezifischen Lagerstandorts

Sortierung (4 Optionen)

Option Verhalten
Priorität (Standard) Kritisch → Hoch → Mittel → Niedrig
Neueste zuerst Nach Erstellungsdatum absteigend
Älteste zuerst Nach Erstellungsdatum aufsteigend
Mir zugewiesen Nur eigene Assets, sortiert nach Priorität

Status-Workflow

stateDiagram-v2
    [*] --> Offen: Asset erfasst
    Offen --> InBearbeitung: In Bearbeitung nehmen
    InBearbeitung --> Entsorgt: Entsorgen
    Entsorgt --> Offen: Neu öffnen

    state "In Bearbeitung" as InBearbeitung
  • Überfälligkeit wird automatisch erkannt: Status „Offen" oder „In Bearbeitung" und älter als 7 Tage
  • Überfällige Zeilen werden optisch hervorgehoben (amber-Hintergrund + linker Rand)

Zeilen-Aktionen (2x2-Grid pro Zeile)

Element Funktion
Status-Dropdown Dropdown-Menü zur Auswahl des neuen Status (Offen / In Bearbeitung / Entsorgt). Bei Status != "In Bearbeitung" nimmt das Dropdown die volle Breite ein.
Bearbeitungsstatus Nur sichtbar bei Status "In Bearbeitung" — Dropdown mit 4 Optionen: Portalprüfung durchführen, Direkt gutschreiben & entsorgen, Zurück an Hersteller senden, Defekt bei Ankunft melden
Info Navigation zur Asset-Detailseite (Bearbeiten-Ansicht)
Zuständig Anzeige des zuständigen Mitarbeiters (nur Lesen)

Erfassungs-Formular (Sidebar)

Neue Defekte werden über die linke Sidebar erfasst:

  • ERL-Nummer, Seriennummer (Pflicht)
  • Artikelnummer, Bezeichnung
  • Defektbeschreibung
  • Priorität (Kritisch / Hoch / Mittel / Niedrig)
  • Lagerstandort (Dropdown der aktiven Standorte)
  • Zuständiger Mitarbeiter (Dropdown der Kollegen)
  • Kommentar mit optionalem Betreff
  • Datei-Anhänge (Bilder, PDFs — max. 15 MB, mit Vorschau)

Export & Druck

Funktion Beschreibung
Drucken Öffnet druckoptimiertes Fenster mit allen offenen/in Bearbeitung befindlichen Assets (ERL-Nr., Seriennummer, Defekt, Priorität)
JSON-Export Exportiert alle geladenen Assets als JSON-Datei mit Zeitstempel im Dateinamen

Kommentar-System

  • Kommentare mit optionalem Betreff (markiert mit *...*)
  • Datei-Anhänge werden als Marker im Kommentar-Feld gespeichert
  • Anhänge werden im Appwrite Storage abgelegt
  • Bilder: Authentifizierte Vorschau direkt in der App
  • PDFs und andere Dateien: Download-Link
  • Einsehbar über das Info-Popup in der Tabelle und auf der Asset-Detailseite

6. Admin-Panel

Das Admin-Panel (/admin) ist die Verwaltungszentrale für Systemadministratoren.

KPI-Karten (5 Stück)

KPI Beschreibung
Benutzer Gesamtzahl registrierter Benutzer
Filialen Anzahl angelegter Filialen
Assets gesamt Gesamtzahl aller erfassten Defekt-Einträge
Lagerstandorte Anzahl aller Lagerstandorte über alle Filialen
Filialen ohne Filialleiter Warnung: Filialen, denen kein Filialleiter zugeordnet ist

Filial-Verwaltung

Aktion Beschreibung
Filiale anlegen Name + Adresse eingeben, wird sofort aktiv
Filiale bearbeiten Name und Adresse ändern, inkl. Filialdetail-Ansicht
Aktivieren/Deaktivieren Filiale ein-/ausschalten ohne Datenverlust
Filiale löschen Endgültiges Entfernen (mit Bestätigung)

Beim Bearbeiten einer Filiale öffnet sich die Filialdetail-Ansicht mit erweiterten Verwaltungsoptionen (z.B. Lagerstandorte der Filiale, zugeordnete Benutzer).

Benutzerverwaltung

Funktion Beschreibung
Benutzersuche Echtzeit-Suche nach Name oder User-ID
Benutzerliste Scrollbare Liste mit Name, Filiale und Rollen-Badge
Benutzer-Detail Klick öffnet Detailansicht mit Name, Rolle, Filialzuordnung
Neuer Benutzer Formular zum Anlegen: E-Mail, Name, Passwort, Rolle, Filiale
Verfügbare Rollen Filialleiter, Service, Lager, Firmenleiter (Admin nur per Setup)

7. Filialleiter-Dashboard

Das Filialleiter-Dashboard (/filialleiter) bietet Filialleitern eine umfassende Analyse ihrer Filiale mit Vergleichswerten.

Bereich 1: Aktuelle Gesamtübersicht

Element Beschreibung
Donut-Diagramm Verteilung der Assets nach Status: Offen, In Bearbeitung, Erledigt, Überfällig
Interaktive Legende Hover über Legende hebt Sektor hervor, zeigt absolute Zahl + Prozent + Balken
Zentraler Wert Gesamtzahl der Assets der Filiale im Donut-Zentrum
Überfällige-Tabelle Sortierte Liste aller überfälligen Einträge mit ERL-Nr., Artikel, Status, Tage überfällig, Zuständiger

Klick auf eine überfällige Zeile navigiert direkt zur Asset-Detailseite.

Bereich 2: Tages-Ansicht

Element Beschreibung
Donut „Meine Filiale" Tagesaktivität (erfasst, in Bearbeitung, erledigt, überfällig)
Tages-Kennzahl „Heute erfasst" mit Trend-Pfeil im Vergleich zum Vortag
7-Tage-Balkendiagramm Pro Tag: Erfasst, Erledigt, Überfällig als gruppierte Balken
Donut „Durchschnitt andere Filialen" Gleiche Metrik, gemittelt über alle anderen Filialen als Benchmark

Bereich 3: Monats-Ansicht

Element Beschreibung
Donut „Meine Filiale" Monatliche Status-Verteilung
Monats-Kennzahl „Diesen Monat" mit Trend-Pfeil im Vergleich zum Vormonat
6-Monate-Balkendiagramm Pro Monat: Erfasst, Erledigt, Überfällig als gruppierte Balken
Donut „Durchschnitt andere Filialen" Monats-Durchschnitt aller anderen Filialen

Bereich 4: Mitarbeiter-Performance

Tabelle mit allen Mitarbeitern der Filiale:

Spalte Beschreibung
Mitarbeiter Name (klickbar → Mitarbeiter-Detail)
Zugewiesen Gesamtzahl zugewiesener Assets
Offen Anzahl offener Assets
In Bearbeitung Anzahl in Bearbeitung
Erledigt Anzahl erledigter Assets
Erledigungsrate Prozent + visueller Fortschrittsbalken

Sortiert nach Erledigungsrate (höchste zuerst).


8. Firmenleiter-Dashboard

Das Firmenleiter-Dashboard (/firmenleiter) bietet der Geschäftsführung einen strategischen Überblick über das gesamte Unternehmen.

Globale KPI-Karten (4 Stück)

KPI Icon Beschreibung
Filialen Gebäude Gesamtzahl aller Filialen
Mitarbeiter gesamt Personen Alle registrierten Benutzer
Assets gesamt Paket Alle erfassten Defekt-Einträge
Erledigungsrate Häkchen Prozent der erledigten Assets (entsorgt / gesamt * 100)

Status-Übersicht (3 Karten)

Status Farbe Beschreibung
Offen Rot Firmenweit offene Assets
In Bearbeitung Amber Firmenweit in Bearbeitung
Erledigt Grün Firmenweit erledigte Assets

Filial-Grid

Pro Filiale eine Karte mit:

Element Beschreibung
Filialname Name der Filiale
Adresse Optional angezeigte Adresse
Status-Badge Aktiv / Inaktiv
Mitarbeiter Anzahl zugeordneter Mitarbeiter
Lagerstandorte Anzahl der Lagerstandorte
Assets Gesamtzahl der Assets

9. Sicherheitskonzept

Authentifizierung

  • Appwrite Authentication mit E-Mail/Passwort-Login
  • Session-basiert mit automatischer Session-Prüfung beim App-Start
  • Geschützte Routen: Nicht-eingeloggte Benutzer werden zu /login umgeleitet

Autorisierung — Mehrstufiges Konzept

Schicht Mechanismus Beschreibung
1. Appwrite Teams Team-Mitgliedschaft Jede Rolle = ein Team. Effektive Rolle per Prioritätslogik (Admin > Firmenleiter > Filialleiter > Service > Lager)
2. Collection Permissions Appwrite-interne Berechtigung Pro Collection definiert, wer lesen/erstellen/aktualisieren/löschen darf
3. Frontend-Navigation UI-basierte Einschränkung Rollen-abhängige Menüpunkte im Header
4. Admin-API Shared Secret Express-API für Benutzerverwaltung, geschützt durch X-Admin-Secret Header

Daten-Isolation

  • Filialbasiert: Benutzer mit zugewiesener Filiale sehen nur Assets, deren Lagerstandort zur eigenen Filiale gehört
  • Filialleiter: Kann Mitarbeiter-Details nur für die eigene Filiale einsehen
  • Audit-Trail: Jede Asset-Änderung (Erstellen, Status-Wechsel) wird protokolliert mit Benutzer, Aktion und Zeitstempel

Collection-Berechtigungsmatrix

Collection Lesen Erstellen Aktualisieren Löschen
locations Alle Admin Admin Admin
users_meta Alle Admin Alle Admin
lagerstandorte Alle Admin, Filialleiter Admin, Filialleiter Admin, Filialleiter
assets Alle Alle Alle Admin, Filialleiter
audit_logs Alle Alle

10. Navigationsfluss

Rollenbasierte Weiterleitung nach Login

flowchart TD
    Login["Login-Seite\n/login"] --> AuthCheck{"Authentifizierung\nerfolgreich?"}
    AuthCheck -->|Nein| Login
    AuthCheck -->|Ja| RoleCheck{"Rolle prüfen"}
    RoleCheck -->|admin| AdminPanel["/admin\nAdmin-Panel"]
    RoleCheck -->|firmenleiter| FirmenDash["/firmenleiter\nFirmenleiter-Dashboard"]
    RoleCheck -->|filialleiter| FilialDash["/filialleiter\nFilialleiter-Dashboard"]
    RoleCheck -->|"service / lager"| Tracker["/tracker\nDefektTracker"]

Vollständiger Navigationsfluss

flowchart TD
    AdminPanel["/admin\nAdmin-Panel"]
    FirmenDash["/firmenleiter\nFirmenleiter-Dashboard"]
    FilialDash["/filialleiter\nFilialleiter-Dashboard"]
    Tracker["/tracker\nDefektTracker"]
    AssetDetail["/asset/:id\nAsset-Detail"]
    UserDetail["/admin/user/:id\nBenutzer-Detail"]
    MitarbeiterDetail["/filialleiter/mitarbeiter/:id\nMitarbeiter-Detail"]

    AdminPanel -->|"Nav: DefektTrack"| Tracker
    AdminPanel -->|"Nav: Filialleiter"| FilialDash
    AdminPanel -->|"Nav: Firmenleiter"| FirmenDash
    AdminPanel -->|"Benutzer-Klick"| UserDetail

    FirmenDash -->|"Nav: DefektTrack"| Tracker
    FirmenDash -->|"Nav: Filialleiter"| FilialDash

    FilialDash -->|"Nav: DefektTrack"| Tracker
    FilialDash -->|"Überfällig-Klick"| AssetDetail
    FilialDash -->|"Mitarbeiter-Klick"| MitarbeiterDetail

    Tracker -->|"Bearbeiten-Klick"| AssetDetail

Zugängliche Seiten pro Rolle

Seite Admin Firmenleiter Filialleiter Service Lager
/admin Ja
/firmenleiter Ja Ja
/filialleiter Ja Ja
/tracker Ja Ja Ja Ja Ja
/asset/:id Ja Ja Ja Ja Ja
/admin/user/:id Ja Ja
/filialleiter/mitarbeiter/:id Ja

DefektTrack — Transparenz schaffen. Defekte tracken. Prozesse optimieren.