chore: entferne utils.js – lagere alle Funktionen in spezialisierte Module aus
- lösche nicht mehr benötigte oder veraltete Funktionen aus utils.js - verschiebe relevante Logik in Dateien wie mapUtils.js - entferne alle Importe von utils.js im gesamten Projekt - vereinfache die Projektstruktur und reduziere Duplikate
This commit is contained in:
@@ -1,2 +1,2 @@
|
|||||||
// /config/appVersion
|
// /config/appVersion
|
||||||
export const APP_VERSION = "1.1.141";
|
export const APP_VERSION = "1.1.142";
|
||||||
|
|||||||
146
utils/utils.js
146
utils/utils.js
@@ -1,146 +0,0 @@
|
|||||||
// /utils/utils.js
|
|
||||||
import { useState } from "react";
|
|
||||||
import circleIcon from "../components/CircleIcon";
|
|
||||||
|
|
||||||
export const parsePoint = (position) => {
|
|
||||||
const [longitude, latitude] = position.slice(6, -1).split(" ");
|
|
||||||
return { latitude: parseFloat(latitude), longitude: parseFloat(longitude) };
|
|
||||||
};
|
|
||||||
//----------------------------------------------
|
|
||||||
|
|
||||||
export const determinePriority = (iconPath) => {
|
|
||||||
const [priorityConfig, setPriorityConfig] = useState([]);
|
|
||||||
for (let priority of priorityConfig) {
|
|
||||||
if (iconPath.includes(priority.name.toLowerCase())) {
|
|
||||||
return priority.level;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return 5; // Default priority (lowest)
|
|
||||||
};
|
|
||||||
//----------------------------------------------
|
|
||||||
|
|
||||||
//----------------------------------------------
|
|
||||||
export const fetchPriorityConfig = async () => {
|
|
||||||
try {
|
|
||||||
const response = await fetch("/api/talas_v5_DB/priorityConfig");
|
|
||||||
const data = await response.json();
|
|
||||||
console.log("Prioritätskonfiguration:", data);
|
|
||||||
setPriorityConfig(data);
|
|
||||||
} catch (error) {
|
|
||||||
console.error("Fehler beim Laden der Prioritätskonfiguration:", error);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
//----------------------------------------------
|
|
||||||
export const fetchGisStatusStations = async (idMap, idUser) => {
|
|
||||||
try {
|
|
||||||
const response = await fetch(`/api/talas5/webserviceMap/GisStationsStatusDistrict?idMap=${idMap}&idUser=${idUser}`);
|
|
||||||
if (!response.ok) {
|
|
||||||
throw new Error(`Error: ${response.statusText}`);
|
|
||||||
}
|
|
||||||
const data = await response.json();
|
|
||||||
console.log("GisStatusStations:", data);
|
|
||||||
return data;
|
|
||||||
} catch (error) {
|
|
||||||
console.error("Fehler beim Abrufen der Daten in utils/utils.js :", error);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
//----------------------------------------------
|
|
||||||
export const handleEditPoi = (marker) => {
|
|
||||||
// Prüfung, ob der Benutzer die notwendigen Rechte hat
|
|
||||||
if (!userRights || !userRights.includes(56)) {
|
|
||||||
toast.error("Benutzer hat keine Berechtigung zum Bearbeiten.", {
|
|
||||||
position: "top-center",
|
|
||||||
autoClose: 5000,
|
|
||||||
hideProgressBar: false,
|
|
||||||
closeOnClick: true,
|
|
||||||
pauseOnHover: true,
|
|
||||||
draggable: true,
|
|
||||||
progress: undefined,
|
|
||||||
});
|
|
||||||
console.log("Benutzer hat keine Berechtigung zum Bearbeiten.");
|
|
||||||
return; // Beendet die Funktion frühzeitig, wenn keine Berechtigung vorliegt
|
|
||||||
}
|
|
||||||
|
|
||||||
//console.log("Selected Marker ID (idPoi):", marker.options.idPoi);
|
|
||||||
//console.log("Selected Marker Description:", marker.options.description);
|
|
||||||
|
|
||||||
setCurrentPoiData({
|
|
||||||
idPoi: marker.options.id,
|
|
||||||
name: marker.options.name,
|
|
||||||
description: marker.options.description,
|
|
||||||
});
|
|
||||||
//console.log("POI-Daten1:", currentPoiData);
|
|
||||||
|
|
||||||
fetchPoiData(marker.options.id);
|
|
||||||
|
|
||||||
setShowPoiUpdateModal(true);
|
|
||||||
};
|
|
||||||
//----------------------------------------------
|
|
||||||
export const insertNewMarker = (closestPoints, newPoint, lineData, map) => {
|
|
||||||
const newMarker = L.marker(newPoint, {
|
|
||||||
icon: circleIcon,
|
|
||||||
draggable: true,
|
|
||||||
}).addTo(map);
|
|
||||||
lineData.coordinates.splice(closestPoints[2], 0, [newPoint.lat, newPoint.lng]);
|
|
||||||
|
|
||||||
// Hier direkt speichern nach Einfügen
|
|
||||||
saveLineData(lineData);
|
|
||||||
|
|
||||||
redrawPolyline(lineData);
|
|
||||||
|
|
||||||
// Event-Listener für das Verschieben des Markers hinzufügen
|
|
||||||
newMarker.on("dragend", () => {
|
|
||||||
const newCoords = newMarker.getLatLng();
|
|
||||||
setNewCoords(newCoords);
|
|
||||||
const newCoordinates = [...lineData.coordinates];
|
|
||||||
newCoordinates[closestPoints[2]] = [newCoords.lat, newCoords.lng];
|
|
||||||
lineData.coordinates = newCoordinates;
|
|
||||||
redrawPolyline(lineData);
|
|
||||||
|
|
||||||
updateMarkerPosition(newMarker.getLatLng(), lineData, newMarker);
|
|
||||||
saveLineData(lineData); // Speichern der neuen Koordinaten nach dem Verschieben
|
|
||||||
});
|
|
||||||
};
|
|
||||||
//----------------------------------------------
|
|
||||||
/* export const addItemsToMapContextMenu = () => {
|
|
||||||
const [menuItemAdded, setMenuItemAdded] = useState(false);
|
|
||||||
if (!menuItemAdded) {
|
|
||||||
//console.log("contextMenuItems hasRights:", hasRights);
|
|
||||||
|
|
||||||
map.contextmenu.addItem({
|
|
||||||
text: "POI hinzufügen",
|
|
||||||
icon: "img/add_station.png",
|
|
||||||
className: "background-red",
|
|
||||||
callback: (event) => addStationCallback(event, hasRights),
|
|
||||||
});
|
|
||||||
|
|
||||||
setMenuItemAdded(true); // Menüpunkt wurde hinzugefült, Zustand aktualisieren
|
|
||||||
}
|
|
||||||
}; */
|
|
||||||
//----------------------------------------------
|
|
||||||
export const saveLineData = (lineData) => {
|
|
||||||
fetch("/api/talas_v5_DB/gisLines/updateLineCoordinates", {
|
|
||||||
method: "POST",
|
|
||||||
headers: {
|
|
||||||
"Content-Type": "application/json",
|
|
||||||
},
|
|
||||||
body: JSON.stringify({
|
|
||||||
idModul: lineData.idModul,
|
|
||||||
idLD: lineData.idLD,
|
|
||||||
newCoordinates: lineData.coordinates,
|
|
||||||
}),
|
|
||||||
})
|
|
||||||
.then((response) => {
|
|
||||||
if (!response.ok) {
|
|
||||||
throw new Error("Fehler beim Speichern der Linienänderungen");
|
|
||||||
}
|
|
||||||
return response.json();
|
|
||||||
})
|
|
||||||
.then((data) => {
|
|
||||||
console.log("Linienänderungen gespeichert:", data);
|
|
||||||
})
|
|
||||||
.catch((error) => {
|
|
||||||
console.error("Fehler beim Speichern der Linienänderungen:", error);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
//----------------------------------------------
|
|
||||||
Reference in New Issue
Block a user