Files
assetsTracker/todos.md
Kenso Grimm 9b9b8d39a8 31 von 45 = ca. 69 %
31 punkter der todo liste abgeabeitet
2026-03-08 09:20:39 +01:00

185 lines
7.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# DefektTrack Development TODO Roadmap
Ziel: Aufbau eines sicheren, rollenbasierten Defekt- und Retouren-Management-Systems für Lager, Service und Management.
---
# PRIORITY 1 CORE SECURITY & ACCESS
- [x] ## 1. Login-Gate vor dem Laden der App
Die eigentliche Anwendung darf erst geladen werden, nachdem sich ein Nutzer erfolgreich authentifiziert hat.
- [x] ## 2. Session-System (Login bleibt bis Browser geschlossen wird)
Der Login bleibt aktiv, bis der Browser geschlossen wird, damit Mitarbeiter nicht ständig neu einloggen müssen.
- [x] ## 3. Benutzerverwaltung (Admin)
Ein Administrator muss neue Benutzer anlegen, deaktivieren und verwalten können.
- [x] ## 4. Rollen-System
Jeder Benutzer erhält intern eine Rolle (z.B. Lager, Service, Filialleiter, Firmenleiter), die bestimmt, welche Funktionen und Ansichten sichtbar sind.
- [ ] ## 5. Startpasswort-System
Neue Benutzer erhalten ein Standardpasswort (z.B. 0000), das nach dem ersten Login geändert werden muss.
- [ ] ## 6. Passwort-Änderungspflicht
Startpasswörter müssen innerhalb von 24 Stunden geändert werden, sonst wird eine Warnung oder Benachrichtigung ausgelöst.
- [ ] ## 7. PIN-Login-System
Login erfolgt über Benutzername + 4-stelligen PIN, den der Benutzer nach dem ersten Login selbst festlegt.
- [x] ## 8. Passwort-Hashing
Passwörter oder PINs dürfen niemals im Klartext gespeichert werden, sondern müssen gehasht gespeichert werden (Appwrite übernimmt dies).
- [x] ## 9. Zugriffskontrolle (Role Based Access Control)
Das Backend muss prüfen, ob ein Benutzer berechtigt ist, eine Aktion auszuführen.
- [x] ## 10. Audit-Log
Alle wichtigen Aktionen (Login, Statusänderung, Löschen, Benutzeränderungen) müssen protokolliert werden.
---
# PRIORITY 2 USER EXPERIENCE & DASHBOARDS
- [x] ## 11. Rollenbasierte Startseiten
Nach dem Login erhält jeder Benutzer eine andere Startseite abhängig von seiner Rolle.
- [x] ## 12. Lagerkraft-Startseite
Zeigt primär offene Artikel und operative Aufgaben (Tracker).
- [x] ## 13. Service-Startseite
Zeigt Artikel in Bearbeitung, technische Prüfungen und Kommentare (Tracker).
- [x] ## 14. Filialleiter-Dashboard
Zeigt Statistiken und Übersicht über alle Defektfälle der Filiale.
- [x] ## 15. Firmenleiter-Dashboard
Zeigt Gesamtstatistiken über alle Filialen und Unternehmensdaten.
- [ ] ## 16. Automatische Filter je Rolle
Standardfilter werden automatisch gesetzt (z.B. Lager sieht offene Fälle zuerst).
---
# PRIORITY 3 DEFECT MANAGEMENT CORE
- [x] ## 17. Defektfall-System
Das zentrale Objekt der App ist ein Defektfall mit Artikel-, Serien- und Fehlerinformationen (Assets-Collection).
- [x] ## 18. Status-Workflow
Statussystem für Fälle (Offen → In Bearbeitung → Entsorgt).
- [x] ## 19. Prioritätssystem
Fälle erhalten Prioritäten (niedrig, mittel, hoch, kritisch).
- [x] ## 20. Verantwortlichkeits-System
Jeder Defektfall muss einem Mitarbeiter zugewiesen werden (Zuständig-Dropdown aus Appwrite-Benutzern der Filiale).
- [x] ## 21. Kommentar-System
Interne Kommentare und technische Notizen zu jedem Defektfall (Kommentar-Feld, CommentPopup für Anzeige).
- [x] ## 22. Defekt-Historie
Alle Änderungen eines Falls müssen nachvollziehbar gespeichert werden (Audit-Log pro Asset).
---
# PRIORITY 4 SEARCH & FILTERING
- [x] ## 23. Erweiterte Suche
Suche nach ERL-Nummer, Artikelnummer, Seriennummer, Defektbeschreibung.
- [x] ## 24. Statusfilter
Filter für offene, in Bearbeitung befindliche, entsorgte Artikel.
- [x] ## 25. Prioritätsfilter
Filter/Sortierung nach Priorität (kritisch, hoch, mittel, niedrig).
- [x] ## 26. Mitarbeiterfilter
Anzeige der Fälle nach zuständigem Mitarbeiter (Sortierung „Mir zugewiesen“).
---
# PRIORITY 5 STATISTICS & ANALYTICS
- [x] ## 27. Mitarbeiterstatistiken
Eigene offenen, erledigten und überfälligen Fälle (Filialleiter-Dashboard: Mitarbeiter-Performance mit Erledigungsrate).
- [x] ## 28. Filialstatistiken
Übersicht über Defektfälle und Bearbeitungsstatus innerhalb einer Filiale.
- [x] ## 29. Unternehmensstatistiken
Gesamtübersicht aller Filialen mit Vergleich der Leistungskennzahlen (Firmenleiter-Dashboard).
- [ ] ## 30. Bearbeitungszeit-Analyse
Durchschnittliche Dauer vom Anlegen bis zur Lösung eines Defektfalls.
- [ ] ## 31. Häufigste Defekte
Statistik über häufig auftretende Fehlerarten oder Artikelprobleme.
---
# PRIORITY 6 ORGANISATION STRUCTURE
- [x] ## 32. Filial-System
Unterstützung mehrerer Standorte innerhalb eines Unternehmens (locations-Collection, Admin verwaltet Filialen).
- [x] ## 33. Standortzuweisung für Benutzer
Benutzer gehören zu einer bestimmten Filiale (users_meta.locationId).
- [x] ## 34. Standortfilter für Daten
Filialleiter sehen nur Daten ihrer Filiale, Firmenleiter sehen alle Daten.
---
# PRIORITY 7 SYSTEM FEATURES
- [x] ## 35. Export-Funktion
Datenexport für Berichte oder Archivierung (JSON-Export im Header).
- [ ] ## 36. Import-Funktion
Import von Datensätzen für Migration oder Synchronisation.
- [x] ## 37. Druckansicht
Optimierte Druckansicht für Berichte oder Listen (Drucken-Button in der Asset-Tabelle).
- [ ] ## 38. Benachrichtigungen
Systemmeldungen bei kritischen oder überfälligen Defektfällen (Toasts vorhanden, keine gezielten Alerts).
---
# PRIORITY 8 FUTURE FEATURES
- [ ] ## 39. Datei-Uploads
Anhänge wie Fotos von Schäden oder Dokumente zu Defektfällen.
- [x] ## 40. Mobile Optimierung
Optimierte Nutzung für Tablets oder mobile Geräte im Lager (responsive Layout, Sidebar ausgeblendet auf Mobile, Form unten).
- [ ] ## 41. API-Schnittstellen
Möglichkeit zur Integration mit anderen Systemen.
- [ ] ## 42. Automatische Eskalationen
Fälle werden automatisch markiert, wenn sie zu lange unbearbeitet bleiben.
---
# ERGÄNZUNGEN (bereits umgesetzt, nicht im Original-Roadmap)
- [x] **Appwrite-Integration** Auth, Teams, Databases; Collections: locations, users_meta, lagerstandorte, assets, audit_logs.
- [x] **Produkte → Assets** Umbenennung, eigene Collection, Verknüpfung mit Lagerstandort und Location.
- [x] **Lagerstandorte** Pro Filiale mehrere Lagerstandorte, verwaltbar über Button im Dashboard (LagerstandortManager).
- [x] **Asset-Detailseite** Eigene Seite `/asset/:id` mit allen Eigenschaften, Bearbeiten-Modus, Audit-Log (Konsolen-Style).
- [x] **Bearbeiten statt Löschen** Button „Bearbeiten“ öffnet Asset-Detailseite.
- [x] **Header** Standortname neben DefektTrack, Navigation Admin / Filialleiter / Firmenleiter, User-Dropdown mit Logout, Export.
- [x] **Admin: Filialen verwalten** Filialen anlegen, bearbeiten, aktivieren/deaktivieren, löschen.
- [x] **Zuständig-Dropdown** Default eigener Name, Auswahl nur Mitarbeiter der gleichen Filiale (Appwrite).
- [x] **Audit-Log Erfassung** Bei Erstellung: „für sich selbst erfasst“ vs. „von X für Y erfasst“; bei Bearbeitung und Statusänderung.
- [x] **UI-Redesign mit shadcn/ui** Button, Input, Card, Table, Badge, Dialog, Select, Sonner-Toast, einheitliches Design.
- [x] **Header clean/minimal** Heller Header, keine horizontale Scrollbar, User-Dropdown mit DropdownMenuGroup-Fix.
- [x] **Layout: fixe Sidebar links** „Defekte Ware erfassen“ als fixe linke Sidebar (380px), rechts Status-Karten + Asset-Tabelle, kein horizontaler Scroll.
---
# PROJECT GOAL
Ein sicheres, rollenbasiertes System zur Verwaltung defekter Artikel in Lager, Service und Management mit klaren Verantwortlichkeiten, Nachverfolgbarkeit und statistischen Auswertungen.