From 04ad5b99e64eb19deb37c649031976aafad03292 Mon Sep 17 00:00:00 2001 From: ISA Date: Fri, 16 May 2025 13:12:10 +0200 Subject: [PATCH] =?UTF-8?q?docs+refactor:=20Port-Logik=20und=20URL-Handlin?= =?UTF-8?q?g=20f=C3=BCr=20Webservices=20vereinheitlicht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 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 --- CHANGELOG.md | 17 ++++ changed_files_14.03.2025_14_23.txt | 0 changed_files_14.03.2025_14_23.zip | Bin 22 -> 0 bytes changed_files_14.03.2025_14_26.txt | Bin 116 -> 0 bytes config/appVersion.js | 2 +- .../fetchGisStationsMeasurements.md | 81 ++++++++++++++++++ .../fetchGisStationsMeasurements.js | 11 ++- 7 files changed, 106 insertions(+), 5 deletions(-) delete mode 100644 changed_files_14.03.2025_14_23.txt delete mode 100644 changed_files_14.03.2025_14_23.zip delete mode 100644 changed_files_14.03.2025_14_26.txt create mode 100644 docs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 5ade00af5..b09385965 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,23 @@ Alle bedeutenden Änderungen an diesem Projekt werden in dieser Datei dokumentie --- +## [1.1.70] – 2025-05-17 + +### Changed + +- `fetchGisSystemStatic.js` umgestellt auf zentrale Port-Logik über `NEXT_PUBLIC_API_PORT_MODE` +- `fetchGisStationsMeasurements.js` ebenfalls angepasst mit gleicher URL-/Port-Strategie +- Beide Funktionen lesen `idMap` und `idUser` nun direkt aus der URL (`?m=...&u=...`) + +### Added + +- Neue Dokumentation: + - `docs/frontend/redux/api/fromWebService/fetchGisSystemStatic.md` + - `docs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md` +- Struktur-/Pfadhinweis jeweils am Ende der Markdown-Dateien ergänzt + +--- + ## [1.1.68] – 2025-05-15 ### Changed diff --git a/changed_files_14.03.2025_14_23.txt b/changed_files_14.03.2025_14_23.txt deleted file mode 100644 index e69de29bb..000000000 diff --git a/changed_files_14.03.2025_14_23.zip b/changed_files_14.03.2025_14_23.zip deleted file mode 100644 index 15cb0ecb3e219d1701294bfdf0fe3f5cb5d208e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22 NcmWIWW@Tf*000g10H*)| diff --git a/changed_files_14.03.2025_14_26.txt b/changed_files_14.03.2025_14_26.txt deleted file mode 100644 index a0afb172b775015c5c346219b6e17b6402ff986f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116 zcmezWFPR~qA&()AA(J7UL7yR!p#TWO7*ZLE7>a>nAUQpTEFhbgfs3J(p#&(F1LWxg dRpkR&l|Y;cRFeu8D+bafKve|{0T{9fQvlb07i<6k diff --git a/config/appVersion.js b/config/appVersion.js index d0046b014..9cef17dfe 100644 --- a/config/appVersion.js +++ b/config/appVersion.js @@ -1,2 +1,2 @@ // /config/appVersion -export const APP_VERSION = "1.1.70"; +export const APP_VERSION = "1.1.71"; diff --git a/docs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md b/docs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md new file mode 100644 index 000000000..d6d2579ed --- /dev/null +++ b/docs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md @@ -0,0 +1,81 @@ +# 🌐 fetchGisStationsMeasurements – Geräte-Messwerte abrufen + +## Zweck + +Diese Funktion ruft Messwerte aller Geräte einer Karte ab. +Die Daten werden vom Webservice `GisStationsMeasurements` bereitgestellt. + +--- + +## Webservice-Endpunkt + +``` +GisStationsMeasurements?idMap={idMap}&idUser={idUser} +``` + +--- + +## Besonderheit: Port-Steuerung per Umgebungsvariable + +Die Webservices (z. B. `WebServiceMap.asmx`) laufen **immer auf Port 80** – +auch in der Entwicklungsumgebung. + +Um das zu berücksichtigen, wird der Port über `.env.local` gesteuert: + +```env +NEXT_PUBLIC_API_PORT_MODE=dev +``` + +### Beispiel (aus dem Code): + +```js +const mode = process.env.NEXT_PUBLIC_API_PORT_MODE; + +const apiBaseUrl = + mode === "dev" + ? `${window.location.protocol}//${window.location.hostname}:80/talas5/ClientData/WebServiceMap.asmx` + : `${window.location.origin}/talas5/ClientData/WebServiceMap.asmx`; +``` + +--- + +## Parameter + +| URL-Parameter | Beschreibung | Übergabe durch TALAS.web | +|---------------|--------------|---------------------------| +| `m` | Map-ID | Ja | +| `u` | User-ID | Ja | + +Diese Parameter werden clientseitig aus der URL gelesen: + +```js +const params = new URLSearchParams(window.location.search); +const idMap = params.get("m"); +const idUser = params.get("u"); +``` + +--- + +## Beispiel-Aufruf + +``` +http://10.10.0.13/talas5/MessagesMap/mapTypeC.aspx?m=12&u=484 +``` + +→ ergibt folgenden Webservice-Aufruf: + +``` +http://10.10.0.13/talas5/ClientData/WebServiceMap.asmx/GisStationsMeasurements?idMap=12&idUser=484 +``` + +--- + +## Siehe auch + +- `.env.local` → `NEXT_PUBLIC_API_PORT_MODE` +- `docs/frontend/redux/api/fromWebService/fetchGisSystemStatic.md` +- API-Datei: `/redux/api/fromWebService/fetchGisStationsMeasurements.js` + +--- + +📄 Pfad: `/docs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md` \ No newline at end of file diff --git a/redux/api/fromWebService/fetchGisStationsMeasurements.js b/redux/api/fromWebService/fetchGisStationsMeasurements.js index b74cdcc43..fb0c54d81 100644 --- a/redux/api/fromWebService/fetchGisStationsMeasurements.js +++ b/redux/api/fromWebService/fetchGisStationsMeasurements.js @@ -1,20 +1,23 @@ // /redux/api/fromWebService/fetchGisStationsMeasurements.js export const fetchGisStationsMeasurements = async () => { - const apiBaseUrl = `${window.location.origin}/talas5/ClientData/WebServiceMap.asmx`; + const mode = process.env.NEXT_PUBLIC_API_PORT_MODE; + + const apiBaseUrl = mode === "dev" ? `${window.location.protocol}//${window.location.hostname}:80/talas5/ClientData/WebServiceMap.asmx` : `${window.location.origin}/talas5/ClientData/WebServiceMap.asmx`; + const params = new URLSearchParams(window.location.search); const idMap = params.get("m"); const idUser = params.get("u"); - //console.log("🔍 fetchGisStationsMeasurements - URL:", `${apiBaseUrl}/GisStationsMeasurements?idMap=${idMap}&idUser=${idUser}`); + const url = `${apiBaseUrl}/GisStationsMeasurements?idMap=${idMap}&idUser=${idUser}`; + console.log("🔍 fetchGisStationsMeasurements - URL:", url); - const response = await fetch(`${apiBaseUrl}/GisStationsMeasurements?idMap=${idMap}&idUser=${idUser}`); + const response = await fetch(url); if (!response.ok) { throw new Error("GisStationsMeasurements konnte nicht geladen werden"); } const data = await response.json(); - //console.log("✅ fetchGisStationsMeasurements - Daten:", data); return data; };