feat: TDR-Chart zeigt initial Slot-Daten und aktualisiert bei Dropdown-Auswahl

- Initiale Chart-Daten werden basierend auf ausgewähltem Slot geladen (z. B. slot0.json bis slot31.json).
- Wenn eine Messungs-ID im Dropdown ausgewählt wird, wird die entsprechende Kurve geladen und angezeigt.
- useMemo verwendet, um zwischen initialen und ID-basierten Daten zu unterscheiden.
This commit is contained in:
ISA
2025-03-24 15:25:09 +01:00
parent 68614df0cd
commit 790d1f79c3
2 changed files with 15 additions and 4 deletions

View File

@@ -1,7 +1,7 @@
// components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChart.tsx
"use client";
import React, { useEffect, useRef } from "react";
import React, { useEffect, useRef, useMemo } from "react";
import { RootState } from "../../../../../../redux/store";
import { useSelector } from "react-redux";
import { Chart, registerables } from "chart.js";
@@ -23,9 +23,20 @@ const TDRChart: React.FC<{ isFullScreen: boolean }> = ({ isFullScreen }) => {
const selectedChartType = useSelector(
(state: RootState) => state.kueChartMode.activeMode
);
const tdrChartData = useSelector((state: RootState) =>
selectedId !== null ? state.tdrDataById.dataById[selectedId] || [] : []
const tdrDataById = useSelector(
(state: RootState) => state.tdrDataById.dataById
);
const tdrInitialData = useSelector((state: RootState) =>
selectedSlot !== null ? state.tdrChart.data[selectedSlot] || [] : []
);
// Kombinierte Logik: ID hat Vorrang, sonst Initial-Daten für Slot
const tdrChartData = useMemo(() => {
if (selectedId !== null && tdrDataById[selectedId]) {
return tdrDataById[selectedId];
}
return tdrInitialData;
}, [selectedId, tdrDataById, tdrInitialData]);
const referenceChartData = useSelector((state: RootState) =>
selectedSlot !== null

View File

@@ -6,5 +6,5 @@
2: Patch oder Hotfix (Bugfixes oder kleine Änderungen).
*/
const webVersion = "1.6.152";
const webVersion = "1.6.153";
export default webVersion;