From 3d3184caf25db2c13c8a656ecbad4efc642f0ae0 Mon Sep 17 00:00:00 2001 From: ISA Date: Fri, 16 May 2025 13:48:08 +0200 Subject: [PATCH] docs+refactor: fetchGisStationsStatusDistrict Port-Logik vereinheitlicht MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 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 --- CHANGELOG.md | 16 ++++ config/appVersion.js | 2 +- .../fetchGisStationsStatusDistrict.md | 78 +++++++++++++++++++ .../fetchGisStationsStatusDistrict.js | 11 ++- 4 files changed, 102 insertions(+), 5 deletions(-) create mode 100644 docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md diff --git a/CHANGELOG.md b/CHANGELOG.md index b057ed13a..ae197a811 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,22 @@ Alle bedeutenden Änderungen an diesem Projekt werden in dieser Datei dokumentie --- +## [1.1.73] – 2025-05-17 + +### Changed + +- `fetchGisStationsStatusDistrict.js` vereinheitlicht: + - zentrale API-Port-Logik über `.env.local` (`NEXT_PUBLIC_API_PORT_MODE`) + - URL-Parameter `idMap` und `idUser` werden dynamisch aus `?m=...&u=...` extrahiert + - Webservice-Aufruf wird korrekt über `GisStationsStatusDistrict` aufgebaut + +### Added + +- Dokumentation ergänzt: + - `docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md` + +--- + ## [1.1.72] – 2025-05-17 ### Changed diff --git a/config/appVersion.js b/config/appVersion.js index 4ff988327..12dbf3c7c 100644 --- a/config/appVersion.js +++ b/config/appVersion.js @@ -1,2 +1,2 @@ // /config/appVersion -export const APP_VERSION = "1.1.73"; +export const APP_VERSION = "1.1.74"; diff --git a/docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md b/docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md new file mode 100644 index 000000000..14c4d5fc3 --- /dev/null +++ b/docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md @@ -0,0 +1,78 @@ +# 🌐 fetchGisStationsStatusDistrict – Gerätestatus nach Bezirken abrufen + +## Zweck + +Diese Funktion ruft die aktuellen Statusdaten aller Geräte eines bestimmten Kartenbezirks ab. +Sie basiert auf dem Webservice-Endpunkt `GisStationsStatusDistrict`. + +--- + +## Webservice-Endpunkt + +``` +GisStationsStatusDistrict?idMap={idMap}&idUser={idUser} +``` + +--- + +## Portsteuerung über Umgebungsvariable + +Da die Webservices in allen Umgebungen über Port 80 laufen, +wird der Zugriff über eine Umgebungsvariable in `.env.local` konfiguriert: + +```env +NEXT_PUBLIC_API_PORT_MODE=dev +``` + +### Codebeispiel: + +```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`; +``` + +--- + +## URL-Parameter + +| Parameter | Beschreibung | Übergabe durch TALAS.web | +|-----------|--------------|---------------------------| +| `m` | Map-ID | Ja | +| `u` | User-ID | Ja | + +```js +const params = new URLSearchParams(window.location.search); +const idMap = params.get("m"); +const idUser = params.get("u"); +``` + +--- + +## Beispiel + +``` +http://10.10.0.13/talas5/MessagesMap/mapTypeC.aspx?m=12&u=484 +``` + +→ wird übersetzt zu: + +``` +http://10.10.0.13/talas5/ClientData/WebServiceMap.asmx/GisStationsStatusDistrict?idMap=12&idUser=484 +``` + +--- + +## Siehe auch + +- `.env.local` → `NEXT_PUBLIC_API_PORT_MODE` +- `fetchGisStationsStaticDistrict.js` +- `fetchGisStationsMeasurements.js` +- `fetchGisSystemStatic.js` + +--- + +📄 Pfad: `/docs/frontend/redux/api/fromWebService/fetchGisStationsStatusDistrict.md` \ No newline at end of file diff --git a/redux/api/fromWebService/fetchGisStationsStatusDistrict.js b/redux/api/fromWebService/fetchGisStationsStatusDistrict.js index 7b4024001..1f53ac762 100644 --- a/redux/api/fromWebService/fetchGisStationsStatusDistrict.js +++ b/redux/api/fromWebService/fetchGisStationsStatusDistrict.js @@ -1,20 +1,23 @@ // /redux/api/fromWebService/fetchGisStationsStatusDistrict.js export const fetchGisStationsStatusDistrict = 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("🔍 fetchGisStationsStatusDistrict - URL:", `${apiBaseUrl}/GisStationsStatusDistrict?idMap=${idMap}&idUser=${idUser}`); + const url = `${apiBaseUrl}/GisStationsStatusDistrict?idMap=${idMap}&idUser=${idUser}`; + console.log("🔍 fetchGisStationsStatusDistrict - URL:", url); - const response = await fetch(`${apiBaseUrl}/GisStationsStatusDistrict?idMap=${idMap}&idUser=${idUser}`); + const response = await fetch(url); if (!response.ok) { throw new Error("GisStationsStatusDistrict konnte nicht geladen werden"); } const data = await response.json(); - //console.log("✅ fetchGisStationsStatusDistrict - Daten:", data); return data; };