From db21de901bb1bbc6ec66b59e7b0766d0d2c5c6cc Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期二, 16 七月 2019 13:54:44 +0800
Subject: [PATCH] 20190716 1.提供声必可SDK,部分数据处理调整; 2.演示DemoAPP,地热和新风页面调整;

---
 hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLFreshAir/Parser/FreshAirParser.java |   62 +++++++++++++++++-------------
 1 files changed, 35 insertions(+), 27 deletions(-)

diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLFreshAir/Parser/FreshAirParser.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLFreshAir/Parser/FreshAirParser.java
index 4c9b432..88e7b29 100644
--- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLFreshAir/Parser/FreshAirParser.java
+++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLAppliances/HDLFreshAir/Parser/FreshAirParser.java
@@ -33,37 +33,43 @@
             return new byte[]{fail};
         }
 
-        AppliancesInfo newInfo = null;
-        byte[] freshAirBytes = null;
+        try {
+            AppliancesInfo newInfo = null;
+            byte[] freshAirBytes = null;
 
-        outter:
-        for (int i = 0; i < HDLDeviceManager.devicesDataList.size(); i++) {
-            if (appliancesInfo.getDeviceSubnetID() == HDLDeviceManager.devicesDataList.get(i).getSourceSubnetID()
-                    && appliancesInfo.getDeviceDeviceID() == HDLDeviceManager.devicesDataList.get(i).getSourceDeviceID()) {
-                for (int j = 0; j < HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().size(); j++) {
-                    if (HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j).getBigType() == Configuration.AIR_BIG_TYPE
-                            && HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j).getDeviceType() != HDLApConfig.TYPE_AC_PANEL
-                            && appliancesInfo.getChannelNum() == HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j).getChannelNum()) {
-                        newInfo = HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j);
-                        if (newInfo.getFeedbackState() == null) {
-                            newInfo.setFeedbackState(new byte[30]);
+            outter:
+            for (int i = 0; i < HDLDeviceManager.devicesDataList.size(); i++) {
+                if (appliancesInfo.getDeviceSubnetID() == HDLDeviceManager.devicesDataList.get(i).getSourceSubnetID()
+                        && appliancesInfo.getDeviceDeviceID() == HDLDeviceManager.devicesDataList.get(i).getSourceDeviceID()) {
+                    for (int j = 0; j < HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().size(); j++) {
+                        if (HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j).getBigType() == Configuration.FRESH_AIR_BIG_TYPE
+                                && HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j).getDeviceType() == HDLApConfig.TYPE_FRESH_AIR
+                                && appliancesInfo.getChannelNum() == HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j).getChannelNum()) {
+                            newInfo = HDLDeviceManager.devicesDataList.get(i).getAppliancesInfoList().get(j);
+                            if (newInfo.getFeedbackState() == null) {
+                                newInfo.setFeedbackState(new byte[30]);
+                            }
+                            freshAirBytes = newInfo.getFeedbackState();
+                            break outter;
                         }
-                        break outter;
-                    }
 
+                    }
                 }
             }
-        }
 
-
-        freshAirBytes = newInfo.getFeedbackState();
-
-        if (freshAirBytes != null && freshAirBytes.length >= 4) {
             byte[] addBytes = new byte[4];
-            addBytes[0] = (byte) appliancesInfo.getChannelNum();
-            addBytes[1] = freshAirBytes[1];
-            addBytes[2] = freshAirBytes[2];
-            addBytes[3] = freshAirBytes[3];
+            if (freshAirBytes != null && freshAirBytes.length >= 4) {
+                addBytes[0] = (byte) appliancesInfo.getChannelNum();
+                addBytes[1] = freshAirBytes[1];
+                addBytes[2] = freshAirBytes[2];
+                addBytes[3] = freshAirBytes[3];
+
+            } else {
+                addBytes[0] = (byte) appliancesInfo.getChannelNum();
+                addBytes[1] = 0;//鍙戦�侀粯璁ゅ弬鏁�
+                addBytes[2] = 0;
+                addBytes[3] = 0;
+            }
 
             switch (type) {
                 case freshAirSwich:
@@ -74,16 +80,18 @@
                     }
                     break;
                 case freshAirSpeed:
+                    addBytes[1] = 1;//鎵撳紑鎿嶄綔
                     addBytes[2] = (byte) state;
-
                     break;
                 case freshAirMode:
+                    addBytes[1] = 1;//鎵撳紑鎿嶄綔
                     addBytes[3] = (byte) state;
                     break;
             }
             return addBytes;
-        } else {
-            return null;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return new byte[]{fail};
         }
 
     }

--
Gitblit v1.8.0