From 0ea34a9f7b164e183886ad8a55c34535a87a51e3 Mon Sep 17 00:00:00 2001 From: ISA Date: Fri, 21 Feb 2025 15:22:12 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20API-URL-Format=20&=20dynamische=20Base-U?= =?UTF-8?q?RL=20f=C3=BCr=20Produktion=20korrigiert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LoopChartActionBar.tsx | 26 ++++++++++++++++--- .../kabelueberwachung/kue705FO/Kue705FO.tsx | 2 ++ config/webVersion.ts | 2 +- redux/slices/kabelueberwachungChartSlice.ts | 25 ++++++++---------- 4 files changed, 37 insertions(+), 18 deletions(-) diff --git a/components/main/kabelueberwachung/kue705FO/Charts/LoopMeasurementChart/LoopChartActionBar.tsx b/components/main/kabelueberwachung/kue705FO/Charts/LoopMeasurementChart/LoopChartActionBar.tsx index 00af967..5d1905d 100644 --- a/components/main/kabelueberwachung/kue705FO/Charts/LoopMeasurementChart/LoopChartActionBar.tsx +++ b/components/main/kabelueberwachung/kue705FO/Charts/LoopMeasurementChart/LoopChartActionBar.tsx @@ -16,21 +16,41 @@ const LoopChartActionBar: React.FC = () => { const dispatch = useDispatch(); // Redux-Status abrufen - const { vonDatum, bisDatum, selectedMode, selectedSlotType, isChartOpen } = - useSelector((state: RootState) => state.kabelueberwachungChart); + const { + vonDatum, + bisDatum, + selectedMode, + selectedSlotType, + isChartOpen, + slotNumber, + } = useSelector((state: RootState) => state.kabelueberwachungChart); /** * API-URL-Erstellung für Entwicklung und Produktion */ const getApiUrl = (mode: "DIA0" | "DIA1" | "DIA2", type: number) => { + if (!slotNumber) { + console.error("⚠️ Slot-Nummer nicht gesetzt!"); + return ""; + } + + // Dynamische Basis-URL abhängig von Umgebung const baseUrl = process.env.NODE_ENV === "development" ? `/CPLmockData/kuesChartData/${mode}_${type}.json` - : `/CPL?seite.ACP&${mode}=${vonDatum};${bisDatum};${selectedSlotType};${type};`; + : `${window.location.origin}/CPL?seite.ACP&${mode}=${formatDate( + vonDatum + )};${formatDate(bisDatum)};${slotNumber};${type};`; return baseUrl; }; + // Funktion zur Umformatierung des Datums von "YYYY-MM-DD" zu "YYYY;MM;DD" + const formatDate = (dateString: string) => { + const dateParts = dateString.split("-"); + return `${dateParts[0]};${dateParts[1]};${dateParts[2]}`; + }; + /** * Funktion zum Laden der Messwerte */ diff --git a/components/main/kabelueberwachung/kue705FO/Kue705FO.tsx b/components/main/kabelueberwachung/kue705FO/Kue705FO.tsx index cfb21a8..46845ca 100644 --- a/components/main/kabelueberwachung/kue705FO/Kue705FO.tsx +++ b/components/main/kabelueberwachung/kue705FO/Kue705FO.tsx @@ -25,6 +25,7 @@ import LoopMeasurementChart from "./Charts/LoopMeasurementChart/LoopMeasurementC import TDRChart from "./Charts/TDRChart/TDRChart"; import handleButtonClick from "./kue705FO-Funktionen/handleButtonClick"; import { setChartOpen } from "../../../../redux/slices/kabelueberwachungChartSlice"; +import { setSlotNumber } from "../../../../redux/slices/kabelueberwachungChartSlice"; const Kue705FO: React.FC = ({ isolationswert, @@ -98,6 +99,7 @@ const Kue705FO: React.FC = ({ const handleOpenChartModal = () => { setShowChartModal(true); dispatch(setChartOpen(true)); + dispatch(setSlotNumber(slotIndex + 1)); // Slot-Nummer speichern if (activeButton === "TDR") { dispatch(setActiveMode("TDR")); diff --git a/config/webVersion.ts b/config/webVersion.ts index 302d254..e9261b7 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.84"; +const webVersion = "1.6.85"; export default webVersion; diff --git a/redux/slices/kabelueberwachungChartSlice.ts b/redux/slices/kabelueberwachungChartSlice.ts index 4c11615..ff071e2 100644 --- a/redux/slices/kabelueberwachungChartSlice.ts +++ b/redux/slices/kabelueberwachungChartSlice.ts @@ -6,7 +6,8 @@ interface KabelueberwachungChartState { bisDatum: string; selectedMode: "DIA0" | "DIA1" | "DIA2"; selectedSlotType: "isolationswiderstand" | "schleifenwiderstand"; - isChartOpen: boolean; // NEU: Schalter für das erste Öffnen des Charts + isChartOpen: boolean; + slotNumber: number | null; // NEU: Slot-Nummer speichern } const initialState: KabelueberwachungChartState = { @@ -15,32 +16,27 @@ const initialState: KabelueberwachungChartState = { bisDatum: "2025-02-28", selectedMode: "DIA0", selectedSlotType: "schleifenwiderstand", - isChartOpen: false, // Standard: Chart ist beim ersten Laden geschlossen + isChartOpen: false, + slotNumber: null, // Standard: Kein Slot gewählt }; const kabelueberwachungChartSlice = createSlice({ name: "kabelueberwachungChart", initialState, reducers: { + setSlotNumber: (state, action: PayloadAction) => { + state.slotNumber = action.payload; + }, setChartData: (state, action: PayloadAction) => { state.chartData = action.payload; - - // Falls das Chart das erste Mal geöffnet wird, setze vonDatum & bisDatum - if (!state.isChartOpen && action.payload.length > 0) { - const firstDate = new Date(action.payload[action.payload.length - 1].t); - const lastDate = new Date(action.payload[0].t); - state.vonDatum = firstDate.toISOString().split("T")[0]; - state.bisDatum = lastDate.toISOString().split("T")[0]; - - state.isChartOpen = true; // Schalter setzen, damit es nicht erneut passiert - } }, setVonDatum: (state, action: PayloadAction) => { - state.vonDatum = action.payload; + state.vonDatum = action.payload.replace(/-/g, ";"); // Speichert als "YYYY;MM;DD" }, setBisDatum: (state, action: PayloadAction) => { - state.bisDatum = action.payload; + state.bisDatum = action.payload.replace(/-/g, ";"); // Speichert als "YYYY;MM;DD" }, + setSelectedMode: ( state, action: PayloadAction<"DIA0" | "DIA1" | "DIA2"> @@ -66,6 +62,7 @@ export const { setSelectedMode, setSelectedSlotType, setChartOpen, + setSlotNumber, // NEU: Action für Slot-Nummer exportieren } = kabelueberwachungChartSlice.actions; export default kabelueberwachungChartSlice.reducer;