Erweiterte Suchfunktion in Dropdownmenü für selectedArea über alle Layergruppen hinweg
This commit is contained in:
@@ -72,13 +72,20 @@ function DataSheet() {
|
|||||||
);
|
);
|
||||||
}, [GisStationsStaticDistrict, GisSystemStatic]);
|
}, [GisStationsStaticDistrict, GisSystemStatic]);
|
||||||
|
|
||||||
const handleCheckboxChange = (name, event) => {
|
const handleCheckboxChange = (name, event) => {
|
||||||
const { checked } = event.target;
|
const { checked } = event.target;
|
||||||
setMapLayersVisibility((prev) => ({
|
//console.log(`Checkbox ${name} checked state:`, checked); // Log the checked state of the checkbox
|
||||||
|
|
||||||
|
setMapLayersVisibility((prev) => {
|
||||||
|
const newState = {
|
||||||
...prev,
|
...prev,
|
||||||
[name]: checked,
|
[name]: checked,
|
||||||
}));
|
};
|
||||||
};
|
//console.log(`New mapLayersVisibility state:`, newState); // Log the new state after update
|
||||||
|
return newState;
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
|
|||||||
@@ -335,6 +335,7 @@ const MapComponent = ({ locations, onLocationUpdate }) => {
|
|||||||
|
|
||||||
const zoomIn = (e) => {
|
const zoomIn = (e) => {
|
||||||
initMap.flyTo(e.latlng, 12);
|
initMap.flyTo(e.latlng, 12);
|
||||||
|
console.log("ZoomIn koordinaten in MapComponent", e.latlng);
|
||||||
};
|
};
|
||||||
|
|
||||||
const zoomOut = (e) => {
|
const zoomOut = (e) => {
|
||||||
@@ -1458,22 +1459,45 @@ const MapComponent = ({ locations, onLocationUpdate }) => {
|
|||||||
//------------------------------------------ */
|
//------------------------------------------ */
|
||||||
const selectedArea = useRecoilValue(selectedAreaState);
|
const selectedArea = useRecoilValue(selectedAreaState);
|
||||||
|
|
||||||
useEffect(() => {
|
// Combine all markers into a single array
|
||||||
if (selectedArea && map) {
|
const allMarkers = [
|
||||||
// Angenommen, jeder Marker hat eine option `areaName`, die beim Erstellen gesetzt wurde.
|
...talasMarkers,
|
||||||
const marker = talasMarkers.find(
|
...eciMarkers,
|
||||||
(marker) => marker.options.areaName === selectedArea
|
...gsmModemMarkers,
|
||||||
);
|
...ciscoRouterMarkers,
|
||||||
if (marker) {
|
...wagoMarkers,
|
||||||
map.flyTo(marker.getLatLng(), 14); // Zoomstufe anpassen nach Bedarf
|
...siemensMarkers,
|
||||||
}
|
...otdrMarkers,
|
||||||
}
|
...wdmMarkers,
|
||||||
}, [selectedArea, map]); // Abhängigkeiten beinhalten selectedArea und map
|
...gmaMarkers,
|
||||||
|
...messstellenMarkers,
|
||||||
|
...talasiclMarkers,
|
||||||
|
...dauzMarkers,
|
||||||
|
...smsfunkmodemMarkers,
|
||||||
|
...sonstigeMarkers,
|
||||||
|
...ulafMarkers,
|
||||||
|
];
|
||||||
|
|
||||||
const findMyMarker = (areaName) => {
|
// Function to find a marker by areaName across all groups
|
||||||
|
const findMyMarker = (areaName) => {
|
||||||
|
return allMarkers.find((marker) => marker.options.areaName === areaName);
|
||||||
|
};
|
||||||
|
|
||||||
|
// Effect to handle navigation to selected area
|
||||||
|
useEffect(() => {
|
||||||
|
if (selectedArea && map) {
|
||||||
|
const marker = findMyMarker(selectedArea);
|
||||||
|
if (marker) {
|
||||||
|
map.flyTo(marker.getLatLng(), 14); // Adjust zoom level as needed
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, [selectedArea, map, allMarkers]); // Include allMarkers in the dependencies
|
||||||
|
|
||||||
|
|
||||||
|
/* const findMyMarker = (areaName) => {
|
||||||
// Angenommen, jeder Marker hat eine option `areaName`, die beim Erstellen gesetzt wurde.
|
// Angenommen, jeder Marker hat eine option `areaName`, die beim Erstellen gesetzt wurde.
|
||||||
return talasMarkers.find((marker) => marker.options.areaName === areaName);
|
return talasMarkers.find((marker) => marker.options.areaName === areaName);
|
||||||
};
|
}; */
|
||||||
|
|
||||||
//------------------------------------------
|
//------------------------------------------
|
||||||
|
|
||||||
|
|||||||
@@ -31,17 +31,17 @@ if (typeof window !== "undefined") {
|
|||||||
user = url.searchParams.get("u") || "484"; // Ein weiterer Parameter aus der URL, Standardwert ist '484 admin zu testen von Stationen ausblenden und einblenden in der Card'
|
user = url.searchParams.get("u") || "484"; // Ein weiterer Parameter aus der URL, Standardwert ist '484 admin zu testen von Stationen ausblenden und einblenden in der Card'
|
||||||
|
|
||||||
// Konstruktion von URLs, die auf spezifische Ressourcen auf dem Server zeigen
|
// Konstruktion von URLs, die auf spezifische Ressourcen auf dem Server zeigen
|
||||||
mapGisStationsStaticDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStaticDistrict?idMap=${c}&idUser=${user}`; //idMap: 10, idUser: 484
|
/* mapGisStationsStaticDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStaticDistrict?idMap=${c}&idUser=${user}`; //idMap: 10, idUser: 484
|
||||||
mapGisStationsStatusDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStatusDistrict?idMap=${c}&idUser=${user}`;
|
mapGisStationsStatusDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStatusDistrict?idMap=${c}&idUser=${user}`;
|
||||||
mapGisStationsMeasurementsUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsMeasurements?idMap=${c}`;
|
mapGisStationsMeasurementsUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsMeasurements?idMap=${c}`;
|
||||||
mapGisSystemStaticUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisSystemStatic?idMap=${c}&idUser=${user}`;
|
mapGisSystemStaticUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisSystemStatic?idMap=${c}&idUser=${user}`;
|
||||||
mapDataIconUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GetIconsStatic`;
|
mapDataIconUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GetIconsStatic`; */
|
||||||
|
|
||||||
/* mapGisStationsStaticDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStaticDistrict`;
|
mapGisStationsStaticDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStaticDistrict`;
|
||||||
mapGisStationsStatusDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStatusDistrict`;
|
mapGisStationsStatusDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStatusDistrict`;
|
||||||
mapGisStationsMeasurementsUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsMeasurements`;
|
mapGisStationsMeasurementsUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsMeasurements`;
|
||||||
mapGisSystemStaticUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisSystemStatic`;
|
mapGisSystemStaticUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisSystemStatic`;
|
||||||
mapDataIconUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GetIconsStatic`; */
|
mapDataIconUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GetIconsStatic`;
|
||||||
|
|
||||||
// URLs zu Offline-Daten, falls benötigt
|
// URLs zu Offline-Daten, falls benötigt
|
||||||
}
|
}
|
||||||
|
|||||||
2
package-lock.json
generated
2
package-lock.json
generated
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "OpenStreetMapProject 19.04.2024",
|
"name": "OpenStreetMapProject-26.04.2024",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
import { createProxyMiddleware } from "http-proxy-middleware";
|
import { createProxyMiddleware } from "http-proxy-middleware";
|
||||||
|
|
||||||
export default createProxyMiddleware({
|
export default createProxyMiddleware({
|
||||||
target: "http://10.10.0.13", // Ziel-URL des Proxys
|
//target: "http://10.10.0.13", // Ziel-URL des Proxys
|
||||||
//target: "http://192.168.10.187:3000", // Ziel-URL des Proxys
|
target: "http://192.168.10.187:3000", // Ziel-URL des Proxys
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
pathRewrite: {
|
pathRewrite: {
|
||||||
"^/api": "/", // Optional: Entfernt /api aus dem Pfad, wenn das Backend dies nicht erfordert
|
"^/api": "/", // Optional: Entfernt /api aus dem Pfad, wenn das Backend dies nicht erfordert
|
||||||
|
|||||||
Reference in New Issue
Block a user