From 2d8962eda3beb6413a83359e0454f039fd2b5d32 Mon Sep 17 00:00:00 2001 From: ISA Date: Wed, 22 Jan 2025 11:26:10 +0100 Subject: [PATCH] =?UTF-8?q?digitale=20Ein-=20und=20Ausg=C3=A4nge=20,=20noc?= =?UTF-8?q?h=20kein=20Invertierung?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/Navigation.jsx | 1 + pages/einausgaenge.js | 291 +++++++++++++++++++------------------- 2 files changed, 146 insertions(+), 146 deletions(-) diff --git a/components/Navigation.jsx b/components/Navigation.jsx index 0c4356d..8fca11f 100644 --- a/components/Navigation.jsx +++ b/components/Navigation.jsx @@ -20,6 +20,7 @@ function Navigation() { const menuItems = [ { name: "Übersicht", path: "/dashboard" }, { name: "Kabelüberwachung", path: "/kabelueberwachung" }, + { name: "Ein- und Ausgänge", path: "/einausgaenge" }, // Weitere Menüpunkte hier ]; diff --git a/pages/einausgaenge.js b/pages/einausgaenge.js index 72caea2..816be76 100644 --- a/pages/einausgaenge.js +++ b/pages/einausgaenge.js @@ -1,161 +1,160 @@ -"use client"; -import React, { useState } from "react"; +"use client"; // Falls notwendig +import React from "react"; +import { Icon } from "@iconify/react"; -function Einausgaenge() { - // Beispiel-Daten für Ein- und Ausgänge (kannst du durch deine Daten ersetzen) - const inputs = [ - { - id: 1, - name: "Eingang 1", - status: "Aktiv", - description: "Beschreibung 1", - }, - { - id: 2, - name: "Eingang 2", - status: "Inaktiv", - description: "Beschreibung 2", - }, - { - id: 3, - name: "Eingang 3", - status: "Aktiv", - description: "Beschreibung 3", - }, - { - id: 4, - name: "Eingang 4", - status: "Inaktiv", - description: "Beschreibung 4", - }, +function EinAusgaenge() { + const digitalInputs = [ + { id: 1, status: "active", description: "100V-Ausfall" }, + { id: 2, status: "inactive", description: "DE2" }, + { id: 3, status: "active", description: "DE3" }, + { id: 4, status: "inactive", description: "DE4" }, + { id: 5, status: "active", description: "DE5" }, + { id: 6, status: "inactive", description: "DE6" }, + { id: 7, status: "active", description: "DE7" }, + { id: 8, status: "inactive", description: "DE8" }, + { id: 9, status: "active", description: "DE9" }, + { id: 10, status: "inactive", description: "DE10" }, + { id: 11, status: "active", description: "DE11" }, + { id: 12, status: "inactive", description: "DE12" }, + { id: 13, status: "active", description: "DE13" }, + { id: 14, status: "inactive", description: "DE14" }, + { id: 15, status: "active", description: "DE15" }, + { id: 16, status: "inactive", description: "DE16" }, + { id: 17, status: "active", description: "DE17" }, + { id: 18, status: "inactive", description: "DE18" }, + { id: 19, status: "active", description: "DE19" }, + { id: 20, status: "inactive", description: "DE20" }, + { id: 21, status: "active", description: "DE21" }, + { id: 22, status: "inactive", description: "DE22" }, + { id: 23, status: "active", description: "DE23" }, + { id: 24, status: "inactive", description: "DE24" }, + { id: 25, status: "active", description: "DE25" }, + { id: 26, status: "inactive", description: "DE26" }, + { id: 27, status: "active", description: "DE27" }, + { id: 28, status: "inactive", description: "DE28" }, + { id: 29, status: "active", description: "DE29" }, + { id: 30, status: "inactive", description: "DE30" }, + { id: 31, status: "active", description: "DE31" }, + { id: 32, status: "inactive", description: "DE32" }, ]; - const outputs = [ - { - id: 1, - name: "Ausgang 1", - status: "Aktiv", - description: "Beschreibung 1", - }, - { - id: 2, - name: "Ausgang 2", - status: "Inaktiv", - description: "Beschreibung 2", - }, - { - id: 3, - name: "Ausgang 3", - status: "Aktiv", - description: "Beschreibung 3", - }, - { - id: 4, - name: "Ausgang 4", - status: "Inaktiv", - description: "Beschreibung 4", - }, + const digitalOutputs = [ + { id: 1, description: "Ausgang1", toggle: true }, + { id: 2, description: "Ausgang2", toggle: false }, + { id: 3, description: "Ausgang3", toggle: true }, + { id: 4, description: "Ausgang4", toggle: false }, + // Weitere Einträge ]; - // Zustand für aktiven Tab (Ein- oder Ausgänge) - const [activeTab, setActiveTab] = useState("inputs"); + // Aufteilen der Eingänge in zwei Gruppen + const inputsGroup1 = digitalInputs.slice(0, 16); + const inputsGroup2 = digitalInputs.slice(16); return ( -
- {/* Tabs für Ein- und Ausgänge */} - - - {/* Inhalt für die aktiven Tabs */} -
- {activeTab === "inputs" && ( -
-

Eingänge

- - - - - - - - - - - {inputs.map((input) => ( - - - - - - - ))} - -
IDNameStatusBeschreibung
{input.id}{input.name}{input.status}{input.description}
+
+

Ein- und Ausgänge

+
+ {/* Digitale Eingänge */} +
+

+ + Digitale Eingänge +

+
+ {[inputsGroup1, inputsGroup2].map((group, index) => ( +
+ + + + + + + + + + + {group.map((input) => ( + + + + + + + ))} + +
EingangZustandBezeichnungAktion
+ {" "} + + {input.id} + + {input.status === "active" ? "●" : "⨉"} + {input.description} + +
+
+ ))}
- )} +
- {activeTab === "outputs" && ( -
-

Ausgänge

- - - - - - - + {/* Digitale Ausgänge */} +
+

+ + Digitale Ausgänge +

+
IDNameStatusBeschreibung
+ + + + + + + + + + {digitalOutputs.map((output) => ( + + + + + - - - {outputs.map((output) => ( - - - - - - - ))} - -
AusgangBezeichnungSchalterAktion
+ + {output.id} + {output.description} + + + +
{output.id}{output.name}{output.status} - {output.description} -
-
- )} + ))} + + +
); } -export default Einausgaenge; +export default EinAusgaenge;