Przeglądaj źródła

继电器--开关逻辑优化

qidingqiang 5 miesięcy temu
rodzic
commit
9997f093c9

+ 9 - 7
zd-modules/zd-modules-laboratory/src/main/java/com/zd/laboratory/utils/RelayUtils.java

@@ -64,17 +64,19 @@ public class RelayUtils {
         } else if (ATCommandValidator.isCommandValid(data)) {
             // 提取操作位数
             String bit = ATCommandValidator.extractNumber(data);
-
+            LabRelayStatus labRelayStatus = new LabRelayStatus();
             // 判断继电器状态(开/关) true 开发  false 关
-            HardwareOperate command = ATCommandValidator.checkCommand(data) ?
-                    HardwareOperate.OPEN : HardwareOperate.CLOSE;
-
+           Integer command = ATCommandValidator.checkCommand(data) ?
+                    RelayConstants.AT_OPEN : RelayConstants.AT_CLOSE;
+           if (command.equals(RelayConstants.AT_OPEN)) {
+               labRelayStatus.setHardwareOperate(HardwareOperate.OPEN);
+           }else {
+               labRelayStatus.setHardwareOperate(HardwareOperate.CLOSE);
+           }
             // 记录操作日志并构建JSON对象
-            log.info("relayOpenClose继电器{}操作: 设备编号={}, 操作位={}", data, relayCode, bit);
-            LabRelayStatus labRelayStatus = new LabRelayStatus();
+            log.info("relayOpenClose继电器{}操作: 设备编号={}, 操作位={},command={}", data, relayCode, bit,command);
             labRelayStatus.setNum(relayCode);
             labRelayStatus.setBit(Integer.valueOf(bit));
-            labRelayStatus.setHardwareOperate(command);
             // 发布设备开关切换事件
             LabRelayNrStatusEvent event = new LabRelayNrStatusEvent(labRelayStatus);
             SpringUtils.getApplicationContext().publishEvent(event);