From d27b5b1b13851f960e9c017478e9b2328217fa41 Mon Sep 17 00:00:00 2001 From: Ismail Ali Date: Thu, 19 Jun 2025 18:02:52 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20analoge=20Eing=C3=A4nge=20Interval=20in?= =?UTF-8?q?=20Modal=20in=20json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 4 +- .env.production | 2 +- apiMockData/SERVICE/analogInputsMockData.js | 18 ++- .../AnalogInputsSettingsModal.tsx | 15 +-- mocks/api/SERVICE/analogInputsMockData.json | 69 +++++++++-- .../SERVICE/analogInputsMockData.js | 19 +--- package-lock.json | 4 +- package.json | 2 +- pages/api/cpl/getAnalogInputsHandler.ts | 107 +++++++++--------- .../updateAnalogInputsSettingsAPIHandler.ts | 88 -------------- .../cpl/updateAnalogInputsSettingsHandler.ts | 65 +++++++++++ public/CPL/SERVICE/analogInputs.js | 8 +- services/fetchAnalogInputsService.ts | 8 +- 13 files changed, 217 insertions(+), 192 deletions(-) delete mode 100644 pages/api/cpl/updateAnalogInputsSettingsAPIHandler.ts create mode 100644 pages/api/cpl/updateAnalogInputsSettingsHandler.ts diff --git a/.env.development b/.env.development index cdf4ba9..ad2cb5a 100644 --- a/.env.development +++ b/.env.development @@ -6,5 +6,5 @@ NEXT_PUBLIC_USE_MOCK_BACKEND_LOOP_START=false NEXT_PUBLIC_EXPORT_STATIC=false NEXT_PUBLIC_USE_CGI=false # App-Versionsnummer -NEXT_PUBLIC_APP_VERSION=1.6.423 -NEXT_PUBLIC_CPL_MODE=jsmock # json (Entwicklungsumgebung) oder jsmock (CPL ->CGI-Interface-Simulator) oder production (CPL-> CGI-Interface Platzhalter) \ No newline at end of file +NEXT_PUBLIC_APP_VERSION=1.6.424 +NEXT_PUBLIC_CPL_MODE=json # json (Entwicklungsumgebung) oder jsmock (CPL ->CGI-Interface-Simulator) oder production (CPL-> CGI-Interface Platzhalter) \ No newline at end of file diff --git a/.env.production b/.env.production index 829d3da..c91b5fd 100644 --- a/.env.production +++ b/.env.production @@ -5,5 +5,5 @@ NEXT_PUBLIC_CPL_API_PATH=/CPL NEXT_PUBLIC_EXPORT_STATIC=true NEXT_PUBLIC_USE_CGI=true # App-Versionsnummer -NEXT_PUBLIC_APP_VERSION=1.6.423 +NEXT_PUBLIC_APP_VERSION=1.6.424 NEXT_PUBLIC_CPL_MODE=production \ No newline at end of file diff --git a/apiMockData/SERVICE/analogInputsMockData.js b/apiMockData/SERVICE/analogInputsMockData.js index e5c3df3..1fbb4b4 100644 --- a/apiMockData/SERVICE/analogInputsMockData.js +++ b/apiMockData/SERVICE/analogInputsMockData.js @@ -1,10 +1,22 @@ // /apiMockData/SERVICE/analogInputsMockData.js -var win_analogInputsValues = [4.771072, 5.665244, 0.005467, -0.007468, 0.000002, 0.000001, 0.000001, 0.000007]; -var win_analogInputsNames = ["Test", "AE 2", "AE 3", "AE 4", "AE 5", "AE 6", "AE 7", "AE 8"]; +var win_analogInputsValues = [ + 4.771072, 5.665244, 0.005467, -0.007468, 0.000002, 0.000001, 0.000001, + 0.000007, +]; +var win_analogInputsLabels = [ + "AE 11", + "AE 2", + "AE 3", + "AE 4", + "AE 5", + "AE 6", + "AE 7", + "AE 8", +]; var win_analogInputsOffset = [11.001, 0.0, 0.0, 0, 0.0, 0.0, 0.0, 0.0]; var win_analogInputsFactor = [12.001, 1.0, 1.0, 1, 1.0, 1.0, 1.0, 1.0]; -var win_analogInputsloggerIntervall = [10, 10, 10, 10, 10, 10, 10, 10]; +var win_analogInputsLoggerIntervall = [10, 10, 10, 10, 10, 10, 10, 10]; var win_analogInputsUnits = ["V", "V", "V", "V", "mA", "mA", "mA", "mA"]; var win_analogInputsWeighting = [0, 0, 0, 0, 0, 0, 0, 0]; diff --git a/components/main/analogInputs/AnalogInputsSettingsModal.tsx b/components/main/analogInputs/AnalogInputsSettingsModal.tsx index 29774ae..be0b6b7 100644 --- a/components/main/analogInputs/AnalogInputsSettingsModal.tsx +++ b/components/main/analogInputs/AnalogInputsSettingsModal.tsx @@ -15,7 +15,7 @@ export default function AnalogInputSettingsModal({ const [label, setLabel] = useState(""); const [offset, setOffset] = useState("0.000"); const [factor, setFactor] = useState("1.000"); - const [loggerInterval, setLoggerInterval] = useState("10"); + const [loggerInterval, setLoggerInterval] = useState("9"); const [unit, setUnit] = useState("V"); const [isSaving, setIsSaving] = useState(false); @@ -32,12 +32,9 @@ export default function AnalogInputSettingsModal({ ? selectedInput.factor.toFixed(3) : selectedInput.factor || "1.000" ); - setLoggerInterval( - selectedInput.loggerInterval !== undefined - ? selectedInput.loggerInterval.toString() - : "10" - ); + setLoggerInterval(selectedInput.interval); setUnit(selectedInput.unit || "V"); + console.log("selectedInput in analoge Eingänge:", selectedInput.interval); } }, [selectedInput, isOpen]); @@ -58,12 +55,12 @@ export default function AnalogInputSettingsModal({ try { if (isDev) { - await fetch("/api/cpl/updateAnalogInputsSettingsAPIHandler", { + await fetch("/api/cpl/updateAnalogInputsSettingsHandler", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ updates: [ - { key: "win_analogInputsNames", index: slot - 1, value: label }, + { key: "win_analogInputsLabels", index: slot - 1, value: label }, { key: "win_analogInputsOffset", index: slot - 1, @@ -76,7 +73,7 @@ export default function AnalogInputSettingsModal({ }, { key: "win_analogInputsUnits", index: slot - 1, value: unit }, { - key: "win_analogInputsloggerIntervall", + key: "win_analogInputsLoggerIntervall", index: slot - 1, value: parseInt(loggerParam), }, diff --git a/mocks/api/SERVICE/analogInputsMockData.json b/mocks/api/SERVICE/analogInputsMockData.json index 8502a50..39482b7 100644 --- a/mocks/api/SERVICE/analogInputsMockData.json +++ b/mocks/api/SERVICE/analogInputsMockData.json @@ -1,10 +1,16 @@ { "win_analogInputsValues": [ - 4.771072, 5.665244, 0.005467, -0.007468, 0.000002, 0.000001, 0.000001, + 4.771072, + 5.665244, + 0.005467, + -0.007468, + 0.000002, + 0.000001, + 0.000001, 0.000007 ], - "win_analogInputsNames": [ - "AE1", + "win_analogInputsLabels": [ + "AE 12", "AE 2", "AE 3", "AE 4", @@ -13,9 +19,54 @@ "AE 7", "AE 8" ], - "win_analogInputsOffset": [11.001, 0.0, 0.0, 0, 0.0, 0.0, 0.0, 0.0], - "win_analogInputsFactor": [12.001, 1.0, 1.0, 1, 1.0, 1.0, 1.0, 1.0], - "win_analogInputsloggerIntervall": [5, 10, 10, 10, 10, 10, 10, 10], - "win_analogInputsUnits": ["V", "V", "V", "V", "mA", "mA", "mA", "mA"], - "win_analogInputsWeighting": [0, 0, 0, 0, 0, 0, 0, 0] -} + "win_analogInputsOffset": [ + 10.991, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "win_analogInputsFactor": [ + 11.992, + 1, + 1, + 1, + 1, + 1, + 1, + 1 + ], + "win_analogInputsUnits": [ + "V", + "V", + "V", + "V", + "mA", + "mA", + "mA", + "mA" + ], + "win_analogInputsLoggerIntervall": [ + 8, + 10, + 10, + 10, + 10, + 10, + 10, + 10 + ], + "win_analogInputsWeighting": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] +} \ No newline at end of file diff --git a/mocks/device-cgi-simulator/SERVICE/analogInputsMockData.js b/mocks/device-cgi-simulator/SERVICE/analogInputsMockData.js index 1cda64a..f51cafd 100644 --- a/mocks/device-cgi-simulator/SERVICE/analogInputsMockData.js +++ b/mocks/device-cgi-simulator/SERVICE/analogInputsMockData.js @@ -4,20 +4,11 @@ var win_analogInputsValues = [ 4.771072, 5.665244, 0.005467, -0.007468, 0.000002, 0.000001, 0.000001, 0.070007, ]; -var win_analogInputsNames = [ - "AE 1", - "AE 2", - "AE 3", - "AE 4", - "AE 5", - "AE 6", - "AE 7", - "AE 8", -]; -var win_analogInputsOffset = [11.001, 0.0, 0.0, 0, 0.0, 0.0, 0.0, 0.0]; -var win_analogInputsFactor = [12.001, 1.0, 1.0, 1, 1.0, 1.0, 1.0, 1.0]; -var win_analogInputsloggerIntervall = [5, 10, 10, 10, 10, 10, 10, 10]; -var win_analogInputsUnits = ["V", "V", "V", "V", "mA", "mA", "mA", "mA"]; +var win_analogInputsLabels = ["AE 11", "AE 2", "AE 3", "AE 4", "AE 5", "AE 6", "AE 7", "AE 8", ]; +var win_analogInputsOffset = [10.999, 0.0, 0.0, 0, 0.0, 0.0, 0.0, 0.0]; +var win_analogInputsFactor = [11.999, 1.0, 1.0, 1, 1.0, 1.0, 1.0, 1.0]; +var win_analogInputsLoggerIntervall = [9, 10, 10, 10, 10, 10, 10, 10]; +var win_analogInputsUnits = ["mA", "V", "V", "V", "mA", "mA", "mA", "mA"]; var win_analogInputsWeighting = [0, 0, 0, 0, 0, 0, 0, 0]; /* diff --git a/package-lock.json b/package-lock.json index fba7009..5eed91b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "cpl-v4", - "version": "1.6.423", + "version": "1.6.424", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "cpl-v4", - "version": "1.6.423", + "version": "1.6.424", "dependencies": { "@fontsource/roboto": "^5.1.0", "@iconify-icons/ri": "^1.2.10", diff --git a/package.json b/package.json index 226bf3a..383807a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "cpl-v4", - "version": "1.6.423", + "version": "1.6.424", "private": true, "scripts": { "dev": "next dev", diff --git a/pages/api/cpl/getAnalogInputsHandler.ts b/pages/api/cpl/getAnalogInputsHandler.ts index 04cac69..d6c080e 100644 --- a/pages/api/cpl/getAnalogInputsHandler.ts +++ b/pages/api/cpl/getAnalogInputsHandler.ts @@ -1,70 +1,67 @@ // /pages/api/cpl/getAnalogInputsHandler.ts import { NextApiRequest, NextApiResponse } from "next"; -import path from "path"; import fs from "fs"; +import path from "path"; -export default async function handler( - req: NextApiRequest, - res: NextApiResponse -) { +export default function handler(req: NextApiRequest, res: NextApiResponse) { const mode = process.env.NEXT_PUBLIC_CPL_MODE; - if (mode === "json") { - const filePath = path.join( - process.cwd(), - "mocks/api/SERVICE/analogInputsMockData.json" - ); - const content = fs.readFileSync(filePath, "utf-8"); - const data = JSON.parse(content); - return res.status(200).json(data); - } - - if (mode === "jsmock") { - const filePath = path.join( - process.cwd(), - "mocks/device-cgi-simulator/SERVICE/analogInputsMockData.js" - ); - const fileContent = fs.readFileSync(filePath, "utf-8"); - - function extractArray(name) { - const match = fileContent.match( - new RegExp(`var\\s+${name}\\s*=\\s*\\[([\\s\\S]*?)\\];`) + try { + if (mode === "json") { + const filePath = path.join( + process.cwd(), + "mocks/api/SERVICE/analogInputsMockData.json" ); - return match - ? match[1].split(",").map((s) => s.trim().replace(/^["']|["']$/g, "")) - : []; + const content = fs.readFileSync(filePath, "utf-8"); + const data = JSON.parse(content); + return res.status(200).json(data); } - const result = { - win_analogInputsValues: extractArray("win_analogInputsValues").map( - Number - ), - win_analogInputsNames: extractArray("win_analogInputsNames"), - win_analogInputsOffset: extractArray("win_analogInputsOffset").map( - Number - ), - win_analogInputsFactor: extractArray("win_analogInputsFactor").map( - Number - ), - win_analogInputsloggerIntervall: extractArray( - "win_analogInputsloggerIntervall" - ).map(Number), - win_analogInputsUnits: extractArray("win_analogInputsUnits"), - win_analogInputsWeighting: extractArray("win_analogInputsWeighting").map( - Number - ), - }; + if (mode === "jsmock") { + const filePath = path.join( + process.cwd(), + "mocks/device-cgi-simulator/SERVICE/analogInputsMockData.js" + ); + const content = fs.readFileSync(filePath, "utf-8"); - // Begrenzung auf maximal 8 Elemente je Array - Object.keys(result).forEach((key) => { - if (Array.isArray(result[key])) { - result[key] = result[key].slice(0, 8); + function extractArray(name: string): any[] { + const match = content.match( + new RegExp(`var\s+${name}\s*=\s*\[([\s\S]*?)\];`) + ); + if (!match) return []; + return match[1] + .split(",") + .map((s) => s.trim().replace(/^["']|["']$/g, "")) + .slice(0, 8); } - }); - return res.status(200).json(result); + const responseData = { + win_analogInputsValues: extractArray("win_analogInputsValues").map( + Number + ), + win_analogInputsNames: extractArray("win_analogInputsNames"), + win_analogInputsOffset: extractArray("win_analogInputsOffset").map( + Number + ), + win_analogInputsFactor: extractArray("win_analogInputsFactor").map( + Number + ), + win_analogInputsLoggerIntervall: extractArray( + "win_analogInputsLoggerIntervall" + ).map(Number), + win_analogInputsUnits: extractArray("win_analogInputsUnits"), + win_analogInputsWeighting: extractArray( + "win_analogInputsWeighting" + ).map(Number), + }; + + return res.status(200).json(responseData); + } + + return res.status(400).json({ error: "Unsupported mode" }); + } catch (error) { + console.error("❌ Fehler beim Lesen der analogen Eingänge:", error); + return res.status(500).json({ error: "Fehler beim Lesen der Datei" }); } - - return res.status(400).json({ error: "Unsupported mode" }); } diff --git a/pages/api/cpl/updateAnalogInputsSettingsAPIHandler.ts b/pages/api/cpl/updateAnalogInputsSettingsAPIHandler.ts deleted file mode 100644 index d843264..0000000 --- a/pages/api/cpl/updateAnalogInputsSettingsAPIHandler.ts +++ /dev/null @@ -1,88 +0,0 @@ -// /pages/api/cpl/updateAnalogInputsSettingsAPIHandler.ts -import { NextApiRequest, NextApiResponse } from "next"; -import path from "path"; -import fs from "fs/promises"; - -export default async function handler( - req: NextApiRequest, - res: NextApiResponse -) { - if (req.method !== "POST") { - return res.status(405).json({ error: "Method not allowed" }); - } - - const filePath = path.join( - process.cwd(), - "apiMockData", - "SERVICE", - "analogInputsMockData.js" - ); - - try { - const { updates } = req.body; - - if (!Array.isArray(updates)) { - return res.status(400).json({ error: "Ungültige Datenstruktur" }); - } - - const raw = await fs.readFile(filePath, "utf-8"); - - // Teile den Inhalt in: - // 1. Vor dem ersten var - // 2. Die var-Zuweisungen (Arrays) - // 3. Nach dem letzten var (z. B. Block-Kommentare) - - const varRegex = /var\s+(\w+)\s*=\s*\[([\s\S]*?)\];/g; - let match; - - const updateMap: Record = {}; - const variableLines: string[] = []; - let matchStartIndexes: number[] = []; - - while ((match = varRegex.exec(raw)) !== null) { - const [fullMatch, key, valuesBlock] = match; - const values = valuesBlock - .split(",") - .map((v) => v.trim()) - .filter((v) => v.length > 0); - - updateMap[key] = values; - variableLines.push(fullMatch); - matchStartIndexes.push(match.index); - } - - // Kommentare vor und nach den Variablen extrahieren - const firstVarIndex = matchStartIndexes[0] ?? 0; - const lastVarMatch = variableLines[variableLines.length - 1] ?? ""; - const lastVarIndex = raw.lastIndexOf(lastVarMatch); - const commentsBefore = raw.slice(0, firstVarIndex).trim(); - const commentsAfter = raw.slice(lastVarIndex + lastVarMatch.length).trim(); - - // Updates anwenden - for (const { key, index, value } of updates) { - if (!updateMap[key]) { - console.warn(`⚠️ Schlüssel '${key}' fehlt – wird übersprungen`); - continue; - } - updateMap[key][index] = - typeof value === "string" ? `"${value}"` : value.toString(); - } - - // Arrays immer einzeilig schreiben - const variablesBlock = Object.entries(updateMap) - .map(([key, values]) => `var ${key} = [${values.join(", ")}];`) - .join("\n"); - - const finalContent = - [commentsBefore, variablesBlock, commentsAfter] - .filter(Boolean) - .join("\n\n") + "\n"; - - await fs.writeFile(filePath, finalContent, "utf-8"); - - res.status(200).json({ message: "Mockdaten gespeichert." }); - } catch (err) { - console.error("❌ Fehler beim Schreiben:", err); - res.status(500).json({ error: "Interner Serverfehler" }); - } -} diff --git a/pages/api/cpl/updateAnalogInputsSettingsHandler.ts b/pages/api/cpl/updateAnalogInputsSettingsHandler.ts new file mode 100644 index 0000000..9a6f535 --- /dev/null +++ b/pages/api/cpl/updateAnalogInputsSettingsHandler.ts @@ -0,0 +1,65 @@ +// /pages/api/cpl/updateAnalogInputsSettingsHandler.ts +import { NextApiRequest, NextApiResponse } from "next"; +import fs from "fs"; +import path from "path"; + +export default function handler(req: NextApiRequest, res: NextApiResponse) { + if (req.method !== "POST") { + return res.status(405).json({ error: "Method not allowed" }); + } + + const mode = process.env.NEXT_PUBLIC_CPL_MODE; + const updates = req.body.updates; + + if (!Array.isArray(updates)) { + return res.status(400).json({ error: "Missing or invalid updates array" }); + } + + if (mode === "json") { + const filePath = path.join( + process.cwd(), + "mocks/api/SERVICE/analogInputsMockData.json" + ); + const content = fs.readFileSync(filePath, "utf-8"); + const data = JSON.parse(content); + + for (const update of updates) { + const { key, index, value } = update; + if (Array.isArray(data[key]) && index < data[key].length) { + data[key][index] = value; + } + } + + fs.writeFileSync(filePath, JSON.stringify(data, null, 2), "utf-8"); + return res.status(200).json({ success: true }); + } + + if (mode === "jsmock") { + const filePath = path.join( + process.cwd(), + "mocks/device-cgi-simulator/SERVICE/analogInputsMockData.js" + ); + let content = fs.readFileSync(filePath, "utf-8"); + + for (const update of updates) { + const { key, index, value } = update; + const regex = new RegExp(`var\\s+${key}\\s*=\\s*\\[([\\s\\S]*?)\\];`); + const match = content.match(regex); + if (!match) continue; + + const items = match[1].split(",").map((s) => s.trim()); + if (index >= items.length) continue; + + const isString = typeof value === "string"; + items[index] = isString ? `"${value}"` : `${value}`; + + const updatedLine = `var ${key} = [${items.join(", ")}];`; + content = content.replace(regex, updatedLine); + } + + fs.writeFileSync(filePath, content, "utf-8"); + return res.status(200).json({ success: true }); + } + + return res.status(400).json({ error: "Unsupported mode" }); +} diff --git a/public/CPL/SERVICE/analogInputs.js b/public/CPL/SERVICE/analogInputs.js index 498e168..d584306 100644 --- a/public/CPL/SERVICE/analogInputs.js +++ b/public/CPL/SERVICE/analogInputs.js @@ -1,22 +1,22 @@ // /public/CPL/SERVICE/analogInputs.js //CGI-Variablen var win_analogInputsValues = [<%=AAV01%>,<%=AAV02%>,<%=AAV03%>,<%=AAV04%>,<%=AAV05%>,<%=AAV06%>,<%=AAV07%>,<%=AAV08%>]; -var win_analogInputsNames=[<%=ACN01%>,<%=ACN02%>,<%=ACN03%>,<%=ACN04%>,<%=ACN05%>,<%=ACN06%>,<%=ACN07%>,<%=ACN08%>]; +var win_analogInputsLabels=[<%=ACN01%>,<%=ACN02%>,<%=ACN03%>,<%=ACN04%>,<%=ACN05%>,<%=ACN06%>,<%=ACN07%>,<%=ACN08%>]; var win_analogInputsUnits=[<%=ACU01%>,<%=ACU02%>,<%=ACU03%>,<%=ACU04%>,<%=ACU05%>,<%=ACU06%>,<%=ACU07%>,<%=ACU08%>]; var win_analogInputsFactor=[<%=ACF01%>,<%=ACF02%>,<%=ACF03%>,<%=ACF04%>,<%=ACF05%>,<%=ACF06%>,<%=ACF07%>,<%=ACF08%>]; var win_analogInputsOffset=[<%=ACO01%>,<%=ACO02%>,<%=ACO03%>,<%=ACO04%>,<%=ACO05%>,<%=ACO06%>,<%=ACO07%>,<%=ACO08%>]; var win_analogInputsWeighting=[<%=ACS01%>,<%=ACS02%>,<%=ACS03%>,<%=ACS04%>,<%=ACS05%>,<%=ACS06%>,<%=ACS07%>,<%=ACS08%>]; -var win_analogInputsloggerIntervall =[<%=ACL01%>,<%=ACL02%>,<%=ACL03%>,<%=ACL04%>,<%=ACL05%>,<%=ACL06%>,<%=ACL07%>,<%=ACL08%>]; +var win_analogInputsLoggerIntervall =[<%=ACL01%>,<%=ACL02%>,<%=ACL03%>,<%=ACL04%>,<%=ACL05%>,<%=ACL06%>,<%=ACL07%>,<%=ACL08%>]; // CGI responsive Variablen /* var win_analogInputsValues = [4.771072,5.665244,0.005467,-0.007468,0.000002,0.000001,0.000001,0.000007]; -var win_analogInputsNames=['AE 1','AE 2','AE 3','AE 4','AE 5','AE 6','AE 7','AE 8']; +var win_analogInputsLabels=['AE 1','AE 2','AE 3','AE 4','AE 5','AE 6','AE 7','AE 8']; var win_analogInputsUnits=['V','V','V','V','mA','mA','mA','mA']; var win_analogInputsFactor=[1.000,1.000,1.000,1.000,1.000,1.000,1.000,1.000]; var win_analogInputsOffset=[0.000,0.000,0.000,0.000,0.000,0.000,0.000,0.000]; var win_analogInputsWeighting=[0,0,0,0,0,0,0,0]; -var win_analogInputsloggerIntervall =[10,10,10,10,10,10,10,10]; +var win_analogInputsLoggerIntervall =[10,10,10,10,10,10,10,10]; /* Kontext: Messwert diff --git a/services/fetchAnalogInputsService.ts b/services/fetchAnalogInputsService.ts index b75b280..10acb1c 100644 --- a/services/fetchAnalogInputsService.ts +++ b/services/fetchAnalogInputsService.ts @@ -20,11 +20,11 @@ export const fetchAnalogInputsService = async () => { return Array.from({ length: 8 }, (_, i) => ({ id: i + 1, value: parseFloat(win.win_analogInputsValues[i]), - label: win.win_analogInputsNames[i], + label: win.win_analogInputsLabels[i], unit: win.win_analogInputsUnits[i], offset: parseFloat(win.win_analogInputsOffset[i]), factor: parseFloat(win.win_analogInputsFactor[i]), - interval: parseInt(win.win_analogInputsloggerIntervall[i]), + interval: parseInt(win.win_analogInputsLoggerIntervall[i]), weighting: parseInt(win.win_analogInputsWeighting[i]), })); } else { @@ -36,11 +36,11 @@ export const fetchAnalogInputsService = async () => { return data.win_analogInputsValues.map((value: number, i: number) => ({ id: i + 1, value, - label: data.win_analogInputsNames[i], + label: data.win_analogInputsLabels[i], unit: data.win_analogInputsUnits[i], offset: parseFloat(data.win_analogInputsOffset[i]), factor: parseFloat(data.win_analogInputsFactor[i]), - interval: parseInt(data.win_analogInputsloggerIntervall[i]), + interval: parseInt(data.win_analogInputsLoggerIntervall[i]), weighting: parseInt(data.win_analogInputsWeighting[i]), })); }