polylines mit Messwert und Schleifenwert

This commit is contained in:
ISA
2024-08-10 11:40:33 +02:00
parent b0a4b5accd
commit da487ba7bb

View File

@@ -33,10 +33,12 @@ const useLineData = (webserviceGisLinesStatusUrl, setLineStatusData) => {
schleifenwert: undefined,
};
}
if (statis.DpName.includes("_Messwert") && statis.Value !== "True" && valueMap[key].messwert === undefined) {
// Füge Messwert hinzu, falls es noch nicht vorhanden ist
if (statis.DpName.endsWith("_Messwert") && statis.Value !== "True" && !valueMap[key].messwert) {
valueMap[key].messwert = statis.Value;
}
if (statis.DpName.includes("_Schleifenwert") && valueMap[key].schleifenwert === undefined) {
// Füge Schleifenwert hinzu, falls es noch nicht vorhanden ist
if (statis.DpName.endsWith("_Schleifenwert") && !valueMap[key].schleifenwert) {
valueMap[key].schleifenwert = statis.Value;
}
if (statis.Message && statis.Message !== "?") {
@@ -94,7 +96,7 @@ const useLineData = (webserviceGisLinesStatusUrl, setLineStatusData) => {
// Funktion zum Loggen der gruppierten und aggregierten Daten
function logGroupedData(statisList) {
const grouped = statisList.reduce((acc, item) => {
const { IdLD, Modul, Level, PrioColor, PrioName, ModulName, ModulTyp, Message } = item;
const { IdLD, Modul, Level, PrioColor, PrioName, ModulName, ModulTyp, Message, DpName, Value } = item;
if (!acc[IdLD]) {
acc[IdLD] = {};
@@ -104,10 +106,12 @@ function logGroupedData(statisList) {
acc[IdLD][Modul] = {
ModulName: ModulName || "Unknown",
ModulTyp: ModulTyp || "N/A",
TotalLevel: Level, // Use the original Level directly
TotalLevel: Level, // Verwende den ursprünglichen Level-Wert
PrioColors: new Set(),
PrioNames: new Set(),
Messages: [],
Messwert: undefined, // Neuer Wert für Messwert
Schleifenwert: undefined, // Neuer Wert für Schleifenwert
};
}
@@ -118,6 +122,16 @@ function logGroupedData(statisList) {
acc[IdLD][Modul].Messages.push(Message);
}
// Füge Messwert hinzu, wenn DpName "_Messwert" enthält und es noch nicht gesetzt ist
if (DpName.endsWith("_Messwert") && !acc[IdLD][Modul].Messwert) {
acc[IdLD][Modul].Messwert = Value;
}
// Füge Schleifenwert hinzu, wenn DpName "_Schleifenwert" enthält und es noch nicht gesetzt ist
if (DpName.endsWith("_Schleifenwert") && !acc[IdLD][Modul].Schleifenwert) {
acc[IdLD][Modul].Schleifenwert = Value;
}
return acc;
}, {});
@@ -125,15 +139,17 @@ function logGroupedData(statisList) {
const formattedData = {};
Object.entries(grouped).forEach(([stationId, modules]) => {
const filteredModules = Object.entries(modules)
.filter(([modulId, data]) => data.ModulName !== "?") // Filter out modules without names
.filter(([modulId, data]) => data.ModulName !== "?") // Filtere Module ohne Namen heraus
.map(([modulId, data]) => ({
Modul: modulId,
ModulName: data.ModulName,
ModulTyp: data.ModulTyp,
Level: data.TotalLevel, // Use the original Level
TotalLevel: data.TotalLevel, // Verwende den ursprünglichen Level
PrioColors: Array.from(data.PrioColors).join(", "),
PrioNames: Array.from(data.PrioNames).join(", "),
Messages: data.Messages.join(" | "),
Messwert: data.Messwert, // Füge Messwert hinzu
Schleifenwert: data.Schleifenwert, // Füge Schleifenwert hinzu
}));
if (filteredModules.length > 0) {