feat: Implement blinking icon for "PST-M prüfen" alarm
- Added blinking icon functionality to "PST-M prüfen" alarm status for consistency with other alarm statuses. - Refactored display logic to prioritize "PST-M prüfen" with icon blink effect in the interval. - Ensured proper interval clearing for consistent display across alarm updates.
This commit is contained in:
@@ -309,6 +309,12 @@ function Kue705FO({
|
||||
return () => clearInterval(interval);
|
||||
}, [slotIndex, kueAlarm1, kueAlarm2, kueCableBreak, kueGroundFault]);
|
||||
|
||||
useEffect(() => {
|
||||
if (reduxKueVersion?.[slotIndex]) {
|
||||
setKueVersion("V" + reduxKueVersion[slotIndex] / 100);
|
||||
}
|
||||
}, [slotIndex, reduxKueVersion]);
|
||||
//---------------------------------------------------
|
||||
// Funktion zum Aktualisieren der Anzeige basierend auf dem Alarmstatus mit Icon und Blinken
|
||||
useEffect(() => {
|
||||
let intervalId;
|
||||
@@ -326,13 +332,13 @@ function Kue705FO({
|
||||
text
|
||||
)
|
||||
);
|
||||
}, 5000); // Gesamtdauer von 7 Sekunden für einen vollständigen Blink-Zyklus
|
||||
}, 7000); // Beispiel-Zyklus für 7 Sekunden
|
||||
};
|
||||
|
||||
// Alarmanzeige je nach Status aktualisieren
|
||||
// Priorisierte Alarmanzeige
|
||||
if (kuePSTmMinus96V?.[slotIndex] === 1) {
|
||||
clearInterval(intervalId); // Vorheriges Intervall stoppen
|
||||
setCurrentDisplayValue("PST-M prüfen");
|
||||
clearInterval(intervalId); // Stoppt das vorherige Intervall, falls aktiv
|
||||
setBlinkingText("PST-M prüfen");
|
||||
} else if (kueCableBreak?.[slotIndex] === 1) {
|
||||
clearInterval(intervalId);
|
||||
setBlinkingText(isoDisplayText);
|
||||
@@ -347,13 +353,13 @@ function Kue705FO({
|
||||
setBlinkingText(loopFaultDisplayText);
|
||||
} else if (kueOverflow?.[slotIndex] === 1) {
|
||||
clearInterval(intervalId);
|
||||
setBlinkingText(isoGreaterThan200);
|
||||
setCurrentDisplayValue(isoGreaterThan200);
|
||||
} else {
|
||||
clearInterval(intervalId);
|
||||
setCurrentDisplayValue(isolationswert); // Kein Alarm aktiv
|
||||
setCurrentDisplayValue(isolationswert); // Standardanzeige
|
||||
}
|
||||
|
||||
// Cleanup, um das Intervall zu stoppen, wenn sich der Status ändert oder der Effekt aufgeräumt wird
|
||||
// Cleanup bei Änderungen des Status oder Schließen des Effekts
|
||||
return () => clearInterval(intervalId);
|
||||
}, [
|
||||
slotIndex,
|
||||
@@ -371,12 +377,7 @@ function Kue705FO({
|
||||
kueOverflow,
|
||||
]);
|
||||
|
||||
useEffect(() => {
|
||||
if (reduxKueVersion?.[slotIndex]) {
|
||||
setKueVersion("V" + reduxKueVersion[slotIndex] / 100);
|
||||
}
|
||||
}, [slotIndex, reduxKueVersion]);
|
||||
|
||||
//---------------------------------------------------
|
||||
return (
|
||||
<div className="relative bg-gray-300 w-[116px] h-[390px] border border-gray-400 scale-110 top-3">
|
||||
{kueOnline === 1 ? (
|
||||
|
||||
@@ -9,7 +9,7 @@ var win_kueOnline = [
|
||||
Das kann sein, muss aber nicht. Hier unten im Testaufbau haben wir nur eine PST-M für alle 32 Kabelüberwachungen. Es kann aber sein das beim Kunden auch für jeden BGT eine PST-M vorhanden ist, also insgesamt 4 Stück.
|
||||
*/
|
||||
var win_kuePSTmMinus96V = [
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0,
|
||||
];
|
||||
//Aderbruch 1 = Fehler, 0 = kein Fehler
|
||||
|
||||
@@ -21,6 +21,7 @@ const initialState = {
|
||||
kueOnline: [],
|
||||
kueID: [],
|
||||
kueIso: [],
|
||||
kuePSTmMinus96V: [],
|
||||
kueAlarm1: [],
|
||||
kueAlarm2: [],
|
||||
kueRes: [],
|
||||
|
||||
@@ -21,6 +21,7 @@ export async function loadWindowVariables() {
|
||||
"win_flutter",
|
||||
"win_kueOnline",
|
||||
"win_kueID",
|
||||
"win_kuePSTmMinus96V",
|
||||
"win_kueAlarm1",
|
||||
"win_kueAlarm2",
|
||||
"win_kueIso",
|
||||
|
||||
Reference in New Issue
Block a user