Digitale Ausgänge nicht erforderlich

This commit is contained in:
ISA
2025-04-03 08:02:02 +02:00
parent c973e85ce3
commit 2f631e80be
18 changed files with 41 additions and 21 deletions

View File

@@ -6,5 +6,5 @@
2: Patch oder Hotfix (Bugfixes oder kleine Änderungen). 2: Patch oder Hotfix (Bugfixes oder kleine Änderungen).
*/ */
const webVersion = "1.6.207"; const webVersion = "1.6.208";
export default webVersion; export default webVersion;

12
docsForDev/DECISIONS.md Normal file
View File

@@ -0,0 +1,12 @@
## Entscheidung: Digitale Ausgänge (da.js)
**Datum:** 03.04.2025
**Gesprächspartner:** Kai
**Inhalt:**
Digitale Ausgänge (da.js) sind aktuell **nicht erforderlich**. Diese Funktion wird in einer späteren Version umgesetzt, weil sie derzeit nicht im Fokus der Deadline steht.
**Notiz für spätere Version:**
Digitale Ausgänge können über eine spätere Erweiterung integriert werden, z.B. nach Version 1.0.0.
---

View File

@@ -71,7 +71,10 @@ const EinAusgaenge: React.FC = () => {
openInputModal={openInputModal} openInputModal={openInputModal}
inputRange={{ start: 16, end: 32 }} inputRange={{ start: 16, end: 32 }}
/> />
{/* Digitale Ausgänge nicht Erforderlich*/}
{/*
<DigitalOutputs openOutputModal={openOutputModal} /> <DigitalOutputs openOutputModal={openOutputModal} />
*/}
</div> </div>
{isInputModalOpen && selectedInput && ( {isInputModalOpen && selectedInput && (

View File

@@ -1,3 +1,10 @@
// Digitale Ausgänge Ausgang Bezeichnung und Zustand
var win_da=[<%=DES80%>,<%=DES81%>,<%=DES82%>,<%=DES83%>];
var win_da_state=[<%=DES80%>,<%=DES81%>,<%=DES82%>,<%=DES83%>];
var win_da_bezeichnung=["Augang1","Ausgang2","Ausgang3","Ausgang4"]; // weil es gibt noch kein Platzhalter

View File

@@ -3,7 +3,6 @@
export const fetchDigitalOutputs = async () => { export const fetchDigitalOutputs = async () => {
if (typeof window === "undefined") return []; if (typeof window === "undefined") return [];
// ✅ da.js nur bei Bedarf nachladen (Pfad abhängig von Umgebung)
const scriptSrc = const scriptSrc =
process.env.NEXT_PUBLIC_NODE_ENV === "production" process.env.NEXT_PUBLIC_NODE_ENV === "production"
? "/CPL?/CPL/SERVICE/da.js" ? "/CPL?/CPL/SERVICE/da.js"
@@ -19,25 +18,24 @@ export const fetchDigitalOutputs = async () => {
}); });
const win = window as any; const win = window as any;
const state = win.win_da_state; const state = win.win_da_state;
const labels = win.win_da_bezeichnung; const labels = win.win_da_bezeichnung;
if ( if (!Array.isArray(state)) {
Array.isArray(state) && console.warn("⚠️ win_da_state fehlt oder ist ungültig:", state);
Array.isArray(labels) &&
state.length === labels.length
) {
return state.map((status: number, index: number) => ({
id: index + 1,
label: labels[index] || `Ausgang ${index + 1}`,
status: status === 1,
}));
} else {
console.warn("⚠️ Digitale Ausgänge unvollständig oder inkonsistent:", {
state,
labels,
});
return []; return [];
} }
const outputs = state
.slice(0, 4) // ✅ Nur die 4 Ausgänge verwenden
.map((status: number, index: number) => ({
id: index + 1,
label:
Array.isArray(labels) && labels[index]
? labels[index]
: `Ausgang ${index + 1}`,
status: status === 1,
}));
return outputs;
}; };