Commit Graph

301 Commits

Author SHA1 Message Date
ISA
2765d06836 WIP: Meldungen 2025-08-12 12:18:06 +02:00
ISA
b8b5c36a60 Isolatioswiderstand Chart abhängig von dropdown menu select name und nicht von Titel 2025-08-12 12:11:47 +02:00
ISA
31a54deb2d chore(eslint): ignore irregular whitespace in comments (keep rule strict for code) 2025-08-12 11:11:39 +02:00
ISA
71f120aa27 fetchCableData.mjs
Sends Authorization: Basic <base64(user:pass)> with configurable credentials.
Accepts --user and --pass, or env CPL_USER/CPL_PASS; defaults to Littwin/Littwin.
Uses an https.Agent({ rejectUnauthorized: false }) when --insecure is set.
Corrected output folder to cable-monitoring-data.
CLI parser supports both --key=value and --key value (PowerShell friendly).
Quick usage (PowerShell)

All 32 slots, both types (iso=3, rsl=4), all DIA modes, last 30 days:
npm run mocks:cable
Specific date range (e.g., 2025-07-13 to 2025-08-12), all slots and types:
node .\mocks\scripts\fetchCableData.mjs --from 2025-07-13 --to 2025-08-12 --insecure
Only slot 0, Isolationswiderstand, DIA1:
node .\mocks\scripts\fetchCableData.mjs --slots 0 --modes DIA1 --types iso --from 2025-07-13 --to 2025-08-12 --insecure
Provide credentials explicitly:
node .\mocks\scripts\fetchCableData.mjs --user Littwin --pass Littwin --insecure
Or via environment variables for the session:
$env:CPL_USER = "Littwin"; $env:CPL_PASS = "Littwin"
node .\mocks\scripts\fetchCableData.mjs --insecure
Output structure

mocks/device-cgi-simulator/cable-monitoring-data/slot{0..31}/
isolationswiderstand/DIA0.json, DIA1.json, DIA2.json
schleifenwiderstand/DIA0.json, DIA1.json, DIA2.json
I smoke-tested slot 0, DIA1, iso with login and it produced DIA1.json under slot0/isolationswiderstand. If you need me to also add a convenience npm script with user/pass placeholders, say the credentials source you prefer (env vs args), and I’ll wire it.
2025-08-12 10:50:08 +02:00
ISA
77c939697c loop DatePicke 2025-08-12 09:58:44 +02:00
ISA
234608973e feat(iso): DateRangePicker-Zeitraum bei "Daten laden" anwenden und fix debug für build 2025-08-12 09:35:19 +02:00
ISA
8af8e14878 feat(iso): DateRangePicker-Zeitraum bei "Daten laden" anwenden 2025-08-12 09:33:25 +02:00
ISA
e4b56faf75 feat: RSL starten in Dev mode 15 Sek. und in prod. 120 Sek. 2025-08-12 08:25:22 +02:00
ISA
100dab06ed PlayWright Test 2025-08-12 08:03:35 +02:00
ISA
e7d120c477 RSL-Progress (120s Overlay mit Balken + Blockierung) ist implementiert: Button zeigt RSL läuft…, Daten laden ist gesperrt, Overlay mit Restsekunden und Fortschritt. Countdown endet automatisch. 2025-08-11 16:45:56 +02:00
ISA
2bf02af96f Globales Auto-Highlight wurde eingefügt 2025-08-11 16:20:11 +02:00
ISA
9ca5ee9e66 playwright recording and testing 2025-08-11 16:13:01 +02:00
ISA
bc20f3869d ISO, RSL, TDR, und KVZ Modal nach Wünsch angepasst für KÜs 2025-08-11 14:24:03 +02:00
ISA
06aa3c8f3e ISO & RSL dropdowns moved to headers like TDR; removed old dropdowns from action bars, cleaned imports, fixed TypeScript issues 2025-08-11 13:35:14 +02:00
ISA
8d1b5ceddc LoopChartActionBar verhält sich jetzt wie im ISO-Modal: Bei Auswahl „Meldungen“ 2025-08-11 13:08:34 +02:00
ISA
806eaaeff7 Daten von 118. in mocks geholt 2025-08-11 12:07:47 +02:00
ISA
c107738625 fix: KVZ Button style wie die anderen (ISO, RSL, TDR) und mit eigene Modal 2025-08-11 11:35:03 +02:00
ISA
9b05f21ccc feat: migrate from Cypress to Playwright for E2E testing
- Remove Cypress dependencies and configuration files
- Install @playwright/test with browser support
- Add playwright.config.ts with optimized settings for Next.js
- Migrate existing Cypress tests to Playwright format
- Add new E2E test scripts to package.json
- Configure GitHub Actions workflow for automated testing
- Update .gitignore for Playwright artifacts

BREAKING CHANGE: E2E testing framework changed from Cypress to Playwright
2025-08-01 15:45:59 +02:00
ISA
3b61dcb31b git commit -m "feat: Enhance DetailModal with auto-loading and improved UX
- Add automatic data loading every 2 seconds when no chart data available
- Implement intelligent cursor-wait display for entire modal during loading
- Auto-reset to 'Alle Messwerte' (DIA0) and clear date fields on modal open
- Add Tailwind-based color system for chart lines (gray for min/max, littwin-blue for current/average)
- Improve chart line layering with background/foreground organization
- Add periodic UI updates to ensure responsive loading feedback
- Maintain manual 'Daten laden' button control alongside auto-loading
- Fix TypeScript dependencies and optimize useEffect performance"
2025-08-01 14:05:58 +02:00
ISA
f8bfea039c fix: System ->Detailansicht -> Modal 2025-08-01 13:46:33 +02:00
ISA
136d3151cf fix: Chart System 2025-08-01 13:10:32 +02:00
ISA
ba1b0d8e79 fix: nur Daten abrufen, wenn 'Daten laden' button geklickt wird 2025-08-01 12:23:10 +02:00
ISA
0b7542488e fix: link in console 2025-08-01 12:10:12 +02:00
ISA
3098ce67f0 fix: richtige Link in system fetch service 2025-08-01 11:30:11 +02:00
ISA
0a20f91ba6 feat: fetchSystemData.mjs erweitert und optimiert
Analoge Eingänge und Systemdaten werden jetzt gemeinsam abgerufen und gespeichert
Einheitliche Benennung (input statt eingang) für analoge Eingänge
Datumssplittung als Hilfsfunktion ausgelagert
Kommentare und Beschreibung verbessert
2025-08-01 10:25:05 +02:00
ISA
975d3b726f refactor: mMeldungen angepasst 2025-08-01 09:44:30 +02:00
ISA
423c87ca11 feat: Script zum Abrufen und Speichern von CPL-Meldungen als Mockdaten hinzugefügt 2025-08-01 08:27:45 +02:00
ISA
c1ed09a21d style: apply littwin-blue color to NTP settings checkbox
- Add accent-littwin-blue class to NTP active checkbox
- Increase checkbox size to w-4 h-4 for better visibility
- Maintain consistent brand coloring across UI components
2025-07-31 16:31:16 +02:00
ISA
4fe64382f3 feat: hide logout button when admin is not logged in
- Add conditional rendering for "Abmelden" button based on isAdminLoggedIn state
- Button only appears when localStorage contains "isAdminLoggedIn": "true"
- Improves UI cleanliness by hiding unnecessary logout option for regular users
- Maintains existing admin warning banner and logout functionality when needed
2025-07-31 16:26:25 +02:00
ISA
e86de5cefe feat: implement modal chart system with conditional UI and message filtering
- Add automatic data loading on IsoChartView modal open with timeout to prevent infinite loops
- Implement conditional UI visibility in IsoChartActionBar using CSS visibility property
- Create stable layout where controls reserve space when hidden (DatePicker, DIA dropdown, "Daten laden" button)
- Add Report.tsx component with precise CableLine filtering using exact string matching
- Enhance message filtering with debug logging and fallback identifier support
- Integrate chartTitle state management for seamless switching between "Messkurve" and "Meldungen"
- Add useIsoDataLoader hook for automatic chart data loading without user interaction
- Implement enhanced filtering logic to prevent false matches (CableLine1 vs CableLine16)
- Style Report component with consistent table layout matching MeldungenView design
- Add visual filter indicators and improved error messaging for better UX

Technical improvements:
- Replace conditional rendering with visibility control to maintain layout stability
- Add comprehensive logging for debugging message source filtering
- Implement proper cleanup for timeouts to prevent memory leaks
- Use exact string matching and prefix validation for precise slot identification
2025-07-31 16:02:04 +02:00
ISA
63e1b85a44 feat: Meldungen in in Iso Chart 2025-07-31 15:57:50 +02:00
ISA
cdd26931a1 feat: implement chart modal with report functionality for cable monitoring
- Add chartTitle state management to kabelueberwachungChartSlice with "Messkurve"/"Meldungen" options
- Update IsoChartActionBar dropdown to show current chartTitle value with proper binding
- Implement conditional rendering in IsoChartView between IsoMeasurementChart and Report components
- Create Report.tsx component using same data structure as MeldungenView (Meldung type)
- Add slot-based message filtering for specific cable monitoring units (KÜ)
- Integrate getMessagesThunk for consistent data loading across components
- Style Report component with consistent table layout, German date formatting, and Littwin branding
- Enable seamless switching between measurement chart and filtered messages in modal
2025-07-31 15:25:46 +02:00
ISA
638b7bf519 feat: TDR --> Messkurven TDR anzeigen und dort Schalter Messung aktivieren 2025-07-31 14:45:40 +02:00
ISA
46ba692af0 feat: KVZ JSON Daten für mock auf CPL hochgeladen und getestet 2025-07-31 14:32:52 +02:00
ISA
90b9616d50 style: KVZ LEDs style 2025-07-31 14:11:24 +02:00
ISA
85860ae9f0 style: LEDs style 2025-07-31 13:54:56 +02:00
ISA
421e1f5425 feat: KVZ API JSON Data 2025-07-31 13:44:30 +02:00
ISA
97eb40e1c6 Feat: KVz Bereich in EinstellungsModal in KÜs Modal 2025-07-31 10:42:06 +02:00
ISA
b68eb10ad4 feat: TDR starten Button in KÜ Chart 2025-07-31 10:13:33 +02:00
ISA
86b35e9925 fix: Schleifenwiderstand (TDR) Messung starten Button auf der Produktion 2025-07-31 09:54:22 +02:00
ISA
ad6642b5e7 feat: Display und Chart für KÜs 2025-07-31 09:37:34 +02:00
ISA
e76c8d9bd2 feat; in KÜ Chart RSL und ISO start button 2025-07-28 14:36:03 +02:00
ISA
d4335960bf deat: KVz anzeigen 2025-07-28 14:28:11 +02:00
ISA
9457233c7d fix: Chart Titel Isolationsmessung zu schleifenmessung 2025-07-28 13:58:14 +02:00
ISA
9a8a0501a5 cleanup: Kue705FO 2025-07-28 13:47:21 +02:00
ISA
ce1dacda9b feat: ISO, RSL und TDR separate Charts ohne den Switcher 2025-07-28 13:39:46 +02:00
ISA
7a9fbc97dd fix: KÜ slotnummer in der Messkurven Modal 2025-07-28 08:29:48 +02:00
ISA
f79c225b71 fix(Kue705FO): maintain consistent 3-line display layout
- Keep alarm status line with empty space when no alarm is present
- Use non-breaking space (\u00A0) to preserve line height and layout
- Remove green "Status: OK" text for cleaner display
- Ensure consistent 3-line structure: Alarm/Empty, ISO, RSL
2025-07-25 13:45:16 +02:00
ISA
afdcb6b92f refactor(Kue705FO): integrate chart functionality into detail view buttons
- Remove separate TDR/Schleife Messkurve buttons section
- Add direct chart opening to ISO, RSL, and TDR buttons in detail view
- ISO and RSL buttons now open Schleife chart with proper state setup
- TDR button opens TDR chart with distance calculation
- Remove unused button container but keep structure for future use
- Clean up unused imports and variables needed
2025-07-25 11:56:46 +02:00
ISA
4af7836a54 feat(Kue705FO): replace switch buttons with direct chart access buttons
- Remove Schleife/TDR switch buttons and separate Messkurve button
- Add "TDR Messkurve" and "Schleife Messkurve" buttons for direct chart access
- Each button opens the corresponding chart type directly
- Improve user experience by reducing clicks needed to access specific charts
- Clean up unused imports (handleButtonClick, tdrLocation, tdrActive)
2025-07-25 11:47:38 +02:00