116 lines
4.6 KiB
Markdown
116 lines
4.6 KiB
Markdown
# **Detaillierte Dokumentation des Admin-Dashboards**
|
|
|
|
In diesem Abschnitt werde ich die Funktionen und Nutzung des Admin-Dashboards genauer beschreiben, einschließlich der verschiedenen Module, Diagramme und deren Zweck.
|
|
|
|
---
|
|
|
|
## **1. Überblick über das Admin-Dashboard**
|
|
|
|
Das Admin-Dashboard ist der zentrale Verwaltungsbereich für Administratoren. Es bietet Funktionen wie die Verwaltung von Druckern, Benutzern und Druckaufträgen sowie detaillierte Statistiken und Analysen.
|
|
|
|
### **1.1. Navigation**
|
|
Das Dashboard enthält ein Sidebar-Menü mit den folgenden Hauptbereichen:
|
|
1. **Dashboard:** Übersicht der wichtigsten Statistiken.
|
|
2. **Benutzer:** Verwaltung von Benutzerkonten.
|
|
3. **Drucker:** Hinzufügen, Bearbeiten und Verwalten von Druckern.
|
|
4. **Druckaufträge:** Einsicht in alle Druckaufträge und deren Status.
|
|
5. **Einstellungen:** Konfiguration der Anwendung.
|
|
6. **Über MYP:** Informationen über das Projekt und den Entwickler.
|
|
|
|
Die Sidebar wird in der Datei `src/app/admin/admin-sidebar.tsx` definiert und dynamisch basierend auf der aktuellen Seite hervorgehoben.
|
|
|
|
---
|
|
|
|
## **2. Funktionen des Admin-Dashboards**
|
|
|
|
### **2.1. Benutzerverwaltung**
|
|
- **Datei:** `src/app/admin/users/page.tsx`
|
|
- **Beschreibung:** Ermöglicht das Anzeigen, Bearbeiten und Löschen von Benutzerkonten.
|
|
- **Funktionen:**
|
|
- Anzeige einer Liste aller registrierten Benutzer.
|
|
- Bearbeiten von Benutzerrollen (z. B. „admin“ oder „user“).
|
|
- Deaktivieren oder Löschen von Benutzerkonten.
|
|
|
|
---
|
|
|
|
### **2.2. Druckerverwaltung**
|
|
- **Datei:** `src/app/admin/printers/page.tsx`
|
|
- **Beschreibung:** Verwaltung der Drucker, einschließlich Hinzufügen, Bearbeiten und Deaktivieren.
|
|
- **Funktionen:**
|
|
- Statusanzeige der Drucker (aktiv/inaktiv).
|
|
- Hinzufügen neuer Drucker mit Namen und Beschreibung.
|
|
- Löschen oder Bearbeiten bestehender Drucker.
|
|
|
|
---
|
|
|
|
### **2.3. Druckaufträge**
|
|
- **Datei:** `src/app/admin/jobs/page.tsx`
|
|
- **Beschreibung:** Übersicht aller Druckaufträge, einschließlich Details wie Startzeit, Dauer und Status.
|
|
- **Funktionen:**
|
|
- Filtern nach Benutzern, Druckern oder Status (abgeschlossen, abgebrochen).
|
|
- Anzeigen von Abbruchgründen und Fehlermeldungen.
|
|
- Sortieren nach Zeit oder Benutzer.
|
|
|
|
---
|
|
|
|
### **2.4. Einstellungen**
|
|
- **Datei:** `src/app/admin/settings/page.tsx`
|
|
- **Beschreibung:** Konfigurationsseite für die Anwendung.
|
|
- **Funktionen:**
|
|
- Ändern von globalen Einstellungen wie Standardzeiten oder Fehlerrichtlinien.
|
|
- Download von Daten (z. B. Export der Druckhistorie).
|
|
|
|
---
|
|
|
|
## **3. Statistiken und Diagramme**
|
|
|
|
Das Admin-Dashboard enthält interaktive Diagramme, die wichtige Statistiken visualisieren. Hier einige der zentralen Diagramme:
|
|
|
|
### **3.1. Abbruchgründe**
|
|
- **Datei:** `src/app/admin/charts/printer-error-chart.tsx`
|
|
- **Beschreibung:** Zeigt die Häufigkeit der Abbruchgründe für Druckaufträge in einem Balkendiagramm.
|
|
- **Nutzen:** Identifiziert häufige Probleme wie Materialmangel oder Düsenverstopfungen.
|
|
|
|
---
|
|
|
|
### **3.2. Fehlerraten**
|
|
- **Datei:** `src/app/admin/charts/printer-error-rate.tsx`
|
|
- **Beschreibung:** Zeigt die prozentuale Fehlerrate für jeden Drucker in einem Balkendiagramm.
|
|
- **Nutzen:** Ermöglicht die Überwachung und Identifizierung von problematischen Druckern.
|
|
|
|
---
|
|
|
|
### **3.3. Druckvolumen**
|
|
- **Datei:** `src/app/admin/charts/printer-volume.tsx`
|
|
- **Beschreibung:** Zeigt das Druckvolumen für heute, diese Woche und diesen Monat.
|
|
- **Nutzen:** Vergleich des Druckeroutputs über verschiedene Zeiträume.
|
|
|
|
---
|
|
|
|
### **3.4. Prognostizierte Nutzung**
|
|
- **Datei:** `src/app/admin/charts/printer-forecast.tsx`
|
|
- **Beschreibung:** Ein Bereichsdiagramm zeigt die erwartete Druckernutzung pro Wochentag.
|
|
- **Nutzen:** Hilft bei der Planung von Wartungsarbeiten oder Ressourcenzuweisungen.
|
|
|
|
---
|
|
|
|
### **3.5. Druckerauslastung**
|
|
- **Datei:** `src/app/admin/charts/printer-utilization.tsx`
|
|
- **Beschreibung:** Zeigt die aktuelle Nutzung eines Druckers in Prozent in einem Kreisdiagramm.
|
|
- **Nutzen:** Überwacht die Auslastung und identifiziert ungenutzte Ressourcen.
|
|
|
|
---
|
|
|
|
## **4. Rollenbasierte Zugriffssteuerung**
|
|
|
|
Das Admin-Dashboard ist nur für Benutzer mit der Rolle „admin“ zugänglich. Nicht berechtigte Benutzer werden auf die Startseite umgeleitet. Die Zugriffssteuerung erfolgt durch folgende Logik:
|
|
- **Datei:** `src/app/admin/layout.tsx`
|
|
- **Funktion:** `validateRequest` prüft die Rolle des aktuellen Benutzers.
|
|
- **Umleitung:** Falls die Rolle unzureichend ist, wird der Benutzer automatisch umgeleitet:
|
|
```typescript
|
|
if (guard(user, IS_NOT, UserRole.ADMIN)) {
|
|
redirect("/");
|
|
}
|
|
```
|
|
|
|
Nächster Schritt: [=> API-Endpunkte und deren Nutzung](./API.md) |