fix: Geräte-Marker für Systeme ohne Statusdaten anzeigen (z. B. GMA)

- `createAndSetDevices.js` angepasst, sodass Marker auch ohne `statusDistrictData` erzeugt werden.
- Problem behoben, dass Marker wie GMA trotz vorhandener Koordinaten und Sichtbarkeit nicht gezeichnet wurden.
- Sicherheitsprüfung für Statusdaten optional gemacht, um Systems ohne Messdaten darzustellen.
This commit is contained in:
ISA
2025-07-30 11:13:34 +02:00
parent 6d33be56c0
commit 53c670feba
15 changed files with 87 additions and 41 deletions

View File

@@ -9,7 +9,11 @@ import {
} from "@/redux/slices/database/polylines/polylineLayerVisibleSlice";
import { selectGisSystemStatic } from "@/redux/slices/webservice/gisSystemStaticSlice";
import { selectGisStationsStaticDistrict } from "@/redux/slices/webservice/gisStationsStaticDistrictSlice";
import { selectMapLayersState, setLayerVisibility } from "@/redux/slices/mapLayersSlice";
import {
selectMapLayersState,
setLayerVisibility,
setInitialLayers,
} from "@/redux/slices/mapLayersSlice";
import { setVisible } from "@/redux/slices/database/pois/poiLayerVisibleSlice";
import { incrementZoomTrigger } from "@/redux/slices/zoomTriggerSlice";
@@ -122,13 +126,16 @@ function MapLayersControlPanel() {
const initialVisibility = {};
GisSystemStatic.forEach(system => {
const visibility = system.Allow === 1;
initialVisibility[system.SystemName] = visibility;
dispatch(setLayerVisibility({ layer: system.SystemName, visibility }));
const key = `system-${system.IdSystem}`;
initialVisibility[key] = visibility;
dispatch(setLayerVisibility({ layer: key, visibility }));
console.log(
`🎯 Setting ${system.SystemName} visibility to ${visibility} (Allow=${system.Allow})`
);
});
localStorage.setItem("mapLayersVisibility", JSON.stringify(initialVisibility));
console.log("💾 Saved initial mapLayersVisibility to localStorage:", initialVisibility);
}
}
@@ -257,6 +264,16 @@ function MapLayersControlPanel() {
console.log("📌 stationListing aktualisiert:", filteredAreas);
}
}, [GisStationsStaticDistrict, GisSystemStatic]);
//---------------------------
// ✅ Redux mapLayers mit GisSystemStatic initialisieren
useEffect(() => {
if (Array.isArray(GisSystemStatic) && GisSystemStatic.length > 0) {
console.log("🔧 Initializing mapLayers in Redux with GisSystemStatic:", GisSystemStatic);
dispatch(setInitialLayers(GisSystemStatic));
}
}, [GisSystemStatic, dispatch]);
//---------------------------
useEffect(() => {
const next = (GisStationsStaticDistrict.Points || []).map(p => p.Area_Name).join("|");