diff --git a/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartActionBar.tsx b/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartActionBar.tsx index 97b91f3..6ee22f1 100644 --- a/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartActionBar.tsx +++ b/components/main/kabelueberwachung/kue705FO/Charts/TDRChart/TDRChartActionBar.tsx @@ -22,7 +22,11 @@ const TDRChartActionBar: React.FC = () => { const idsForSlot = selectedSlot !== null ? tdmChartData[selectedSlot] ?? [] : []; + const tdrDataById = useSelector( + (state: RootState) => state.tdrDataById.dataById + ); const [selectedId, setSelectedId] = useState(null); + const currentChartData = selectedId !== null ? tdrDataById[selectedId] : []; // 🔄 Dropdown-Auswahl: neue Messung laden const handleSelectChange = (e: React.ChangeEvent) => { @@ -32,19 +36,15 @@ const TDRChartActionBar: React.FC = () => { }; // 📌 Referenz setzen (nutzt Slotnummer + 1 für die API) - const handleSetReference = async () => { - if (selectedId === null || selectedSlot === null) return; + const handleSetReference = () => { + if (selectedSlot === null || !currentChartData?.length) return; - const apiSlot = selectedSlot + 1; - const url = `${window.location.origin}/CPL?seite.ACP&KTR${apiSlot}=${selectedId}`; - try { - const response = await fetch(url); - if (!response.ok) throw new Error("Fehler beim Setzen der Referenzkurve"); - alert("✅ Referenzkurve erfolgreich gesetzt."); - } catch (error) { - console.error("❌ Fehler:", error); - alert("❌ Referenzkurve konnte nicht gesetzt werden."); - } + localStorage.setItem( + `ref-curve-slot${selectedSlot}`, + JSON.stringify(currentChartData) + ); + + alert("✅ Referenzkurve lokal gespeichert (nur im Browser)"); }; // 📥 Beim Slot-Wechsel TDM-Liste + letzte ID laden diff --git a/config/webVersion.ts b/config/webVersion.ts index 499819a..8505fdd 100644 --- a/config/webVersion.ts +++ b/config/webVersion.ts @@ -6,5 +6,5 @@ 2: Patch oder Hotfix (Bugfixes oder kleine Änderungen). */ -const webVersion = "1.6.186"; +const webVersion = "1.6.187"; export default webVersion; diff --git a/redux/thunks/fetchReferenceCurveBySlotThunk.ts b/redux/thunks/fetchReferenceCurveBySlotThunk.ts index a4be147..b5ca12f 100644 --- a/redux/thunks/fetchReferenceCurveBySlotThunk.ts +++ b/redux/thunks/fetchReferenceCurveBySlotThunk.ts @@ -1,4 +1,4 @@ -// /redux/thunks/fetchAllTDRReferenceChartThunk.ts +// /redux/thunks/fetchReferenceCurveBySlotThunk.ts import { createAsyncThunk } from "@reduxjs/toolkit"; import { fetchTDRReferenceCurve } from "../../services/fetchTDRReferenceCurve"; diff --git a/services/fetchTDRReferenceCurve.ts b/services/fetchTDRReferenceCurve.ts index f2f2b5d..d7cf096 100644 --- a/services/fetchTDRReferenceCurve.ts +++ b/services/fetchTDRReferenceCurve.ts @@ -1,11 +1,17 @@ // /services/fetchTDRReferenceCurve.ts + export const fetchTDRReferenceCurve = async ( slot: number ): Promise => { - if (typeof window === "undefined") return null; + // ✅ Erst aus localStorage lesen + const local = localStorage.getItem(`ref-curve-slot${slot}`); + if (local) { + console.log(`📦 Lade Referenzkurve für Slot ${slot} aus localStorage`); + return JSON.parse(local); + } + // 🔁 Fallback: Datei oder Produktion-API const isDev = process.env.NEXT_PUBLIC_NODE_ENV === "development"; - const url = isDev ? `/CPLmockData/tdr-reference-curves/slot${slot}.json` : `${window.location.origin}/CPL?Service/empty.acp&TDRR=${slot}`; @@ -15,10 +21,7 @@ export const fetchTDRReferenceCurve = async ( if (!res.ok) throw new Error(`HTTP ${res.status}`); return await res.json(); } catch (error) { - console.error( - `❌ Fehler beim Laden der Referenzkurve für Slot ${slot}:`, - error - ); + console.error(`❌ Fehler beim Laden von Slot ${slot}:`, error); return null; } };