Commit Graph

67 Commits

Author SHA1 Message Date
ISA
7c8a553235 refactoring 2025-05-26 10:11:58 +02:00
ISA
8034e28a45 refactoring 2025-05-26 10:04:08 +02:00
ISA
90db829095 refactoring 2025-05-26 09:14:13 +02:00
ISA
34f460902e refactoring 2025-05-26 09:05:31 +02:00
Ismail Ali
fc6a706769 refactor: POI aktualisieren auf updatePoiThunk + ID aus react-select umgestellt
- Thunk getDeviceIdByNameThunk entfernt
- idLD direkt aus Dropdown gelesen
- updatePoiThunk + updatePoiService vollständig eingebunden
- Fehlerbehandlung in handleSubmit verbessert
- Version erhöht auf 1.1.162
2025-05-24 09:18:34 +02:00
ISA
b69a3efae3 refactor: POI-Löschfunktion über Redux Thunk deletePoiThunk umgesetzt
- fetch("/deletePoi") in PoiUpdateModal entfernt
- deletePoiService + deletePoiThunk eingeführt
- Kein Redux Slice nötig, da kein Status gespeichert wird
- Version auf 1.1.161 erhöht
2025-05-23 14:28:10 +02:00
ISA
0a1c0e5fbe refactor: POI-Daten vollständig in Redux integriert
- useFetchPoiData.js entfernt
- Neue Redux-Slices für POI-Typen und POI-Icons erstellt
- Neue Services und Thunks hinzugefügt
- fetch-Aufrufe durch zentralisierte Redux-Logik ersetzt
- store.js aktualisiert und neue States registriert
2025-05-23 11:14:13 +02:00
ISA
8cb995040d refactor and cleanup 2025-05-23 08:36:38 +02:00
ISA
0a0e63feef cleanup: MapComponent.js 2025-05-22 13:25:30 +02:00
ISA
97ee76c5b5 fix: korrigiere fetchGisLinesStatusService für WebService-Antwort 'Statis'
- ersetzt Zugriff auf json.Lines durch json.Statis
- behebt leeren Redux-State bei Linienstatus
- Daten aus Webservice fließen jetzt korrekt in gisLinesStatusSlice
2025-05-22 11:30:03 +02:00
ISA
230bededa0 Linien werden angezeigt aber noch nicht mit Daten von Redux Store sondern direkt fetch Aufruf 2025-05-21 13:42:00 +02:00
ISA
067eba95b5 feat: priorityConfig vollständig auf Redux umgestellt – Slice, Thunk und Service integriert und zentral ausgelagert 2025-05-21 12:27:36 +02:00
ISA
71a6aeef1c refactor: fetchLocationDevices.js entfernt – Nutzung über Thunk + Service strukturiert neu aufgesetzt 2025-05-21 11:02:40 +02:00
ISA
0b7704935f cleanup: alte GIS-Fetch-Dateien und unnötige Service-Imports entfernt – vollständige Umstellung auf zentrale Thunks abgeschlossen 2025-05-21 10:41:59 +02:00
ISA
86f1c1feb0 cleanup: veraltete GIS-Fetch-Dateien entfernt – Projekt verwendet nur noch zentrale Thunks und Services 2025-05-21 10:04:26 +02:00
ISA
3a30162783 refactor: GIS-Redux-Slices reduziert auf 4 (statt 5) – veraltete Slices und Thunks entfernt, Code bereinigt 2025-05-21 09:57:02 +02:00
Ismail Ali
2b4f6e755b docs: vollständige Redux-Slices und Webservice-APIs dokumentiert (v1.1.100) 2025-05-19 19:28:26 +02:00
ISA
13e176fda8 feat: Recoil vollständig entfernt, Projekt nutzt nur noch Redux
- RecoilRoot aus _app.js entfernt
- recoil aus package.json & package-lock.json gelöscht
- README.md aktualisiert: Redux statt Recoil
- DataSheet.md & Wiki.md angepasst
- Projekt ist jetzt vollständig Recoil-frei
2025-05-19 13:10:11 +02:00
ISA
37c41f71f4 chore: entfernt Standardwerte für mapId/userId in urlParameterSlice (jetzt null statt '10'/'484') 2025-05-19 08:43:14 +02:00
Ismail Ali
651326b532 refactor: Entfernt Recoil-Atoms mapIdState & userIdState – ersetzt durch Redux-Slice urlParameter
- MapComponent.js nutzt jetzt useSelector für mapId/userId
- Übergabe dynamischer Parameter via dispatch(setMapId), dispatch(setUserId)
- Store um urlParameterReducer erweitert
2025-05-18 20:56:11 +02:00
Ismail Ali
947317165c refactor: Recoil-Zustand zoomTriggerState durch Redux zoomTriggerSlice ersetzt
- MapComponent.js nutzt jetzt Redux useSelector für zoomTrigger
- DataSheet.js verwendet dispatch(incrementZoomTrigger())
- Recoil vollständig entfernt und Store zentralisiert
2025-05-18 17:49:48 +02:00
Ismail Ali
20aba9bbac feat: Recoil-State 'selectedAreaState' durch Redux ersetzt
- Redux-Slice 'selectedAreaSlice' erstellt mit set/clear Funktionen
- DataSheet.js verwendet dispatch(setSelectedArea(...)) für Dropdown-Auswahl
- MapComponent.js liest Bereichsauswahl über useSelector aus Redux Store
- Recoil-Importe entfernt, Zustand zentralisiert
2025-05-18 17:21:16 +02:00
Ismail Ali
b6bb533339 feat: Recoil-Atom 'readPoiMarkersStore' durch Redux ersetzt
- Slice 'readPoiMarkersStoreSlice' hinzugefügt mit set/clear Funktionen
- index.js vollständig auf Redux umgestellt: useSelector + dispatch(setPoiMarkers)
- AddPOIModal.js verwendet Redux (Dispatch vorbereitet), Recoil entfernt
- store.js um readPoiMarkersStoreReducer ergänzt
- CHANGELOG.md auf 1.1.85 aktualisiert
2025-05-18 15:49:26 +02:00
Ismail Ali
819639164a feat: Recoil-State polylineEventsDisabledState durch Redux ersetzt
- Migration von Recoil zu Redux abgeschlossen für Polyline-Interaktionsstatus
- `MapComponent.js` verwendet jetzt Redux `useSelector` und `dispatch(setDisabled(...))`
- `initializeMap.js` bekommt Callback-Funktion zur Steuerung des Redux-Status
- Redux-Slice `polylineEventsDisabledSlice.js` mit Actions `setDisabled`, `toggleDisabled` integriert
- Hinweis: `useCreateAndSetDevices.js` verwendet noch `useRecoilState`, muss refaktoriert werden
2025-05-18 11:56:39 +02:00
Ismail Ali
7cbabdbebd feat: Recoil-Atom 'poiReadFromDbTriggerAtom' vollständig durch Redux-Slice ersetzt
- Redux Slice 'poiReadFromDbTriggerSlice' eingeführt mit Trigger-Zähler
- Verwendet in index.js, AddPoiModalWindow.js, AddPOIModal.js und MapComponent.js
- Recoil entfernt und durch useSelector / dispatch(incrementTrigger()) ersetzt
- CHANGELOG.md auf 1.1.83 aktualisiert
2025-05-17 17:33:33 +02:00
Ismail Ali
a0d92cd13f feat: Recoil-Zustand 'poiLayerVisibleState' durch Redux ersetzt
- Recoil-Zugriffe in MapComponent.js, DataSheet.js, useMapComponentState.js entfernt
- Redux Slice poiLayerVisibleSlice eingeführt
- Redux Store konfiguriert
- Zustand 'visible' wird über Redux verwaltet
- CHANGELOG.md auf Version 1.1.82 aktualisiert
2025-05-17 16:01:03 +02:00
Ismail Ali
695ec7a55c Datasheet Markdown 2025-05-17 12:30:45 +02:00
ISA
3d3184caf2 docs+refactor: fetchGisStationsStatusDistrict Port-Logik vereinheitlicht
- zentrale Steuerung über .env.local (`NEXT_PUBLIC_API_PORT_MODE`)
- URL-Parameter m/u werden in idMap/idUser übersetzt
- Webservice-Aufruf korrekt über /GisStationsStatusDistrict aufgebaut
- Doku ergänzt: /docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md
- CHANGELOG.md auf v1.1.73 aktualisiert
2025-05-16 13:48:08 +02:00
ISA
be6638f74c docs+refactor: fetchGisStationsStaticDistrict vereinheitlicht
- zentrale API-Port-Logik über .env.local (`NEXT_PUBLIC_API_PORT_MODE`)
- URL-Parameter m/u aus der URL extrahiert und übergeben
- neue Doku unter /docs/frontend/redux/api/fromWebService/fetchGisStationsStaticDistrict.md
- CHANGELOG.md auf Version 1.1.72 erweitert
2025-05-16 13:37:54 +02:00
ISA
128b8fea5d docs+refactor: fetchGisStationsStatic API-Aufruf vereinheitlicht
- fetchGisStationsStatic.js verwendet jetzt zentrale Port-Logik über .env.local (NEXT_PUBLIC_API_PORT_MODE)
- Map-ID wird direkt aus der URL gelesen (?m=...)
- Fehlerprüfung auf JSON-Antwort eingebaut
- Doku erstellt: /docs/frontend/redux/api/fromWebService/fetchGisStationsStatic.md
- CHANGELOG.md aktualisiert (v1.1.71)
2025-05-16 13:27:48 +02:00
ISA
04ad5b99e6 docs+refactor: Port-Logik und URL-Handling für Webservices vereinheitlicht
- fetchGisSystemStatic und fetchGisStationsMeasurements nutzen jetzt zentrale .env-Steuerung (NEXT_PUBLIC_API_PORT_MODE)
- feste :3000- oder :80-Zugriffe entfernt, dynamisch via hostname aufgebaut
- URL-Parameter m/u aus der Query übernommen
- zwei neue Dokumentationsdateien im Verzeichnis /docs/frontend/redux/api/fromWebService/
- CHANGELOG.md auf Version 1.1.69 aktualisiert
2025-05-16 13:12:10 +02:00
ISA
21205d0981 docs: Webservice fetchGisSystemStatic dokumentiert mit Portlogik und URL-Parameter
- .env-Variable NEXT_PUBLIC_API_PORT_MODE beschrieben
- Beispielaufruf und URL-Mapping ergänzt
- Pfadstruktur /docs/frontend/redux/api/... übernommen
2025-05-16 10:24:04 +02:00
ISA
69830a1185 refactor: API-Port-Variable entfernt, dynamische Port-Nutzung eingeführt
- NEXT_PUBLIC_API_PORT_3000 entfernt
- API-Aufrufe basieren jetzt auf window.location.hostname:3000
- kein Rebuild mehr bei IP-Änderung nötig
- .env.local aufgeräumt
- CHANGELOG.md auf 1.1.68 aktualisiert
2025-05-16 07:37:25 +02:00
ISA
24ee77bd28 fix: Parameter "m" und "u" in Front- und Backend und Parameter idMap und idUser entfernen für Webservices 2025-05-15 12:29:59 +02:00
ISA
0a046974bc docs: Webservice-ID-Parameter über URL statt .env.local (BREAKING CHANGE)
- Entfernt Fallback für idMap und idUser via .env.local
- Anpassung aller fetchGis*-Funktionen zur Nutzung von URL-Parametern
- Dokumentation entsprechend aktualisiert
- CHANGELOG.md hinzugefügt (Version 1.1.65)
2025-05-15 11:16:39 +02:00
ISA
7c67111ccd docs verzeichnis und .env.local in Gitea speichern 2025-05-15 10:47:10 +02:00
ISA
154d310117 fix:gis_Lines error 404 holt leere Array 2025-03-17 12:11:29 +01:00
Ismail Ali
e4851fa53e Checkboxen funktioniert in DataSheet 2025-03-11 21:51:29 +01:00
Ismail Ali
984ce72201 refactor: Recoil durch Redux ersetzt und Fehler behoben
- Entfernt `useRecoilState(mapLayersState)` und durch `useSelector(selectMapLayersState)` ersetzt.
- Alle `setMapLayersVisibility` durch `dispatch(setLayerVisibility(...))` ersetzt.
- LocalStorage-Handling für `mapLayersVisibility` mit Redux umgesetzt.
- Fehler "setMapLayersVisibility is not defined" behoben, indem `dispatch` verwendet wurde.
- Sicherstellung, dass `mapLayersSlice` im Redux-Store registriert ist.
2025-03-11 21:17:12 +01:00
ISA
449d19a728 fix: Duplizierte Kontextmenü-Einträge verhindert und Cleanup hinzugefügt
- Kontextmenü wird jetzt nur einmal hinzugefügt, wenn es noch nicht existiert.
- Vor dem Hinzufügen wird geprüft, ob bereits Einträge existieren, um Duplikate zu vermeiden.
- Kontextmenü wird entfernt, wenn außerhalb geklickt wird, um Speicherlecks zu verhindern.
- Nutzung eines `Set()` für Menü-IDs, um doppelte Einträge sicher zu verhindern.
2025-03-11 16:19:11 +01:00
Ismail Ali
6c7b372291 Seite neu laden wenn die Fehler kommt , aber wird kurz angezeigt 2025-03-10 22:21:36 +01:00
Ismail Ali
cc716eb4e7 contextmenu, manchmal geht manchmal nicht, Timing Problem 2025-03-10 22:01:22 +01:00
ISA
8ab1c53996 fix: Behebt TypeError: Cannot read properties of null (reading 'contextmenu') mit Redux
- Implementiert `store.subscribe()` in `setupPolylines.js`, um das Kontextmenü-Handling über Redux zu steuern.
- Ersetzt `useDispatch()` und `useSelector()` durch `store.dispatch()` und `store.getState()` in einer Nicht-React-Datei.
- Fügt eine `forceClose`-Action in `polylineContextMenuSlice.js` hinzu, um das Kontextmenü synchron mit `setInterval` zu schließen.
- Stellt sicher, dass das Kontextmenü **immer vor Ablauf des 20-Sekunden-Intervalls** geschlossen wird.
- Verhindert doppelte Menüinstanzen und sorgt für ein stabiles Verhalten bei wiederholten Interaktionen.

 Fix für `TypeError: Cannot read properties of null (reading 'contextmenu')`
 **Verhindert Kontextmenü-Fehler beim automatischen Datenupdate**
 **Redux-gesteuerte Menüverwaltung für stabilere Performance**
 **Kein unerwartetes Offenbleiben oder erneutes Rendern des Menüs mehr**
2025-03-10 13:49:11 +01:00
ISA
1298ce3a81 POI hinzufügen auf die Kabelstrecken/Polylines ausgeblendert 2025-03-10 10:02:48 +01:00
Ismail Ali
74dfb354f5 refactor: API-URL in .env.local ausgelagert für zentrale Verwaltung
- `NEXT_PUBLIC_API_PORT_3000` in `.env.local` definiert
- `poiTypesSlice.js` so angepasst, dass die API-URL dynamisch aus `.env.local` geladen wird
- Harte URL entfernt, jetzt konfigurierbar ohne Code-Änderung
- Erfordert Neustart von Next.js, um `.env.local` zu laden
2025-03-09 19:00:17 +01:00
Ismail Ali
58d0f1a8a7 fix: Seite nach POI-Hinzufügen automatisch neu laden
- Problem mit der Icon-Aktualisierung nach dem Hinzufügen eines POI behoben
- Temporäre Lösung: `window.location.reload()` nach `handleSubmit`
- Redux bleibt weiterhin für POI-Typen aktiv, spätere Optimierung ohne Reload geplant
2025-03-09 18:13:43 +01:00
Ismail Ali
806347f0dd feat: Fix Redux-Datenstruktur für GisStationsStaticDistrict und Bereichs-Dropdown
- `GisStationsStaticDistrict` wird jetzt korrekt aus Redux gelesen und verwendet `Points` als Array.
- Fehler `find is not a function` behoben durch Zugriff auf `GisStationsStaticDistrict.Points`.
- Sicherstellung, dass `Points` existiert, bevor darauf zugegriffen wird.
- Konsole-Logs für Debugging hinzugefügt, um leere oder ungültige Daten zu erkennen.
- Bereichsauswahl im Dropdown funktioniert jetzt korrekt und fliegt zur gewählten Station auf der Karte.

 Tested: Dropdown zeigt jetzt die `Area_Name`-Werte und `map.flyTo()` funktioniert korrekt.
2025-03-08 12:10:21 +01:00
Ismail Ali
8399a957b5 feat: API-Requests für GIS-Daten korrigiert und Redux-Integration gefixt
- Fehlerhafte Verwendung von `useRouter()` in `fetchGisStationsStaticDistrict.js` behoben
- `idMap` und `idUser` in allen API-Requests über URL-Parameter gesichert
- Alle API-Endpunkte getestet und sichergestellt, dass sie korrekt JSON-Daten liefern
- Debugging-Logs hinzugefügt und Redux-Fehlermeldungen beseitigt
- Jetzt erhalten alle Redux-Stores (`gisStationsStaticDistrict`, `gisStationsStatusDistrict`, `gisStationsMeasurements`, `gisSystemStatic`) erfolgreich die Daten

 Alle GIS-Daten werden jetzt korrekt in Redux gespeichert
2025-03-08 08:52:44 +01:00
Ismail Ali
28dbf80462 feat: API-URLs dynamisch aus .env.local statt config.js
- Alle API-URLs nutzen jetzt `process.env.NEXT_PUBLIC_API_BASE_URL`
- `fetchGisStationsMeasurements`, `fetchGisStationsStaticDistrict`, `fetchGisStationsStatusDistrict`, `fetchGisSystemStatic` angepasst
- `idMap` und `idUser` werden dynamisch aus URL oder `.env.local` bezogen
- Entfernte `config.js`-Abhängigkeit für API-URLs
- `.env.local` erlaubt jetzt flexible Server-IPs ohne Code-Anpassung
2025-03-08 08:06:07 +01:00
Ismail Ali
53ad8b3402 feat: GisSystemStatic in Redux integriert
- API-Response für GisSystemStatic in Redux Store gespeichert
- Server-IP aus `.env.local` geladen (`NEXT_PUBLIC_API_BASE_URL`)
- `idMap` und `idUser` aus URL-Parametern extrahiert
- fetchGisSystemStatic angepasst für dynamische Werte
- Redux Store aktualisiert und getestet
2025-03-07 23:50:42 +01:00