Commit Graph

149 Commits

Author SHA1 Message Date
ISA
b847b5d2c8 docs: Projektstruktur der Dokumentation an Quellcode angepasst
- Verzeichnisstruktur unter /docs spiegelt nun die tatsächliche Projektstruktur wider
- frontend/server-Trennung entfernt zugunsten von /docs/pages, /docs/redux, /docs/utils etc.
- Erhöht Wiederauffindbarkeit, Übersichtlichkeit und Entwicklerfreundlichkeit
2025-05-27 09:30:40 +02:00
ISA
44cb27ce0f refactor(area): Bereichsaktualisierung von util auf Redux umgestellt
- updateAreaUtil.js entfernt
- updateAreaService, updateAreaThunk, updateAreaSlice eingeführt
- useAreaMarkersLayer nutzt jetzt updateAreaThunk
- MapComponent umgestellt auf Redux-Dispatch
- Version erhöht auf 1.1.182
2025-05-27 07:55:12 +02:00
ISA
b93d474859 delete: /pages/api/mockdata, weil ich habe eine datenbank und TALAS verbindung lokal 2025-05-26 14:28:36 +02:00
ISA
32a85cc30a delete: Dateien in pages/api, weil in Frontend wird benutzt 2025-05-26 14:26:01 +02:00
ISA
cd46401f14 fix(poi): Fehler beim Hinzufügen von POIs behoben (Modal blieb offen)
- Falsche URL im addPoiService korrigiert (/addLocation → /addPoi)
- Redux-Status wird nach erfolgreichem Hinzufügen zurückgesetzt (resetAddPoiStatus)
- Modal schließt jetzt zuverlässig nach dem Dispatch
- Ladeanzeige "Wird hinzugefügt..." verschwindet korrekt
- Version auf 1.1.176 erhöht
2025-05-26 13:52:17 +02:00
ISA
03a1f480e0 refactor 2025-05-26 11:12:45 +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
ee7a8d2e80 refactor: letzte Recoil-States entfernt – selectedPoiState und currentPoiState auf Redux migriert
- Redux-Slices 'selectedPoiSlice' und 'currentPoiSlice' hinzugefügt
- 'PoiUpdateModal.js' verwendet nun useSelector statt Recoil
- Recoil vollständig entfernt, Zustand zentral im Redux Store verwaltet
- CHANGELOG.md auf Version 1.1.91 aktualisiert
2025-05-19 10:05:30 +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
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
b097a76d34 docs+refactor: Proxy [...path].js auf dynamische Ziel-URL umgestellt (v1.1.77)
- entfernt: NEXT_PUBLIC_SERVER_URL aus .env.local
- verwendet jetzt API_PORT_MODE zur Zielermittlung (dev = :80)
- neue technische Dokumentation unter /docs/server/pages/api/apiProxy.md
- CHANGELOG.md und appVersion.js aktualisiert (1.1.77)
2025-05-17 01:10:18 +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
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
c57ae7717a feat: Geräte-Daten aus Redux-Store in POI-Bearbeiten-Modal integriert
- Geräte-Liste wird jetzt direkt aus dem Redux-Store (locationDevicesFromDB) verwendet.
- Dropdown-Menü zeigt alle verfügbaren Geräte aus der Datenbank.
- Beim Öffnen des Modals wird der vorher zugewiesene Gerätname automatisch ausgewählt (Pre-Selection).
- Cleanup und Optimierung: Keine separaten API-Calls mehr im Modal.
- Struktur verbessert durch Auslagerung der Lade-Logik in useInitLocationDevices Hook.
2025-03-07 20:52:00 +01:00
ISA
6e9d278aa3 fix: \pages\api\mockData\webService\GisLinesStatusMock.js hat gefählt 2025-03-07 10:08:32 +01:00
ISA
c6269b75a3 git commit -m "feat: Mock-API über /api/mockData/webService erfolgreich implementiert 🚀
- JSON-Dateien aus /webServiceMockdata als echte API-Mocks verfügbar
- API-Endpunkte unter /api/mockData/webService/ hinzugefügt
- Fehlerhafte Platzhalter in den API-Handlern korrigiert
- Alle Mock-URLs in config.js auf die neuen API-Routen umgestellt
- Tests erfolgreich durchgeführt, Mock-API funktioniert einwandfrei"
2025-03-07 10:01:18 +01:00
ISA
aa218b1c96 GisLines Mock funktioniert 2025-03-07 08:38:34 +01:00
ISA
3a21abd4bb Test Datei entfernt 2025-03-05 09:48:02 +01:00
ISA
e355fdc919 talas5 Verzeichnis gelöscht, weil ich bekomme alles von WebServices und in der Produktionsumgebung läuft Entwicklungsumgebung 2025-03-05 09:28:30 +01:00
ISA
6f1df8db94 merge fix v1.0.8.1 Browser lädt ständig die Seite neu wenn keine Linien existieren 2025-02-12 14:51:17 +01:00
ISA
52e9939eb8 git commit -m "fix: Fehlerbehandlung für fehlende gis_lines-Tabelle und Verwendung des DB-Namens aus .env
- Verhindert Absturz der Anwendung, wenn die gis_lines-Tabelle fehlt
- Gibt stattdessen eine Warnung in der Konsole aus
- Stellt sicher, dass der Datenbankname dynamisch aus der .env-Datei geladen wird"
2025-02-05 13:29:54 +01:00
ISA
f4210a4776 Merge branch 'v1.0.8.1' into fix/ohne-externe-babel 2025-02-05 10:27:36 +01:00
ISA
e03dff4814 Redux: alle Active 1 und 0 speichern 2025-02-03 13:15:59 +01:00
ISA
3fb5e54af7 Redux, idLD speichern nur Aktive Geräte 2025-02-03 08:46:18 +01:00
Ismail Ali
5b2cb762cc fix: Behebt Endlosschleife und doppelte Recoil-Atom-Registrierung
- `index.js` als Client-Komponente deklariert (`"use client"`) zur Vermeidung von SSR-Problemen.
- `useEffect` optimiert, um unendliche API-Requests durch `isMounted`-Check zu verhindern.
- `loadData()` angepasst, um API-Fehler korrekt abzufangen und erneute Ladeversuche zu vermeiden.
- Doppelte Registrierung von `poiReadFromDbTriggerAtom` durch HMR verhindert.
- Ungültige MySQL-Option `acquireTimeout` entfernt, um Verbindungsfehler zu beheben.

Diese Änderungen verhindern unerwartete Reloads und verbessern die Stabilität der Anwendung.
2025-02-02 13:01:04 +01:00
ISA
764f7afea2 dynamische IP für die vorherige Tests 2025-01-04 12:36:52 +01:00
ISA
d7978790e1 feat: Proxy-APIs und Integrationstests für WebServices hinzugefügt
- Vier Proxy-Endpunkte implementiert:
  1. gisStationsStatusDistrict
  2. gisStationsStaticDistrict
  3. gisStationsMeasurements
  4. gisSystemStatic

- API-Integrationstests mit Jest für alle Endpunkte erstellt:
  - Tests verwenden echte API-Responses statt Mock-Daten.
  - Erfolgreiche Anfragen mit gültigen Parametern getestet.
  - Fehlende Parameter und ungültige Parameter getestet.

- Code enthält:
  - Dynamische URL-Generierung für Proxy-Weiterleitungen.
  - Prüfung von Headern, Statuscodes und JSON-Strukturen.
  - Unterstützung für CORS und OPTIONS-Anfragen.

- Ergebnis:
  - Alle Tests erfolgreich bestanden.
  - APIs bereit für produktive Nutzung und Erweiterungen.
2025-01-03 14:02:29 +01:00
ISA
2a1f885190 Nur Kommentar 2025-01-03 06:59:13 +01:00
ISA
a6d7d89f37 Proxy für alle 4 WebServices implementiert 2025-01-03 06:52:27 +01:00
ISA
34c3b65472 feat: API-Proxy für GisSystemStatic hinzugefügt
- Unterstützung für Parameter 'm' (idMap) und 'u' (idUser) zum Abrufen von Systemdaten.
- Dynamische URL-Ermittlung basierend auf Anfrage-Headern (Protokoll, Host).
- Parameter-Validierung mit Fehlerhinweis, falls Werte fehlen.
- Fehlerbehandlung und Debugging-Logs hinzugefügt.
- XML-Daten vom Webservice werden direkt an den Client weitergeleitet.
2025-01-03 06:42:15 +01:00
ISA
3b8e2b11ce feat: API-Proxy für GisStationsStatusDistrict hinzugefügt
- Unterstützung für Parameter 'm' (idMap) und 'u' (idUser) zum Abrufen von Statusdaten.
- Dynamische URL-Ermittlung basierend auf Anfrage-Headern (Protokoll, Host).
- Parameter-Validierung mit Fehlerhinweis, falls Werte fehlen.
- Fehlerbehandlung und Debugging-Logs hinzugefügt.
- XML-Daten vom Webservice werden direkt an den Client weitergeleitet.
2025-01-03 06:39:31 +01:00
ISA
4bd3d4da4d feat: API-Proxy für GisStationsMeasurements hinzugefügt
- Dynamische Unterstützung für Parameter 'm' oder 'idMap' zum Abrufen von Messdaten.
- CORS-Header und OPTIONS-Preflight für Cross-Origin-Anfragen konfiguriert.
- Dynamische Ermittlung von Protokoll und Hostname aus der Anfrage.
- Parameter-Validierung hinzugefügt mit Fehlerhinweis, falls 'm' oder 'idMap' fehlt.
- Fehlerbehandlung verbessert, einschließlich Statuscodes und Debugging-Logs.
- XML-Daten vom Webservice werden direkt an den Client weitergeleitet.
2025-01-02 14:42:54 +01:00
ISA
1625fbff12 feat: Dynamische Server-URL und Parameter für API-Proxy hinzugefügt
- Dynamische Ermittlung von Hostname und Port aus der Anfrage (req.headers.host).
- Unterstützung für URL-Parameter 'm' (idMap) und 'u' (idUser) hinzugefügt.
- Fehlerbehandlung und Logging verbessert.
- CORS-Header und OPTIONS-Preflight für Cross-Origin-Anfragen konfiguriert.
- XML-Daten vom Webservice werden direkt an den Client weitergeleitet.
2025-01-02 14:30:00 +01:00
ISA
20a2abd9b6 feat: API-Proxy für SOAP-Webservice implementiert
- API-Route hinzugefügt: /api/gisStationsStaticDistrict
- Dynamisches Lesen von URL-Parametern (idMap, idUser) aus Anfrage
- SOAP-Anfrage an ASP.NET-Webservice weitergeleitet
- XML-Antwort verarbeitet und zurückgegeben
- CORS-Header und OPTIONS-Preflight für Sicherheit konfiguriert
- Fehlerbehandlung und Debug-Logs integriert
2025-01-02 13:59:18 +01:00
ISA
ee69f85734 icons nur grün da und erstemal statische Farbe mit Level in createAndSetDevice.js 2024-12-28 11:47:47 +01:00
ISA
6f7c60d341 link geändert für prio API 2024-12-27 14:33:42 +01:00
ISA
5483ca83a4 fix: Suchfeld optimiert und alle unnötigen Elemente entfernt
- Container vereinfacht und auf Volle-Breite-Layout umgestellt.
- Überflüssige Elemente im Suchfeld (z.B. Buttons) entfernt.
- Eingabefeld auf maximale Breite erweitert.
- Platzhaltertext auf Deutsch gesetzt.
2024-12-23 14:11:08 +01:00
ISA
35a6d4120b feat: API-Endpunkte für Bereichs-Updates implementiert
- Neuer Endpunkt `updateBereich.js` für die Aktualisierung von Bereichskoordinaten per PUT-Request.
- Utility-Funktion `updateBereichUtil.js` hinzugefügt, um API-Aufrufe für Bereichs-Updates im Frontend zu kapseln.
- Fehler bei der URL in `updateBereichUtil.js` behoben, um sicherzustellen, dass die Koordinaten korrekt aktualisiert werden.
- Verbesserte Fehlerbehandlung und Logging zur Debug-Unterstützung.
2024-12-21 05:49:43 +01:00
ISA
a82a92e89a muss noch für update der Bereich Marker gearbeitet werden 2024-12-20 14:50:30 +01:00
ISA
6155561f14 feat: Dynamische Hostname- und Portunterstützung für API-Aufrufe implementiert
- Hostname dynamisch aus `window.location.hostname` extrahiert
- Port 3000 explizit in der URL ergänzt
- Fehler beim Parsen von JSON behoben (404-HTML-Antwort statt JSON)
- Verbesserte Fehlerprotokollierung und Debugging-Logs in `useBereicheMarkersLayer.js`
- Tooltip-Anzeige für Bereich und Standort optimiert
2024-12-20 14:22:41 +01:00
ISA
bf6048a9a4 Bereich Tooltip Bereich und Standort enthalten 2024-12-20 13:29:49 +01:00
ISA
38b43cbe48 bereich.png erstellt und bei editMode active marker.setZIndexOffset(1000); 2024-12-20 08:10:45 +01:00
ISA
c85b0ee0ba Postfix *Slice.js in slices folder
Gängige Praxis: *Slice.js
Verwendung: Wenn du Redux Toolkit und createSlice nutzt, ist der Postfix Slice gängiger.
Begründung:
createSlice ist ein Begriff aus Redux Toolkit.
Der Name vermittelt, dass die Datei nicht nur den Reducer enthält, sondern auch Aktionen und den initialen Zustand.
Häufig in modernen Projekten verwendet.
2024-12-18 21:12:53 +01:00
ISA
19e0570310 Files copy and paste from store atoms and selector to redux slices folder 2024-12-18 07:29:47 +01:00
ISA
4d1a218b21 WIP: Bereich wird angezeigt, aber da ist noch ein Bug, Talas Marker erscheint trotz Checkbox ausgecheckt 2024-12-17 14:22:45 +01:00
ISA
16c98dba64 feat: Dynamische Basis-URL für NEXT_PUBLIC_BASE_URL implementiert
- Protokoll und Hostname dynamisch über window.location abgeleitet.
- Basis-URL auf /talas5/devices/ angepasst.
- Unterstützt flexible Umgebungskonfiguration (z. B. Entwicklungs- und Produktionsumgebungen).
2024-12-03 08:02:48 +01:00
ISA
d134f1f315 Error: apiService.js:180 Fehler beim Abrufen der Benutzerrechte
WIP: Es soll die Seiten auf DNS-Name erreichbar sein
2024-12-02 15:39:06 +01:00
ISA
d422a505aa delete: unused files/Mock files 2024-12-02 13:48:16 +01:00
ISA
4a9381ae46 fix: Layer-Visibility-Konflikt bei SMS Modem behoben
- Ursache des Problems: Inkonsistenz bei der Benennung des Layers in `useLayerVisibility` ("SMSFunkmodem" vs. "SMSModem").
- Anpassung des Layer-Namens in `useLayerVisibility`, um mit der `GisSystemStatic`-Datenstruktur und `mapLayersVisibility` übereinzustimmen.
- Konflikt führte dazu, dass der SMS Modem-Layer nicht korrekt sichtbar/unsichtbar geschaltet wurde.
- Debugging und Anpassungen führten zur erfolgreichen Behebung des Fehlers.

Dieser Fix stellt sicher, dass die Sichtbarkeit der Marker-Layer konsistent und wie erwartet funktioniert.
2024-11-29 11:10:03 +01:00