Commit Graph

56 Commits

Author SHA1 Message Date
Ismail Ali
14ba25bc57 fix: Legendenbeschriftungen im LoopMeasurementChart benutzerfreundlich umbenannt
- 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
2025-03-30 22:16:02 +02:00
ISA
69bcbf519d Mock Dateien für TDM erstellt:
Eine Liste mit den
letzten 100 TDR Messungen des Slots
2025-03-24 10:44:12 +01:00
Ismail Ali
401851de00 fix(chart): Abstand zwischen X-Achsen-Ticks verbessert und letztes Datum sichtbar gemacht
- 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
2025-03-23 21:00:08 +01:00
Ismail Ali
8e482813f8 fix: Dynamische Initialisierung von "vonDatum" und "bisDatum" im Redux-Store
- vonDatum auf „heute minus 30 Tage“ gesetzt (statt festem Datum).
- bisDatum auf heutiges Datum gesetzt.
- Behebt Initialisierungsproblem im DateRangePicker.
2025-03-23 11:14:38 +01:00
ISA
0bdf5b29ea feat: Verbesserung der Slot-Auswahl und Chart-Steuerung
- `selectedSlot` in `kueChartModeSlice.ts` hinzugefügt, um den aktiven Slot zu speichern.
- `handleButtonClick.ts` aktualisiert, damit `selectedSlot` in Redux gesetzt wird.
- `handleOpenChartModal.ts` angepasst, sodass `selectedSlot` beim Öffnen des Modals gesetzt wird.
- `Kue705FO.tsx` nutzt jetzt Redux für die Slot- und Modus-Steuerung (`selectedSlot`, `activeMode`).
- Redux-Logik optimiert: `selectedSlot` wird nun konsistent zwischen `TDRChart.tsx` und `ChartSwitcher.tsx` genutzt.
- Verbesserung der Benutzererfahrung: Nur `onClick` verwendet, `onMouseOver` wegen Performance-Problemen vermieden.

 Jetzt wird der richtige Slot in Redux gespeichert, wenn ein Button oder das Chart-Modal geöffnet wird.
 `TDRChart.tsx` zeigt nur das gewählte Modul an, kein unnötiges Neuladen von Daten.
 Stabile und optimierte Chart-Steuerung ohne ungewollte Änderungen durch Mausbewegungen.
2025-03-20 11:50:14 +01:00
ISA
f957d477c8 feat: CustomTooltip in eigene Komponente ausgelagert
- CustomTooltip in `CustomTooltip.tsx` ausgelagert für bessere Code-Struktur
- `LoopMeasurementChart.tsx` angepasst und `CustomTooltip` importiert
- Verbesserung der Wiederverwendbarkeit und Lesbarkeit des Codes
2025-03-19 07:55:04 +01:00
ISA
49e7d6c6c4 WIP:DatePicker in Messkurven 2025-03-19 07:20:46 +01:00
Ismail Ali
adeda611b1 fix(brush): Brush-Bereich nach Moduswechsel korrekt aktualisiert
- Brush-Start- und Endindex werden jetzt automatisch an die neuen Daten angepasst.
- Verhindert, dass der Brush außerhalb des sichtbaren Bereichs liegt.
- `useEffect` in `LoopMeasurementChart.tsx` sorgt für eine dynamische Anpassung nach Mode-Wechsel.
2025-03-15 11:51:41 +01:00
Ismail Ali
da28d64f8c feat(chart): X-Achsen-Labels optimiert für bessere Lesbarkeit
- Jahreszahl aus der X-Achse entfernt, um die Darstellung kompakter zu machen.
- Datumsformat von `TT.MM.YYYY` auf `TT.MM` geändert.
- Achsenbeschriftung um 25° gedreht (`angle: -25`) für bessere Übersicht.
- `dy: 5` hinzugefügt, um die Abstände der Labels anzupassen.
2025-03-15 11:42:17 +01:00
Ismail Ali
e0379c24a6 feat(ui): Slot-Nummer nach links verschoben und Datumsauswahl horizontal ausgerichtet
- Slot-Nr.-Anzeige nach links im ActionBar verschoben.
- Datum-Labels („Von“ & „Bis“) und Eingabefelder horizontal ausgerichtet.
- Verbesserte UI/UX der Chart-Steuerungskomponenten.
2025-03-14 21:30:21 +01:00
ISA
029ed843d8 fix: Debugging für Brush-Datenbereich hinzugefügt
- `console.log`-Ausgaben für `vonDatum`, `bisDatum` und `formatierteDaten` hinzugefügt
- Fehleranalyse für `startIndex` und `endIndex` in `LoopMeasurementChart.tsx`
- Falls `startIndex` oder `endIndex` nicht gefunden wird, wird die gesamte Datenreihe geloggt
- Vorbereitung für Fallback-Lösung, falls Datum nicht exakt gefunden wird
2025-03-14 12:07:51 +01:00
ISA
8c638acfc7 feat: Dynamische Einheit in Redux für Schleifen- und Isolationswiderstand hinzugefügt
- Redux-Slice erweitert um `unit`-State (kOhm/MOhm)
- `setSelectedSlotType` aktualisiert die Einheit basierend auf der Auswahl
- Dropdown in `LoopChartActionBar.tsx` angepasst, um Einheit zu setzen
- Y-Achse und Tooltip in `LoopMeasurementChart.tsx` zeigen dynamisch die Einheit aus Redux
- Initialwert von `bisDatum` auf das heutige Datum gesetzt
2025-03-14 08:49:28 +01:00
ISA
e426cd6218 fix: Reihenfolge der Legenden-Einträge korrigiert
- `messwert` und `messwertDurchschnitt` erscheinen nun zuerst in der Legende.
- `Legend` bleibt innerhalb des Charts, um `payload` von Recharts zu erhalten.
- Benutzerdefinierte Sortierung mit `content`-Prop für `Legend` implementiert.
2025-03-13 07:51:41 +01:00
ISA
9a0d621143 feat: Chart-Bereich mit Kalender synchronisiert
- Chart-Ansicht wird jetzt basierend auf `vonDatum` und `bisDatum` eingeschränkt.
- `startIndex` und `endIndex` werden aus den Datumswerten berechnet und im Redux-Store aktualisiert.
- `Brush`-Grenzen werden automatisch angepasst, um den sichtbaren Bereich zu begrenzen.
- Sicherstellung, dass `bisDatum` nicht kleiner als `vonDatum` wird.
2025-03-13 07:29:31 +01:00
ISA
8ca3318181 feat: Brush-Achsenbeschriftung auf Datumsformat umgestellt
- TickFormatter für Brush angepasst, sodass anstelle von Unix-Timestamps jetzt das formatierte Datum (TT.MM.JJJJ) angezeigt wird.
- Redux-Brush-Slice um `startDate` und `endDate` erweitert, um die Auswahlbereiche mit Datum statt Indizes zu speichern.
- Brush-Event-Handler (`handleBrushChange`) aktualisiert, sodass Start- und Enddatum beim Verschieben im Redux-Store gespeichert werden.
2025-03-13 07:03:40 +01:00
Ismail Ali
3547177107 WIP: Brush funktioniert in Chart, aber soll Datum in Brush angezeigt 2025-03-12 21:36:04 +01:00
Ismail Ali
a4793594d2 test 2025-03-12 17:36:26 +01:00
ISA
327a101386 Optimierung nach Kai, Einheit entfernt in Chart und DIA0 bis DIA2 von Dropdown entfernt 2025-02-25 15:54:33 +01:00
ISA
9bbf5cd570 feat: LoopMeasurementChart mit X- und Y-Achsen-Pan/Zoom ergänzt, DIA0, DIA1 und DIA2 Linien hinzugefügt
- Pan- und Zoom-Funktion für X- und Y-Achse aktiviert
- Datenreihen für DIA0 (Messwert Aktuell), DIA1 und DIA2 (Messwert Durchschnitt) ergänzt
- Tooltip-Formatierungen verbessert
- Dynamische Skalierung der X-Achse basierend auf dem gewählten Zeitraum implementiert
- Styling-Anpassungen für bessere Lesbarkeit der Linien vorgenommen
2025-02-25 15:09:07 +01:00
ISA
8775e167ad Messkurve für Schleifen etwas optimiert 2025-02-25 13:59:29 +01:00
ISA
ba3b4fcf02 Drei Linien werden angezeigt 2025-02-25 13:14:45 +01:00
ISA
c93afc35fd Zoom und Pan funktionieren in beide Richtungen (xy). 2025-02-25 13:10:22 +01:00
ISA
9424a6cc43 feat: Redux-Integration für Datumsauswahl und Chart-Zoom verbessert
- `DateRangePicker.tsx` angepasst, um `vonDatum` und `bisDatum` direkt in Redux zu aktualisieren
- `LoopMeasurementChart.tsx` verbessert, sodass `vonDatum` und `bisDatum` beim Zoomen mit Mausrad automatisch in Redux gespeichert werden
- Chart.js `onZoom` korrekt implementiert, um Änderungen in der X-Achse sofort zu übernehmen
- Redux-Updates optimiert, um unnötige `dispatch`-Aufrufe zu vermeiden
2025-02-25 11:55:37 +01:00
ISA
cddb5e7a7f fix: Build-Fehler behoben durch Entfernen unnötiger Prop-Weitergabe
- `isFullScreen` wurde in `ChartSwitcher.tsx` nicht mehr als Prop übergeben
- `LoopMeasurementChart.tsx` und `TDRChart.tsx` nutzen Redux-Store direkt
- Build erfolgreich nach Anpassung
2025-02-25 10:11:02 +01:00
ISA
4c55e9e9fa feat: Fullscreen-Zustand mit Redux verwaltet
- `isFullScreen` zum Redux-Slice hinzugefügt
- `ChartSwitcher.tsx` angepasst, um Redux zu nutzen
- `LoopMeasurementChart.tsx` & `TDRChart.tsx` auf Redux umgestellt
- Fullscreen-Zustand bleibt jetzt persistent
2025-02-25 10:00:24 +01:00
ISA
47120c4dea Messkurve für Schleife und TDR auf 90% maximieren 2025-02-25 09:40:15 +01:00
Ismail Ali
c0101b35ab refactor: Umbenennung von 'chartData' in Redux kabelueberwachung Slice zu 'loopMeasurementCurveChartData' für bessere Klarheit
Die Variable 'chartData' wurde in 'loopMeasurementCurveChartData' umbenannt, um den Inhalt und Zweck der Daten klarer zu definieren. Diese Änderung verbessert die Lesbarkeit und Wartbarkeit des Codes, indem sie die Bedeutung der Variablen präziser beschreibt.
2025-02-22 16:32:40 +01:00
ISA
0ea34a9f7b fix: API-URL-Format & dynamische Base-URL für Produktion korrigiert 2025-02-21 15:22:12 +01:00
ISA
4a24cb1518 feat: API-URL für Produktionsumgebung korrigiert und Debug-Logs hinzugefügt
- `getApiUrl` angepasst, um in der Produktionsumgebung die richtige URL  zu verwenden.
- Verbesserte Fehlerbehandlung in `handleFetchData` mit zusätzlichen `console.log`-Ausgaben.
- Setzt `isChartOpen` explizit auf `true`, wenn das Chart geladen wird.
- Dadurch funktioniert das Laden der Daten jetzt auch in der Produktionsumgebung.
2025-02-21 14:33:21 +01:00
ISA
ea2a412593 feat: isChartOpen wird beim Öffnen des Chart-Modals gesetzt
- `setChartOpen(true)` in `handleOpenChartModal` hinzugefügt.
- Redux-Import von `setChartOpen` in `Kue705FO.tsx` sichergestellt.
- Dadurch bleibt `isChartOpen` nicht mehr `false`, wenn das Modal geöffnet wird.
- Status wird nun korrekt aktualisiert, wenn `Messkurve` geklickt wird.
2025-02-21 13:55:39 +01:00
ISA
4a94fc9ce6 fix: Behebt "window is not defined" Fehler und ermöglicht erfolgreichen Build
- Import von `chartjs-plugin-zoom` in `LoopMeasurementChart.tsx` dynamisch in `useEffect` verschoben.
- Stellt sicher, dass `window` nur im Client-Umfeld genutzt wird.
- Erfolgreicher Next.js Production-Build getestet.
2025-02-21 13:23:52 +01:00
ISA
94b40c9b67 feat: Uhrzeit in Chart-Tooltips hinzugefügt
- Tooltip-Format geändert auf `dd.MM.yyyy HH:mm`, um Datum und Uhrzeit anzuzeigen
- X-Achse zeigt weiterhin nur das Datum (`dd.MM.yyyy`), aber Tooltips enthalten auch die Uhrzeit
- Tooltip `callbacks.label` angepasst, um Uhrzeit (`HH:mm`) bei Mouse-Hover zusätzlich anzuzeigen
- Sicherstellung, dass alle Linien (i, a, m, g) die korrekte Uhrzeit im Tooltip anzeigen
2025-02-21 11:56:39 +01:00
ISA
0faf506763 feat: Chart-Status zurücksetzen, wenn das Modal geschlossen wird
- Redux-Slice `kabelueberwachungChartSlice.ts` erweitert, um `isChartOpen` beim Schließen zurückzusetzen
- `ChartSwitcher.tsx` so angepasst, dass `setChartOpen(false)` beim Schließen des Modals (`onClose`) aufgerufen wird
- `handleClose` als zentrale Schließen-Funktion eingeführt, um sowohl das Modal zu schließen als auch den Redux-Status zu aktualisieren
- Sicherstellt, dass `vonDatum` und `bisDatum` beim erneuten Öffnen korrekt aktualisiert werden
2025-02-21 11:18:05 +01:00
ISA
cdf5ca6d6e feat: Automatisches Laden der Chart-Daten bei Dropdown-Wechsel
- Redux-Slice `kabelueberwachungChartSlice.ts` erweitert um `selectedMode` und `selectedSlotType`
- `LoopChartActionBar.tsx` so angepasst, dass Änderungen in den Dropdown-Menüs automatisch `handleFetchData` aufrufen
- `useEffect` hinzugefügt, um Daten beim Wechsel von `selectedMode` oder `selectedSlotType` neu zu laden
- Manuelles Klicken auf den "Daten Laden"-Button ist nun nicht mehr nötig
2025-02-21 10:54:15 +01:00
ISA
7ac29bd3ef Redux Slice merkt vonDatum und bisDatum 2025-02-21 09:34:03 +01:00
ISA
73cba877bc feat: Zoom- und Panning-Funktion für LoopMeasurementChart hinzugefügt
- chartjs-plugin-zoom importiert und in Chart.js registriert
- Zoom per Mausrad und Pinch-Gesten auf Touch-Geräten aktiviert
- Panning (horizontal scrollen) über Dragging hinzugefügt
- Chart-Logik und bestehende Datenverarbeitung beibehalten
2025-02-21 08:24:30 +01:00
ISA
e9bd0856c3 Dezimalstellen in den Tooltips von Chart.js anzeigen 2025-02-21 06:44:22 +01:00
ISA
53b04a72b3 feat: Linienchart ohne gefüllte Bereiche dargestellt
- `fill: false` für alle Datensätze gesetzt, sodass keine Flächen unter den Linien gezeichnet werden
- Diagramm zeigt jetzt nur die Linien für Minimum, Maximum, Mittelwert und Durchschnitt
- Verbesserte Lesbarkeit durch Entfernen der Hintergrundfüllung
2025-02-20 15:28:52 +01:00
ISA
9da7952a87 fix: zweimal Messwert Durchschnitt wird angezeigt , durch else if gelöst 2025-02-20 15:24:36 +01:00
ISA
a98f8297bc Datum und Uhrzeit auf X-Achse im KÜ Chart, aber Bug :Durchschnitt ist zweimal da in DIA1 und DIA2 2025-02-20 15:18:24 +01:00
ISA
8f6a22d0c3 fix: DIA0, DIA1 und DIA2 werden alle drei Linien angezeigt 2025-02-20 15:01:55 +01:00
ISA
1dd4dcc621 bug: DIA0 funktioniert mit 3 Linien aber die andern nicht 2025-02-20 14:26:30 +01:00
ISA
2ad1f943ce Mock daten für DIA0, DIA1 und DIA2 für KÜs-Charts 2025-02-20 13:57:15 +01:00
ISA
ac9b94eb5f feat: Datenquelle auf statische JSON-Dateien in public umgestellt
- 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.
2025-02-20 12:24:42 +01:00
ISA
8ebf3715d0 dropdownmenü für DIA0, DIA1 und DIA2 für KÜs Charts 2025-02-20 11:39:49 +01:00
ISA
cd28e5085c mockChartData inCPLmockData verschoben 2025-02-20 10:37:56 +01:00
Ismail Ali
b1b4837968 pgaes Verzeichnis Struktur verbessert 2025-02-14 18:43:53 +01:00
ISA
0910a36371 fix: Bugs während npm run build, meinstens war type 2025-02-14 12:31:17 +01:00
ISA
7523775edf Implementiere unterschiedliche Datenquellen für Entwicklungs- und Produktionsumgebungen
- Entwicklung: Daten werden aus der Datei `/mockData.json` geladen.
- Produktion: Daten werden von der URL `/CPL?seite.ACP&DIA1=2025;01;01;2025;07;31;2;4` abgerufen.

Dies ermöglicht eine realistische Datenverarbeitung in der Produktion, während in der Entwicklungsumgebung weiterhin mit Mock-Daten gearbeitet wird.
2025-02-14 11:52:41 +01:00
ISA
0d1355457b Schleifenmessung von Mock->Redux 2025-02-14 11:43:17 +01:00