fix:三相输入缺相,缺相无告警,bug修复。
This commit is contained in:
@@ -1399,7 +1399,30 @@ public class DeviceDataHandler {
|
||||
String message = null;
|
||||
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) {
|
||||
// 三相开关输出缺相
|
||||
int tempIndex = errorCode - DefineDeviceErrorCode.Three_Switch1LosePhaseA;
|
||||
|
||||
Reference in New Issue
Block a user