diff --git a/apiMockData/SERVICE/knotenpunkte/slot0.js b/apiMockData/SERVICE/knotenpunkte/slot0.js new file mode 100644 index 0000000..d057a1f --- /dev/null +++ b/apiMockData/SERVICE/knotenpunkte/slot0.js @@ -0,0 +1,26 @@ +var kueNodeID = [ + "1 Line 1", + "1 Line 2", + "1 Line 3", + "1 Line 4", + "1 Line 5", + "1 Line 6", + "1 Line 7", + "1 Line 8", + "1 Line 9", + "1 Line 10", +]; +var kueLinkID = [ + "Link 1 1", + "Link 1-2", + "Link 1 3", + "Link 1 4", + "Link 1 5", + "Link 1 6", + "Link 1 7", + "Link 1 8", + "Link 1 9", + "", +]; +var kueLinkLength = [11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 0.0]; +var kueLinkStatus = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; diff --git a/apiMockData/SERVICE/knotenpunkte/slot0.png b/apiMockData/SERVICE/knotenpunkte/slot0.png new file mode 100644 index 0000000..3d4bdd7 Binary files /dev/null and b/apiMockData/SERVICE/knotenpunkte/slot0.png differ diff --git a/components/main/kabelueberwachung/kue705FO/modals/Knotenpunkte.tsx b/components/main/kabelueberwachung/kue705FO/modals/Knotenpunkte.tsx index 1b0579d..6640fd4 100644 --- a/components/main/kabelueberwachung/kue705FO/modals/Knotenpunkte.tsx +++ b/components/main/kabelueberwachung/kue705FO/modals/Knotenpunkte.tsx @@ -1,9 +1,86 @@ -import React from "react"; +// components/modales/kueModal/pages/Knotenpunkte.tsx +"use client"; + +import React, { useEffect, useState } from "react"; + +declare global { + interface Window { + leseKnotenpunkte?: (slotIndex: number) => void; + knotenData?: { + nodeIDs: string[]; + linkIDs: string[]; + linkLengths: number[]; + }; + } +} interface Props { slot: number; } export default function Knotenpunkte({ slot }: Props) { - return
Knotenpunkte – Slot {slot + 1}
; + const [knotenNamen, setKnotenNamen] = useState(Array(10).fill("")); + + useEffect(() => { + const slotIndex = slot; + + // Schritt 1: Lade kueDataX.js vom CPL (oder Mock im Dev) + const script = document.createElement("script"); + script.src = `/CPL?Service/kueData${slotIndex}.js`; // z. B. kueData0.js + script.async = true; + script.onload = () => { + // Schritt 2: Lade Hilfs-Loader (dein JS zum Auslesen) + const loaderScript = document.createElement("script"); + loaderScript.src = "/js/knotenAuslesen.js"; + loaderScript.async = true; + loaderScript.onload = () => { + if (typeof window.leseKnotenpunkte === "function") { + window.leseKnotenpunkte(slotIndex); + const knoten = window.knotenData?.nodeIDs ?? []; + setKnotenNamen(knoten); + } + }; + document.body.appendChild(loaderScript); + }; + document.body.appendChild(script); + + return () => { + document.body.removeChild(script); + }; + }, [slot]); + + return ( +
+

+ Knotenpunkte – Slot {slot + 1} +

+ {knotenNamen.map((value, index) => ( +
+ + { + const updated = [...knotenNamen]; + updated[index] = e.target.value; + setKnotenNamen(updated); + }} + /> +
+ ))} + +
+ +
+
+ ); } diff --git a/config/webVersion.ts b/config/webVersion.ts index b6dde25..822c7a7 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.252"; +const webVersion = "1.6.253"; export default webVersion; diff --git a/public/CPL/SERVICE/knotenAuslesen.js b/public/CPL/SERVICE/knotenAuslesen.js new file mode 100644 index 0000000..8e2e20b --- /dev/null +++ b/public/CPL/SERVICE/knotenAuslesen.js @@ -0,0 +1,30 @@ +// public/CPL/SERVICE/knotenAuslesen.js + +window.knotenData = { + nodeIDs: [], + linkIDs: [], + linkLengths: [], +}; + +function leseKnotenpunkte(slotIndex) { + try { + for (let i = 0; i < 10; i++) { + const node = window.kueNodeID?.[i] ?? ""; + window.knotenData.nodeIDs[i] = node; + } + + for (let i = 0; i < 10; i++) { + const link = window.kueLinkID?.[i] ?? ""; + window.knotenData.linkIDs[i] = link; + } + + for (let i = 0; i < 10; i++) { + const length = window.kueLinkLength?.[i] ?? ""; + window.knotenData.linkLengths[i] = length; + } + + console.log("✅ Knotenpunkte geladen:", window.knotenData); + } catch (error) { + console.error("❌ Fehler beim Laden der Knotenpunkte:", error); + } +} diff --git a/public/CPL/SERVICE/knotenpunkteTemplate.js b/public/CPL/SERVICE/knotenpunkteTemplate.js new file mode 100644 index 0000000..ffd4ede --- /dev/null +++ b/public/CPL/SERVICE/knotenpunkteTemplate.js @@ -0,0 +1,4 @@ +// public/CPL/SERVICE/knotenpunkteTemplate.js +var KNA01 = "<%= KNA01 %>"; +var KNB01 = "<%= KNB01 %>"; +// ...