README.md update

This commit is contained in:
Ismail Ali
2025-04-27 14:10:19 +02:00
parent 09f6e2f8a9
commit de5725ae49

140
README.md
View File

@@ -7,14 +7,14 @@ Die Benutzeroberfläche ist modular aufgebaut und ermöglicht Zugriff auf digita
## 📘 Projektübersicht
| Bereich | Beschreibung |
| :--------------- | :----------------------------------------------------- |
| Framework | Next.js (Pages Router) |
| UI | React 18, Tailwind CSS, Iconify Icons, Bootstrap Icons |
| State Management | Redux Toolkit (Slices, Thunks) |
| Diagramme | Chart.js (für Messkurven) |
| Dokumentation | Mermaid.js Diagramme in `/docsForDev/` |
| Mock-Daten | über `/apiMockData/SERVICE/` und über API-Handler |
| Bereich | Beschreibung |
| :--------------- | :-------------------------------------------------- |
| Framework | Next.js (Pages Router) |
| UI | React, Tailwind CSS, Iconify Icons, Bootstrap Icons |
| State Management | Redux Toolkit (Slices, Thunks) |
| Diagramme | Chart.js (für Messkurven) |
| Dokumentation | Mermaid.js Diagramme in `/docsForDev/` |
| Mock-Daten | über `/apiMockData/SERVICE/` und über API-Handler |
---
@@ -22,7 +22,7 @@ Die Benutzeroberfläche ist modular aufgebaut und ermöglicht Zugriff auf digita
### 🔹 **Header**
- Anzeigen von CPL-Gerätenamen
- Anzeigen von CPL-Gerätname
- Abmelden-Button (Admin-Logout)
### 🔹 **Footer**
@@ -43,26 +43,63 @@ Die Benutzeroberfläche ist modular aufgebaut und ermöglicht Zugriff auf digita
- Schleifen- und Isolationsmessung
- TDR-Messung & Referenzkurvenvergleich
- Alarme pro Slot (z.B. Erdschluss, Aderbruch)
- **Modale Einstellungen pro Slot:**
- **KUE Einstellung:** Kabelbezeichnung, Isolationsgrenzwerte, Schleifengrenzwerte, Speicherintervall
- **TDR Einstellung:** Dämpfung, Geschwindigkeit, Triggerwerte, Aktivierung/Deaktivierung der TDR-Funktion
- **Knotenpunkte:** Anzeige von Knotenpunkten, Verbindungen und Leitungslängen
### 🔦 **/einausgaenge**
### 📡 **/digitalInputs** Meldungseingänge
- Digitale Eingänge (132) mit Live-Status
- Digitale Ausgänge (14) mit Schaltfunktion
- Digitale Eingänge (132) mit Live-Statusanzeige
- **Modale Einstellungen pro Eingang:**
- Name ändern
- Invertierung aktivieren/deaktivieren
- Filterzeit setzen
- Gewichtung anpassen
- Zähler aktivieren/deaktivieren
- Speicherung über CGI-Interface oder lokale API
### 📉 **/analogeEingaenge**
### 🔌 **/digitalOutputs** Schaltausgänge
- Tabellenübersicht über analoge Werte
- Live-Trend-Diagramm für Messdaten
- Digitale Ausgänge (14) mit Schaltfunktion (Toggle)
### 📜 **/meldungen**
### 📉 **/analogeEingaenge** Messwertüberwachung
- Tabellenübersicht über alle analogen Eingänge (z.B. Temperatur, Spannung)
- **Modale Einstellungen pro analogen Eingang:**
- Name anzeigen
- Einheit anzeigen
- Faktor und Offset anzeigen
- Gewichtung und Loggerintervall anzeigen
- Live-Trend-Diagramm (Chart.js) der aktuellen Werte
### 📜 **/meldungen** Berichte
- Gesamte Historie aller Systemmeldungen
- Farbcodierung je nach Gewichtung (Info, Warnung, Alarm)
- Datumsauswahl (von/bis) zur Berichtsfilterung
- Pagination zur Navigation durch Berichte
### ⚙️ **/einstellungen**
### ⚙️ **/einstellungen** Systemeinstellungen
- Systemkonfiguration
- OPC UA Benutzerverwaltung, Verschlüsselung, Nodeset-Verwaltung
- **Allgemeine Einstellungen:**
- Geräte-Name ändern
- IP-Adresse, Subnetzmaske und Gateway konfigurieren
- Systemzeit übernehmen
- Admin-Login und Logout (Sicherheitsfunktionen)
- **OPCUA-Einstellungen:**
- OPCUA-Server aktivieren/deaktivieren
- Nodeset-Namen ändern
- Benutzerverwaltung für den OPCUA-Server (Benutzer hinzufügen/löschen)
- **Datenbank-Einstellungen:**
- Gesamte Datenbank löschen
- Konfiguration löschen
- Systemmeldungen löschen
- Logger-Daten (Messwerte) löschen
- **NTP-Einstellungen:**
- Konfiguration von bis zu 3 NTP-Servern
- Zeitzone einstellen
- Aktivierung/Deaktivierung der NTP-Synchronisation
### 🔌 **/system**
@@ -88,6 +125,14 @@ npm run dev
# öffnen unter:
http://localhost:3000
# ---
# Wichtig:
# Am Ende immer ein Build erzeugen, damit das statische Verzeichnis /out erstellt wird
npm run build
# Das Verzeichnis /out wird erzeugt.
# Dieses /out muss per FTP auf das CPL-Gerät (z.B. B:/WEBS/) hochgeladen werden.
```
---
@@ -105,18 +150,55 @@ npm run build
## 📅 Redux-Management
| Slice | Zweck |
| :------------------ | :------------------------------------------------------------ |
| systemVoltTempSlice | Verwaltung von Spannungs-/Temperaturdaten & Historie |
| tdrChartSlice | Verwaltung der TDR-Messkurven |
| loopChartSlice | Verwaltung Schleifen-/Isolationsmessung |
| weitere Slices | für digitale Eingänge, analoge Eingänge, Systemmeldungen etc. |
### Slices (State Management)
### Thunks
| Slice Name | Zweck |
| :--------------------------------- | :---------------------------------------------------- |
| `authSlice` | Authentifizierung und Admin-Login Status |
| `kueChartModeSlice` | Modusumschaltung der KUE-Diagramme |
| `webVersionSlice` | Anzeige der Web-Frontend Version |
| `kabelueberwachungChartSlice` | Visualisierung der Baugruppenträger/Slots |
| `last20MessagesSlice` | Verwaltung der letzten 20 Systemmeldungen |
| `systemSettingsSlice` | Verwaltung der Systemeinstellungen |
| `opcuaSettingsSlice` | Verwaltung von OPC UA Server und Benutzer |
| `digitalOutputsSlice` | Verwaltung der digitalen Ausgänge |
| `digitalInputsSlice` | Verwaltung der digitalen Eingänge |
| `analogeEingaengeSlice` | Verwaltung der analogen Eingänge |
| `brushSlice` | Zoom- und Bereichsauswahl in Charts |
| `tdrChartSlice` | Verwaltung der TDR-Messkurven |
| `tdrReferenceChartSlice` | Verwaltung der TDR-Referenzkurven |
| `loopChartSlice` | Verwaltung der Schleifen-/Isolationsmessung |
| `tdmChartSlice` | Verwaltung von TDM (Multiple TDR) Messungen |
| `tdrDataByIdSlice` | Verwaltung von TDR-Daten über ID |
| `kueDataSlice` | Verwaltung der KUE Slots und Module |
| `selectedChartDataSlice` | Verwaltung selektierter Chart-Daten |
| `tdmSingleChartSlice` | Verwaltung einzelner TDM-Messungen |
| `tdrReferenceChartDataBySlotSlice` | Verwaltung von Referenzdaten pro Slot |
| `loopChartTypeSlice` | Verwaltung der aktuellen Messart (Schleife/Isolation) |
| `systemVoltTempSlice` | Verwaltung der Systemspannungen und Temperaturen |
- `fetchSystemVoltTempThunk.ts`
- `fetchDigitalOutputsThunk.ts`
- `fetchAnalogeEingaengeThunk.ts`
---
### Thunks (Asynchrone API-Abfragen)
| Thunk Name | Zweck |
| :-------------------------------------- | :-------------------------------------- |
| `fetchSystemVoltTempThunk` | Lade Systemspannungen und Temperaturen |
| `fetchDigitalOutputsThunk` | Lade Status der digitalen Ausgänge |
| `fetchDigitalInputsThunk` | Lade Status der digitalen Eingänge |
| `fetchAnalogeEingaengeThunk` | Lade analoge Eingänge |
| `fetchTDRChartDataThunk` | Lade TDR-Messkurve für einen Slot |
| `fetchTDRReferenceChartThunk` | Lade TDR-Referenzkurve |
| `fetchLoopChartDataThunk` | Lade Schleifen- und Isolationsmesswerte |
| `fetchLast20MessagesThunk` | Lade letzte 20 Systemmeldungen |
| `fetchKabelueberwachungChartThunk` | Lade Visualisierungsdaten der Slots |
| `fetchTDMChartThunk` | Lade TDM (Multiple TDR) Messungen |
| `fetchTDRDataByIdThunk` | Lade TDR-Daten anhand einer ID |
| `fetchTdmSingleChartThunk` | Lade Einzel-TDM-Messung |
| `fetchSelectedChartDataThunk` | Lade selektierte Diagrammdaten |
| `fetchTDRReferenceChartDataBySlotThunk` | Lade Referenzkurven pro Slot |
| `fetchSystemSettingsThunk` | Lade Systemeinstellungen |
| `fetchOpcuaSettingsThunk` | Lade OPC UA Einstellungen und Benutzer |
---