Commit Graph

251 Commits

Author SHA1 Message Date
ISA
ca84ac6bb5 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:56 +02:00
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
b091a8d82a refactor: extract Kabelueberwachung logic into KabelueberwachungView for better structure 2025-07-08 13:13:30 +02:00
ISA
454b8bfb8d refactor: move analog inputs logic to AnalogInputsView component
- Verschiebt die gesamte UI-Logik aus pages/analogInputs.tsx in eine eigene Komponente AnalogInputsView.tsx
- pages/analogInputs.tsx dient jetzt nur noch als Router-Einstiegspunkt
- Vereinheitlicht die Struktur wie bei MeldungenView und DashboardView
2025-07-08 11:42:08 +02:00
ISA
48898fcd09 fix: call digitalOutputs from _app.tsx to show immediately without delay 2025-07-08 11:13:25 +02:00
ISA
3af16b4c29 refactor: LoopChartActionBar Dropdowns auf Listbox mit Littwin-Design umgestellt
- selectedMode (DIA0/DIA1/DIA2) ersetzt durch Headless UI Listbox
- selectedSlotType (Schleifen-/Isolationswiderstand) ebenfalls als Listbox
- Einheitliches Dropdown-Design mit MeldungenView und TDRChartActionBar
- Littwin-blue Stil für ausgewählte Optionen integriert
2025-07-08 07:02:27 +02:00
ISA
3d37388173 refactor: LoopChartActionBar Dropdowns auf Listbox mit Littwin-Design umgestellt
- selectedMode (DIA0/DIA1/DIA2) ersetzt durch Headless UI Listbox
- selectedSlotType (Schleifen-/Isolationswiderstand) ebenfalls als Listbox
- Einheitliches Dropdown-Design mit MeldungenView und TDRChartActionBar
- Littwin-blue Stil für ausgewählte Optionen integriert
2025-07-08 07:01:38 +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
ebe72c3ab0 refactor: Seitenkomponenten ausgelagert in View-Komponenten
- meldungen.tsx → MeldungenView.tsx erstellt
  → beinhaltet Filterleiste, Tabellenansicht und Datenabruf
- system.tsx → SystemView.tsx ausgelagert
  → verbessert Lesbarkeit und Trennung von Routing und Inhalt
- View-Suffix verwendet für klare Struktur (Page = Entry, View = Inhalt)
2025-07-07 08:27:19 +02:00
ISA
b1eb3c46a8 feat: Detailansicht auf dynamische Redux-Datenquellen umgestellt
- DetailModal.tsx überarbeitet, um Redux-Daten je nach ausgewähltem Key (+5V, +15V, -15V, -98V, ADC Temp, CPU Temp) anzuzeigen
- Zeitraum-Auswahl (DIA0, DIA1, DIA2) wird berücksichtigt und löst passenden Thunk aus
- Redux-State-Struktur vollständig integriert für Systemspannungen und Temperaturen
- Chart-Anzeige jetzt dynamisch und erweiterbar
2025-07-03 12:24:53 +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
09bc64e771 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: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
e9e929f577 fix: Toast-Benachrichtigungen wiederhergestellt durch Einbindung von ToastContainer
- <ToastContainer /> in _app.tsx hinzugefügt
- react-toastify funktioniert jetzt wie vorgesehen (z. B. Firmware-Update Feedback)
- autoClose-Zeit für bessere Sichtbarkeit ggf. angepasst
2025-07-02 14:24:21 +02:00
ISA
b3c5580538 feat: Auth-Status bei App-Start aus localStorage laden und in Redux speichern
- fetchAuthService erstellt zum Auslesen von isAdminLoggedIn aus localStorage
- getAuthThunks Thunk implementiert zur Initialisierung von authSlice
- authSlice erweitert um setIsAdminLoggedIn Reducer
- dispatch(getAuthThunks()) in _app.tsx integriert für automatische Initialisierung bei App-Start
- Flackern und falscher Admin-Status nach Reload dauerhaft behoben
2025-07-02 13:55:27 +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
cd46f59f7c feat: Redux-Integration für Meldungen, Anzeige von 'v' statt 's' in UI 2025-06-30 09:00:33 +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
ISA
1a6e913b59 fix: fix: einheitliche Höhe für Header/Footer auf Berichte-Seite gesetzt
- Layout von meldungen.tsx angepasst, um Hüpfen und Größenunterschied zu vermeiden
- Container-Höhe auf h-[calc(100vh-13vh-8vh)] angepasst wie auf den anderen Seiten
- Einheitliches Verhalten von Header, Footer und Navigation gewährleistet
2025-06-27 07:41:29 +02:00
ISA
d3a8556b2f refactorring dashboard 2025-06-27 07:23:34 +02:00
ISA
7da872ae07 refactor 2025-06-27 07:12:01 +02:00
ISA
c558b9b826 refactor: rename einausgange to digitalOtputs and digitalInputs 2025-06-27 07:10:34 +02:00
Ismail Ali
b9651a53a9 esLint 2025-06-26 22:56:20 +02:00
ISA
8b3280da0a feat: Tabellenkopf in Berichte-Seite fixiert und Scrollen verbessert
- thead mit sticky top-0 versehen für festen Header beim Scrollen
- vertikales Scrollen durch max-h-[80vh] und overflow-auto aktiviert
- optimiert für Desktop- und Mobilgeräte (iOS, iPad, etc.)
- Pagination entfernt für besseres Nutzererlebnis beim Scrollen
2025-06-26 07:58:59 +02:00
ISA
84e1fbd453 feat: zeige die neuesten 20 Meldungen in Last20MessagesTable
- Daten aus API chronologisch absteigend sortiert (neueste zuerst)
- Anzeige auf die ersten 20 Einträge begrenzt
- Verhalten nun konsistent mit Seite /meldungen
2025-06-26 07:41:53 +02:00
Ismail Ali
2d8c51525d feat: Filter für Quelle 2025-06-25 22:49:02 +02:00
ISA
845c2dd658 Add: SERVICE JSON Files 2025-06-25 15:26:00 +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
Ismail Ali
7740806952 chore: fetch to get in redux thunks files name 2025-06-21 10:15:05 +02:00
Ismail Ali
dd76665848 chore(tsconfig): fix moduleResolution and path aliases for Next.js project 2025-06-21 09:58:16 +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