- neuen Modus `jsSimulatedProd` eingeführt für realitätsnahe Simulation auf Basis echter Produktionsdaten
- analoge Eingänge: analogInputsMockData.js eingebunden und dynamisch per Script geladen
- digitale Eingänge: digitalInputsMockData.js eingebunden mit window-Variablen (z. B. win_de_state, win_de_label etc.)
- fetchAnalogInputsService.ts und fetchDigitalInputsService.ts angepasst zur Modusprüfung und Script-Auswertung
- getAnalogInputsHandler.ts und getDigitalInputsHandler.ts geben im jsSimulatedProd-Modus JavaScript-Dateien aus
- .env.development setzt `NEXT_PUBLIC_CPL_MODE=jsSimulatedProd`
- RegExp-Syntaxfehler behoben (unmatched ')') beim Parsen von JS-Mock-Dateien
- Fehlerhafte Klammern in extractArray durch korrektes Muster ersetzt
- API funktioniert jetzt korrekt im JSON- und JS-Mock-Modus
- 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
- API-Handler `updateDigitalOutputsHandler` überarbeitet:
- JSON-Dateien werden jetzt korrekt im gültigen Format gespeichert (`{ key: value }`)
- Schreibzugriff im production-Modus blockiert
- JS-Mock-Struktur vorbereitet (noch nicht aktiv getestet)
- Verzeichnisstruktur vereinheitlicht:
- JSON-Mocks unter `/mocks/api/SERVICE/`
- CGI-Platzhalter unter `/public/CPL/`
- JSMock-Ordner für CPL-Simulation vorbereitet (`/mocks/js-simulator/`)
- README.md um Betriebsmodi erweitert (`NEXT_PUBLIC_CPL_MODE` mit `json`, `jsmock`, `production`)
- `.env`-Dateien angepasst zur besseren Modussteuerung
- API `/updateTdrSettingsDataAPIHandler` überarbeitet, um mehrere Werte in einem POST zu empfangen
- TDR-Dämpfung, Geschwindigkeit und Trigger werden nun in einem Schritt verarbeitet
- atomare Dateibearbeitung mit Bereinigung fehlerhafter Endzeilen (z. B. „12h)“)
- UI-Komponente `TdrEinstellung.tsx` angepasst auf POST mit Updates-Array
- Neuer Endpunkt: /api/cpl/updateTdrSettingsDataAPIHandler
- Aktualisiert win_tdrActive[slot] in Mockdatei
- Entwicklung vollständig ohne Hardware möglich
- Endpunkt /api/cpl/updateKueSettingsDataAPIHandler erstellt
- Änderungen werden direkt in apiMockData/SERVICE/kabelueberwachungMockData.js geschrieben
- Strings werden korrekt in Anführungszeichen gespeichert
- Komma- und Formatierungsfehler im JS-Array beseitigt
- Entwicklungsumgebung kann KUE-Einstellungen ohne Embedded-System testen
- Holt die Messwerte der letzten 24 Stunden für alle 8 analogen Eingänge (AE1–AE8)
- Baut die Abfrage-URLs dynamisch mit DIA0-Schnittstelle der CPL-Webschnittstelle
- Unterstützt Live-Modus über window.location.origin und optional Mock-Daten über API
- Dient als zentrale Datenquelle für die Chart-Darstellung in der Entwicklungsumgebung
- Neues Slice systemVoltTempSlice.ts erstellt für Speicherung von Spannungen und Verlauf
- Thunk fetchSystemVoltTempThunk.ts implementiert für asynchrones Laden der Systemwerte
- Service fetchSystemVoltTempService.ts verwendet API /api/cpl/systemVoltTempAPIHandler
- Mock-Daten in systemVoltTempMockData.js definiert
- system.tsx auf Redux umgestellt: useSelector für Werte und Verlauf, fetch per Thunk
- store.ts angepasst: systemVoltTempSlice hinzugefügt
- Chart.js Darstellung von Spannungen und Temperaturen mit Echtzeit-Update alle 5 Sekunden
- MSS1-Parameter-Parsing in /api/cpl/messages.ts ergänzt
- Filterung nach Datum mit MSS1 exakt wie in der Produktionsumgebung
- meldungen.tsx so angepasst, dass Datumsauswahl in der Entwicklungsumgebung funktioniert
- Standarddatum auf 2025-02-28 gesetzt (Mockdaten verfügbar)
- Konsolenausgaben zum Debuggen ergänzt
- Knotenpunkte.tsx angepasst: <script>-basierte Einbindung von kueDataX.js über CGI-Endpoint (/CPL?/CPL/Service/kueDataKnoten/kueDataX.js)
- Verwendung von window.kueNodeID zur Anzeige der dynamisch geladenen Daten
- Files in Browser DevTools > Sources sichtbar dank echter Script-Einbindung
- Platzhalterlose kueDataX.js-Dateien erstellt und eingebunden
- Produktionsbuild erfolgreich getestet und in /out-Verzeichnis übertragen
- Originalwerte werden jetzt direkt aus window.win_kueXYZ geladen
- Vergleiche in handleSave.ts angepasst für stabile Zahl/String-Auswertung
- Fehlerhafte Meldung „Keine Änderungen vorgenommen“ behoben
- Nur geänderte Werte werden per GET-API gesendet
- NEXT_PUBLIC_USE_MOCK_BACKEND_LOOP_START in .env.development hinzugefügt
- goLoop.ts aktualisiert, um im Mock-Modus die Dummy-API (/api/cpl/loopMessungStartenMockHandler) aufzurufen
- Neuer Mock-Handler loopMessungStartenMockHandler.ts erstellt, der eine simulierte Antwort zurückgibt
Damit können Entwickler die Schleifenmessung lokal testen, ohne echte Hardware.
- .env.development mit NEXT_PUBLIC_USE_MOCK_BACKEND_TDR_START ergänzt
- goTDR.ts überarbeitet: Mock-API oder echtes CGI-Interface je nach Modus
- Verbesserte Flexibilität für Entwicklung ohne reale Hardware
- Änderungen in Dev-Umgebung werden per /api/cpl/updateKueDataAPIHandler gespeichert
- Production weiterhin GET-Request mit Parametern
- Fehlerbehandlung optimiert
- überflüssiger fetch auf /CPL?KTR... in Development entfernt
- Fehler-Alert durch 404-Seite bei Embedded-Link im Dev gefixt
- Referenzkurve wird jetzt in Dev nur lokal gespeichert und per API aktualisiert
- Einheitliches Naming für API-Routen: *APIHandler.ts
- Mock-Daten aus /apiMockData/SERVICE/ werden über API bereitgestellt
- API-Endpoints sofort erkennbar und verständlich
- Projektstruktur deutlich klarer und wartungsfreundlicher
- Start.js (last20Messages) als JS-Mock in /apiMockData/jsMockFiles gespeichert
- de.js (digitale Eingänge) in /apiMockData/SERVICE verlagert
- Beide werden über eigene API-Endpoints bzw. per Script-Tag aus Development-Verzeichnis geladen
- Kein Zugriff mehr über /public notwendig, Verhalten in DEV und PROD identisch
- Neue Route /api/cpl/slotData erstellt
- Lädt Daten aus /public/CPLmockData/kuesChartData/... basierend auf slot, messart und dia
- Optionales Filtern über vonDatum und bisDatum hinzugefügt
- 404-Fehler bei fehlender Datei wird abgefangen
- Fetch-API in `LoopChartActionBar.tsx` angepasst, um Mock-Daten aus `/public/CPLmockData/kuesChartData/` zu laden.
- Mock-Daten als statische JSON-Dateien (`DIA0.json`, `DIA1.json`, `DIA2.json`) hinzugefügt.
- `LoopMeasurementChart.tsx` angepasst, um die Daten aus dem Redux-Store zu verwenden.
- Debugging-Logs entfernt und Fehlerbehandlung für fehlgeschlagene API-Requests verbessert.
Mock-Daten können jetzt ohne API-Server geladen werden.