- handleSetReference um fetch-Aufruf ergänzt
- Unterscheidung von Entwicklungs- und Produktionsumgebung via NEXT_PUBLIC_API_BASE_URL
- Fehlerbehandlung und Alert bei Erfolg/Misserfolg eingebaut
- Interne Datenkeys wie 'messwert' oder 'messwertMinimum' werden jetzt als 'Messwert', 'Minimum' usw. angezeigt
- Neue Mapping-Tabelle für sprechende Labels in der Legende eingeführt
- Aktuelle Messkurve wird bei Klick auf „Als Referenzkurve setzen“ in localStorage gespeichert
- fetchTDRReferenceCurve lädt zuerst aus localStorage, dann aus Datei/Produktion
- Ermöglicht Setzen und Testen von Referenzkurven in der Entwicklungsumgebung ohne Backend
- Neuen Slice `tdrReferenceChartDataBySlot` eingeführt
- Thunk `fetchReferenceCurveBySlotThunk` erstellt
- Referenzdaten pro Slot in Redux gespeichert
- Zugriff im TDRChart angepasst auf neue Struktur
Die Fehlerstelle (rote Markierung) wurde bisher immer aus dem ersten Eintrag des Slots gelesen.
Jetzt wird die Entfernung (`d`) passend zur ausgewählten Mess-ID (`selectedId`) ermittelt,
sodass jeder TDR-Chart die korrekte Fehlerstelle anzeigt.
- fetchTDMDataBySlotThunk aus ChartSwitcher entfernt
- TDM-Daten werden jetzt gezielt im TDR-Kontext geladen
- Vermeidet Konflikte mit Schleifenmodus und spart Ressourcen
- deviceName wird nun bei fehlendem Wert automatisch im Header nachgeladen
- verhindert leere Anzeige beim Seitenwechsel oder Direktaufruf
- fetchSystemSettingsThunk im Header eingebunden und bei Bedarf ausgeführt
- Problem behoben, dass Module in Produktionsumgebung beim Direktaufruf nicht angezeigt wurden
- fetchKueDataThunk wird nun bei fehlenden kueIso-Daten in kabelueberwachung.tsx aufgerufen
- CGI-Pfad (/CPL?/...) bleibt erhalten für Backend-Platzhalterauflösung via kueData.js
- Alle fetch-Services (TDM, TDR, analoge/digitale Eingänge/Ausgänge, SystemSettings usw.) angepasst,
um `NEXT_PUBLIC_NODE_ENV` zu verwenden.
- Entwicklungsumgebung lädt Daten aus /CPLmockData/...
- Produktionsumgebung verwendet echte Endpunkte mit /CPL?/CPL/...
- .env.production und .env.development korrekt berücksichtigt
- loadWindowVariables, WindowVariablesInitializer und verwandte Dateien bereinigt
- Mockdaten erscheinen nicht mehr versehentlich in Produktionsumgebung
- Alle KÜE-Daten (z. B. kueAlarm1, kueCableBreak, kuePSTmMinus96V etc.) über fetchKueData.ts geladen
- Redux Slice `kueDataSlice.ts` überarbeitet, um alle Werte aus kueData.js korrekt zu speichern
- Komponenten wie `Kue705FO`, `KabelModulStatus` und `Baugruppentraeger` auf Redux umgestellt
- Fehler bei undefined-Variablen durch korrekte Zuweisung aus Redux behoben
- loadWindowVariables.ts wird nicht mehr für KÜE-Daten verwendet
- Dynamisches Laden von kueData.js nur bei Bedarf
- Alle benötigten Variablen wie kueAlarm1, kueCableBreak etc. extrahiert
- Fehleranzeige in KabelModulStatus funktioniert wieder korrekt
- loadWindowVariables.ts für KUE vollständig ersetzt
- Alle Services (ae.js, de.js, da.js, kueData.js, Start.js, System.js, opcua.js) laden ihre Scripte abhängig von der Umgebung
- Vermeidet unnötige globale Script-Ladung über loadWindowVariables.ts
- Reduziert Netzwerklast und verbessert Modularität und Performance
- neue Datei fetchDigitalOutputs.ts liest win_da_state und win_da_bezeichnung aus window
- fetchDigitalOutputsThunk.ts verwendet den Service und befüllt Redux Slice
- entfernt alte Logik aus loadWindowVariables.ts
- verbessert Performance und Struktur, lädt Ausgänge nur bei Bedarf
- Systeminformationen (IP, Subnetz, Gateway, NTP, etc.) werden nun über fetchSystemSettingsThunk geladen
- loadWindowVariables.ts von systemSettings-Logik bereinigt
- Aufruf erfolgt lokal in NetworkInfo.tsx statt global in _app.tsx
- Verbesserte Struktur, reduzierte Netzwerklast, klarere Trennung der Zuständigkeiten
- Thunk `fetchOpcUaSettingsThunk` wird jetzt nur bei Anzeige von NetworkInfo ausgeführt
- Reduzierte Netzwerklast und bessere Trennung von Zuständigkeiten
- Entfernt globalen OPC UA-Aufruf aus _app.tsx
- dashboardSlice in last20MessagesSlice umbenannt
- Redux Store Key von 'dashboard' auf 'last20Messages' geändert
- fetchLast20MessagesThunk angepasst: neuer Action-Name 'last20Messages/fetchLast20Messages'
- Komponente Last20MessagesTable aktualisiert: useSelector verweist jetzt auf state.last20Messages
- Struktur für zukünftige Erweiterung vorbereitet
- Initiale Chart-Daten werden basierend auf ausgewähltem Slot geladen (z. B. slot0.json bis slot31.json).
- Wenn eine Messungs-ID im Dropdown ausgewählt wird, wird die entsprechende Kurve geladen und angezeigt.
- useMemo verwendet, um zwischen initialen und ID-basierten Daten zu unterscheiden.
- allowDataOverflow aktiviert, um letzte X-Achse-Ticks nicht abzuschneiden
- rechtes margin (90px) im ComposedChart hinzugefügt
- X-Achsen-Tick-Intervalle für bessere Lesbarkeit angepasst
- Alle Schleifen- und Isolationswiderstandsdaten werden zentral in loopChart.data gespeichert
- Redux State unterstützt nun strukturierte Speicherung nach mode (DIA0–DIA2) und type (3/4)
- Bestehender Thunk fetchLoopChartDataThunk wurde angepasst zur Wiederverwendung
- Zugriff aus Komponente via loopData["DIAx"][type] möglich
- vonDatum auf „heute minus 30 Tage“ gesetzt (statt festem Datum).
- bisDatum auf heutiges Datum gesetzt.
- Behebt Initialisierungsproblem im DateRangePicker.
- Neues Verzeichnis `tdr-reference-curves` für JSON-Referenzdaten hinzugefügt
- Redux Slice `tdrReferenceChartSlice` erstellt
- Thunk `fetchAllTDRReferenceChartThunk` zum Laden aller Referenzdaten integriert
- Service `fetchAllTDRReferenceChartData` mit Umgebungsunterscheidung (dev/prod)
- Anzeige der Referenzkurve im TDR-Chart mit Tooltip und gestrichelter Linie
- Referenzdaten werden automatisch beim Laden der Seite in Redux geladen