fix:三相输入缺相,缺相无告警,bug修复。

This commit is contained in:
tianyongbao
2026-04-14 22:31:02 +08:00
parent 9eb2ec90c6
commit 07495f9270

View File

@@ -1399,7 +1399,30 @@ public class DeviceDataHandler {
String message = null; String message = null;
int switchIndex = 0; int switchIndex = 0;
if (errorCode >= DefineDeviceErrorCode.Three_Switch1LosePhaseA if (errorCode >= DefineDeviceErrorCode.Three_InputLosePhaseA
&& errorCode <= DefineDeviceErrorCode.Three_InputLosePhaseC) {
// 三相输入缺相1001-1003强制关闭所有4路开关
String phaseName = DefineDeviceErrorCode.getPhaseName(errorCode - DefineDeviceErrorCode.Three_InputLosePhaseA);
for (int i = 1; i <= 4; i++) {
forceSwitchOff(device, i);
}
if (warnTrigger) {
title = "控制器输入缺相";
message = String.format("%s塘口中%s(%s)输入缺%s相",
pondName, displayName, device.getSerialNum(), phaseName);
}
} else if (errorCode >= DefineDeviceErrorCode.Three_PhaseA_OverVoltage
&& errorCode <= DefineDeviceErrorCode.Three_PhaseC_UnderVoltage) {
// 三相过压欠压1004-1009不强制关闭开关
boolean isOver = (errorCode - DefineDeviceErrorCode.Three_PhaseA_OverVoltage) % 2 == 0;
int phaseIndex = (errorCode - DefineDeviceErrorCode.Three_PhaseA_OverVoltage) / 2;
String phaseName = DefineDeviceErrorCode.getPhaseName(phaseIndex);
if (warnTrigger) {
title = isOver ? "控制器输入过压" : "控制器输入欠压";
message = String.format("%s塘口中%s(%s)%s相%s",
pondName, displayName, device.getSerialNum(), phaseName, isOver ? "过压" : "欠压");
}
} else if (errorCode >= DefineDeviceErrorCode.Three_Switch1LosePhaseA
&& errorCode <= DefineDeviceErrorCode.Three_Switch4LosePhaseC) { && errorCode <= DefineDeviceErrorCode.Three_Switch4LosePhaseC) {
// 三相开关输出缺相 // 三相开关输出缺相
int tempIndex = errorCode - DefineDeviceErrorCode.Three_Switch1LosePhaseA; int tempIndex = errorCode - DefineDeviceErrorCode.Three_Switch1LosePhaseA;