Commit Graph

60 Commits

Author SHA1 Message Date
ISA
2d3e070830 feat(api): Zeitraum und Eingang als Pflichtparameter für AnalogInputs-API eingeführt
- API-Handler für /api/cpl/getAnalogInputsHistory überarbeitet
- `zeitraum` (DIA0, DIA1, DIA2) und `eingang` (1–8) sind jetzt Pflichtfelder
- Bei fehlenden oder ungültigen Parametern strukturierte Fehlerantwort mit Beispielen
- Daten werden nun gezielt pro Eingang und Zeitraum geladen (z. B. AE3 + DIA1)
- Bessere Fehlerbehandlung bei nicht vorhandenen Dateien
2025-07-11 11:50:15 +02:00
Ismail Ali
420989dc9f feat: DetailModal um Min/Max/Durchschnitt ergänzt
- Chart zeigt jetzt zusätzlich zu Messwert auch Minimal-, Maximal- und Durchschnittswerte an
- Datenstruktur an Redux angepasst (i, a, g)
- Darstellung entspricht jetzt LoopMeasurementChart
2025-07-10 19:11:38 +02:00
ISA
14bd72756a feat: CGI-kompatiblen CSV-Parser für digitale Eingänge implementiert
- digitaleInputsMockData.json angepasst: CGI-nahe Simulation mit CSV-Strings und Stringwerten
- fetchDigitalInputsService.ts erweitert:
  - CSV-Zeilen werden automatisch in Arrays umgewandelt
  - Labels wie "'DE1','DE2'" werden korrekt aufgeteilt
  - Daten aus 4 CGI-Blöcken zu 32 Eingängen gemappt
- ermöglicht realitätsnahe Tests in Entwicklungsumgebung ohne Produktion
2025-07-09 08:41:50 +02:00
ISA
7797549baa feat: Umstellung von CGI-Daten für analoge Eingänge von JS auf JSON
- CGI-Platzhalter in `analogInputs.json` eingeführt (z. B. <%=AAV01%>)
- Alte JS-Datei ersetzt durch reine JSON-Struktur
- Anpassung des Service-Handlers (`getAnalogInputsHandler.ts`) auf JSON-Parsing
- Reduziert Ladezeit, vereinfacht Code und entfernt unnötige Script-Einbindung
- Mock-Daten weiterhin in `analogInputsMockData.json` für Entwicklungsmodus verfügbar
2025-07-08 14:44:44 +02:00
ISA
4e5eeed9a2 refactor: API-Handler umbenannt zu messages.ts für klare REST-Struktur
- getMessagesAPIHandler.ts in messages.ts umbenannt
- API ist nun unter /api/cpl/messages erreichbar
- Dateiname entspricht Next.js- und REST-Konventionen
2025-07-07 13:40:27 +02:00
ISA
a0e8e47fae feat: APIs erstellt für Systemspannungen 2025-07-03 11:48:52 +02:00
ISA
3e7d702ab7 feat: in System 5 Volt DIA0, DIA1 und DIA2 in dropdown anzeigen 2025-07-03 11:13:39 +02:00
ISA
cee3ee0581 feat: API für Systemspannung +5V erfolgreich implementiert
- API-Handler `getSystemspannung5VplusHandler.ts` erstellt
- JSON-Daten werden aus dem Verzeichnis `mocks/device-cgi-simulator/chartsData/systemspannung5Vplus/` geladen
- unterstützt die Parameter DIA0, DIA1, DIA2 für unterschiedliche Datenfrequenzen
- Fehlerbehandlung bei ungültigen Typen und fehlenden Dateien eingebaut
- API getestet unter `/api/cpl/getSystemspannung5VplusHandler?typ=DIA0`
2025-07-03 10:23:04 +02:00
ISA
a9f6484fb0 fix: Firmware-Update-Button stabilisiert und Flackern entfernt
- useAdminAuth aus KueEinstellung entfernt und einmalig in SettingsModalWrapper ausgelagert
- isAdminLoggedIn als Prop übergeben, um ständige Aktualisierungen zu vermeiden
- Button wird jetzt stabil angezeigt ohne console-Logs oder Intervall-Aufrufe
2025-07-02 12:03:02 +02:00
ISA
1dfa1cc1ba feat: Firmwareupdate für alle KÜ-Module mit Fortschrittsanzeige und Abschlussmeldung
- ProgressModal-Komponente implementiert, die während des Updates angezeigt wird
- Firmwareupdate dauert 5 Minuten (Mock-Simulation)
- Nach Abschluss erscheint automatisch ein Toast-Hinweis
- Verbesserte Benutzerführung durch blockierendes Modal während Update
- Logging in kueFirmwareUpdateLog.json integriert (Mock)
2025-07-01 10:08:33 +02:00
ISA
ecb818e248 fix: hide Firmware update button if admin not loged in 2025-07-01 07:17:40 +02:00
ISA
70f842a392 feat: handleKueFirmwareUpdate 2025-06-30 15:35:09 +02:00
ISA
62de915485 feat: Redux-Integration für Meldungen, Anzeige von 'v' statt 's' in UI 2025-06-30 08:59:48 +02:00
ISA
f9fe285d64 fix: show history digital input 2025-06-27 13:26:17 +02:00
ISA
71c74d8d66 fix es lint ignore 2025-06-27 12:20:19 +02:00
ISA
1f11cf68ac Mock daten 2025-06-27 12:19:28 +02:00
Ismail Ali
b9651a53a9 esLint 2025-06-26 22:56:20 +02:00
Ismail Ali
2d8c51525d feat: Filter für Quelle 2025-06-25 22:49:02 +02:00
ISA
2fcd0755a4 docs: Zusatzfunktionen (Kai, 25.06.2025) in TODO.md ergänzt 2025-06-25 11:42:42 +02:00
Ismail Ali
ff3f418636 feat: digitalOutputs separate jsSimulatedProd mode 2025-06-22 09:46:13 +02:00
Ismail Ali
041bc3e23e feat: jsSimulatedProd-Modus für analoge & digitale Eingänge implementiert
- 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`
2025-06-22 08:42:49 +02:00
ISA
38ee1ae381 chore: rename service/thunk files to follow get/fetch naming convention 2025-06-20 14:07:29 +02:00
ISA
0388512f51 Mocks erstellt für API für Entwicklungsumgebung 2025-06-20 13:41:07 +02:00
ISA
b233694fed fix: digital Inputs Modal 2025-06-20 10:53:22 +02:00
ISA
3cadee04a8 fix: digital Input Modal show values 2025-06-20 07:20:53 +02:00
ISA
7ff1c4aaaf wip digitale Eingänge sind sichtbar aber keine Werte in Modal 2025-06-20 06:50:40 +02:00
Ismail Ali
8d67b08d7f fix: Fehlerhafte RegExp im JS-Mock-Handler korrigiert (getAnalogInputsHandler)
- 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
2025-06-19 21:52:56 +02:00
Ismail Ali
d27b5b1b13 fix: analoge Eingänge Interval in Modal in json 2025-06-19 18:02:52 +02:00
ISA
b804fb88c1 fix: nur 8 analoge Eingänge anzeigen durch api handler 2025-06-19 13:36:17 +02:00
ISA
3a829f2298 analoge eingänge 2025-06-19 12:27:00 +02:00
ISA
887e7b4992 feat: zentrale API für json und jsmock + Diagramm-Doku aktualisiert
- Neue API /api/cpl/getDigitalOutputsHandler.ts implementiert (vereint json + jsmock)
- fetchDigitalOutputsService.ts auf zentrale API umgestellt (weniger Code, klarere Struktur)
- Nur production-Modus lädt weiterhin Skript /CPL?/CPL/SERVICE/digitalOutputs.js
- README_digitalOutputs.md überarbeitet:
  - Diagrammtyp („flowchart“, Datenflussdiagramm) explizit benannt
  - API-Endpunkte konsolidiert dargestellt
- CHANGELOG.md um neue API-Struktur und Dokumentationsänderung ergänzt
2025-06-19 10:48:18 +02:00
ISA
dbb38cc7d8 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
2025-06-19 09:01:49 +02:00
ISA
3e6c973f3b feat: Unterstützung für JSON- und Production-Modus hinzugefügt
- 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
2025-06-18 14:06:23 +02:00
ISA
d7d6a2db30 Mit Alias @ arbeiten für die Pfade 2025-06-18 10:02:11 +02:00
ISA
732c9820b9 feat(analogeEingaenge): Einstellungs-Modal mit Offset, Faktor, Name, Loggerintervall + Speichern in Mock-Datei mit Kommentaren 2025-05-02 10:34:03 +02:00
Ismail Ali
f3bd3ccc78 WIP: update dititale Ausgänge Mock datei 2025-05-01 18:49:19 +02:00
Ismail Ali
cee2780583 feat: gleichzeitige Aktualisierung von TDR-Werten über optimierten API-Handler
- 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
2025-05-01 14:10:53 +02:00
Ismail Ali
823d12fcea fix: Gerätestandort im Header jetzt einzeilig – kein Zeilenumbruch mehr
- whitespace-nowrap verhindert Umbruch
- truncate + max-w beschränkt Länge visuell
- bessere Darstellung auch bei hoher Auflösung
2025-04-30 22:54:12 +02:00
ISA
40777f212b feat(dev): API zum Umschalten der TDR-Aktivierung in Mock-Datei eingebunden
- Neuer Endpunkt: /api/cpl/updateTdrSettingsDataAPIHandler
- Aktualisiert win_tdrActive[slot] in Mockdatei
- Entwicklung vollständig ohne Hardware möglich
2025-04-30 15:05:19 +02:00
ISA
7637606ffd feat(dev): API zum Schreiben von KUE-Mockdaten eingebunden – Entwicklung ohne CPL-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
2025-04-30 12:22:04 +02:00
ISA
38305d410e feat: fetchAnalogInputsHistoryService hinzugefügt zum Laden historischer Messwerte
- 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
2025-04-29 10:28:32 +02:00
Ismail Ali
5c3f91cad2 feat: integriere Systemspannungen und Temperaturen mit Redux Thunk und Slice
- 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
2025-04-27 11:25:54 +02:00
ISA
560a5cfd76 fix: API updateDigitaleEingaenge erweitert – filterzeit, gewichtung, zaehlerAktiv werden jetzt auch gespeichert 2025-04-24 13:26:16 +02:00
ISA
0b63579d56 Digitale Eingänge Update mit Mock daten in der Entwicklungsumgebung 2025-04-24 11:11:04 +02:00
Ismail Ali
3d11db296f feat: API-/UI-Anpassung für MSS1-Parameter zur Entwicklung wie Produktion
- 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
2025-04-23 22:01:08 +02:00
ISA
83ff40f27f feat: Integration von CGI-Interface für dynamische Knotenpunktdaten in Produktionsumgebung
- 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
2025-04-23 09:56:01 +02:00
ISA
cfbc56206c fix: Vergleich und Speicherung von Änderungen im KUE-Modul korrigiert
- 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
2025-04-22 11:59:44 +02:00
Ismail Ali
a300ad9f6b feat(loop): Mock-Backend für Schleifenmessung über ENV-Flag integriert
- 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.
2025-04-17 23:46:28 +02:00
Ismail Ali
ce32d90ee7 feat: TDR-Start mit Mock-Backend über Umgebungsvariable steuerbar gemacht
- .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
2025-04-17 23:39:07 +02:00
Ismail Ali
28775ab63c feat: API zum gezielten Überschreiben einzelner KUE-Mock-Werte erstellt
- nur betroffene window.win_*[slot] Werte werden ersetzt
- gesamte Datei bleibt erhalten
- handleSave übermittelt nur geänderte Felder und Slot
2025-04-16 22:17:56 +02:00