From 0c5f9c3c457e5f844ee4b4de4d862b843ea2e8ba Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 19 Dec 2024 16:08:11 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E5=A4=8D=E7=BE=8E=E7=9A=84?= =?UTF-8?q?=E7=83=AD=E6=B3=B5=E6=97=B6=E9=97=B4=E8=AE=BE=E7=BD=AE=E8=AF=BB?= =?UTF-8?q?=E5=8F=96=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mh/user/service/impl/DeviceControlServiceImpl.java | 9 +++++++++ .../main/java/com/mh/user/strategy/HeatPumpStrategy.java | 5 ++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java b/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java index e1b6331..6370e98 100644 --- a/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java +++ b/user-service/src/main/java/com/mh/user/service/impl/DeviceControlServiceImpl.java @@ -400,6 +400,15 @@ public class DeviceControlServiceImpl implements DeviceControlService { if (rtData.length() == 8) { String statTime = rtData.substring(0, 2) + ":" + rtData.substring(2, 4); String closeTime = rtData.substring(4, 6) + ":" + rtData.substring(6, 8); + if ("美的".equals(deviceCodeParam.getBrand())) { + String convertData = ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.hexToDec(rtData.substring(0, 2)), 2) + + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.hexToDec(rtData.substring(2, 4)), 2) + + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.hexToDec(rtData.substring(4, 6)), 2) + + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.hexToDec(rtData.substring(6, 8)), 2); + statTime = convertData.substring(0, 2) + ":" + convertData.substring(2, 4); + closeTime = convertData.substring(4, 6) + ":" + convertData.substring(6, 8); + rtData = convertData; + } if ("时段1".equals(deviceCodeParam.getParam())) { pumpData.setStartTime1(statTime); pumpData.setCloseTime1(closeTime); diff --git a/user-service/src/main/java/com/mh/user/strategy/HeatPumpStrategy.java b/user-service/src/main/java/com/mh/user/strategy/HeatPumpStrategy.java index aa00217..9e1ee47 100644 --- a/user-service/src/main/java/com/mh/user/strategy/HeatPumpStrategy.java +++ b/user-service/src/main/java/com/mh/user/strategy/HeatPumpStrategy.java @@ -83,7 +83,10 @@ public class HeatPumpStrategy implements DeviceStrategy { str = str + "100642000102" + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.decToHex(String.valueOf(dataValue)), 4); //写,待测试 } else { if (dataValue.length() == 8) { - String strData = "00" + dataValue.substring(0, 2) + "00" + dataValue.substring(2, 4) + "00" + dataValue.substring(4, 6) + "00" + dataValue.substring(6, 8); + String strData = "00" + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.decToHex(dataValue.substring(0, 2)), 2) + + "00" + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.decToHex(dataValue.substring(2, 4)), 2) + + "00" + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.decToHex(dataValue.substring(4, 6)), 2) + + "00" + ExchangeStringUtil.addZeroForNum(ExchangeStringUtil.decToHex(dataValue.substring(6, 8)), 2); if (registerAddr.equalsIgnoreCase("0656")) {//时段1 str = str + "100656000408" + strData; //写 } else if (registerAddr.equalsIgnoreCase("065A")) {//时段2