feat: Digitale Ausgänge vollständig implementiert (Lesen & Schreiben in allen Modi)

- Unterstützung für drei Modi implementiert: json, jsmock und production
- fetchDigitalOutputsService.ts erkennt NEXT_PUBLIC_CPL_MODE und lädt Daten je nach Umgebung
- API-Handler /api/cpl/updateDigitalOutputsHandler verarbeitet POST-Anfragen für json und jsmock
- In production wird Statusänderung per Redirect (window.location.href) an das CPL gesendet
- Redux-Slice für digitale Ausgänge vollständig angebunden
- UI (DigitalOutputsWidget.tsx) zeigt Status und ermöglicht das Umschalten
- Dokumentation als README_digitalOutputs_final.md mit UML-Diagrammen ergänzt
- CHANGELOG.md auf Version 1.6.417 aktualisiert
This commit is contained in:
ISA
2025-06-19 09:01:49 +02:00
parent 1b01f37f90
commit dbb38cc7d8
17 changed files with 401 additions and 64 deletions

View File

@@ -4,6 +4,26 @@ Alle Änderungen und Versionen des CPLv4.0 Frontends chronologisch dokumentiert.
---
## [1.6.417] 2025-06-19
### Feature: Digitale Ausgänge vollständig implementiert (Lesen & Schreiben in 3 Modi)
- Die Schaltausgänge (digitale Ausgänge) sind jetzt in allen Modi vollständig funktionsfähig:
- `json` (lokale Entwicklung mit editierbaren Mock-Daten)
- `jsmock` (Simulation durch JavaScript-Variablen im `window`-Objekt)
- `production` (Platzhalterersetzung über CGI durch das echte CPL-Gerät)
- Die API `/api/cpl/updateDigitalOutputsHandler` verarbeitet POST-Daten je nach Modus:
- In `json`: Speicherung in `digitalOutputsMockData.json`
- In `jsmock`: Live-Änderung in `digitalOutputsMockData.js` per Regex
- In `production`: Statusänderung über Redirect zu `/CPL?digitalOutputs.html&DAS0X=1`
- Die Datei `fetchDigitalOutputsService.ts` erkennt den aktiven Modus und lädt Daten kontextsensitiv
- Alle Werte werden über Redux bereitgestellt, die UI nutzt `useSelector()` zur Anzeige in `DigitalOutputsWidget.tsx`
- Mermaid-Dokumentation zur Architektur im Projekt ergänzt (`README_digitalOutputs_final.md`)
Alle Änderungen und Versionen des CPLv4.0 Frontends chronologisch dokumentiert.
---
## [1.6.407] 2025-06-16
### Feature: Kabelname statt Bezeichnung