From d78515ac4ac8cf4a1785d9df18058d6724f12b79 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 14 一月 2021 19:34:59 +0800
Subject: [PATCH] 合并xm2021-01-13  wjc2021-02-06

---
 ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs |   60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 57 insertions(+), 3 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs
index 41d5c74..3d9b62d 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs
@@ -784,8 +784,30 @@
             //鍙湁鍥炶矾鏁板ぇ浜�1鎵嶈兘鏈夎繖涓彍鍗�
             if (Common.LocalDevice.Current.GetDevicesCountByMac(listNewDevice[0].DeviceAddr) == 1)
             {
-                //鏂伴灏忔ā鍧楀彧鏈変竴涓洖璺紝浣嗚姹傛柊椋庡皬妯″潡鐨勬柊椋庢湁鍔熻兘璁剧疆
-                if (deviceEnumInfo.ConcreteType != DeviceConcreteType.Relay_FangyueFreshAirModul)
+                //绌烘皵璐ㄩ噺浼犳劅鍣ㄥ拰鏂伴灏忔ā鍧楀彧鏈変竴涓洖璺紝浣嗚姹傛柊椋庡皬妯″潡鐨勬柊椋庢湁鍔熻兘璁剧疆
+                //鏅捐。鏋堕粯璁ゅ彧瀛樺偍绗竴鍥炶矾锛屽叾浠栧洖璺杩囨护浜�
+                bool isSpecial = false;
+                if (deviceEnumInfo.ConcreteType == DeviceConcreteType.Relay_FangyueFreshAirModul ||
+                    deviceEnumInfo.ConcreteType == DeviceConcreteType.AirQualitySensor)
+                {
+                    isSpecial = true;
+                }
+                if (deviceEnumInfo.ConcreteType == DeviceConcreteType.Airer)
+                {
+                    isSpecial = true;
+                    var dev = listNewDevice[0];
+                    //鏅捐。鏋堕粯璁ゅ彧瀛樺偍绗竴鍥炶矾锛屽叾浠栧洖璺湪鍔熻兘鐣岄潰闇�瑕佽鍙栨椂闂达紝鎵�浠ユ彁鍓嶄竴涓晫闈㈣幏鍙�
+                    //绗竴鐗堟椂闂村姛鑳界敱浜庤澶囦笉鏀寔锛屾殏鏃跺幓鎺夛紝鍚庢湡鎵嶅姞涓�
+                    //for (int i = 3; i < 6; i++)
+                    //{
+                    //  //娉ㄦ剰锛岃。鏋朵腑鐨勭姸鎬佺敱涓嶅悓绔偣鑾峰彇
+                    //  //鍥炶矾3:璇诲彇椋庡共寮�鍏崇姸鎬佸拰鏃堕棿鍊� 
+                    //  //鍥炶矾4:璇诲彇鐑樺共寮�鍏崇姸鎬佸拰鏃堕棿鍊�
+                    //  //鍥炶矾5:璇诲彇娑堟瘨寮�鍏崇姸鎬佸拰鏃堕棿鍊�
+                    //  HdlDeviceAttributeLogic.Current.SendAirerComand(dev, i);
+                    //}
+                }
+                if (!isSpecial)
                 {
                     return;
                 }
@@ -1179,6 +1201,7 @@
                         if (string.IsNullOrEmpty(bindName))
                         {
                             btnHumidityStatu.Text = Language.StringByID(R.MyInternationalizationString.nothing);
+                            bindHumidityDev = null;
                         }
                         else
                         {
@@ -1230,6 +1253,7 @@
                         if (string.IsNullOrEmpty(bindName))
                         {
                             btnTemperatureStatu.Text = Language.StringByID(R.MyInternationalizationString.nothing);
+                            bindTemperatureDev = null;
                         }
                         else
                         {
@@ -1313,6 +1337,8 @@
                     {
                         continue;
                     }
+                    //鑾峰彇璁惧绫诲瀷鐨�
+                    var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { device });
                     if (device.Type == DeviceType.TemperatureSensor)
                     {
                         var bD = device as TemperatureSensor;
@@ -1326,11 +1352,39 @@
                             bindHumidityName = Common.LocalDevice.Current.GetDeviceEpointName(device);
                             bindHumidityDev = device;
                         }
+
+                        //绌烘皵璐ㄩ噺浼犳劅鍣�
+                        if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                        {
+                            if (bDev.BindCluster == 1026)
+                            {
+                                bindTemperatureName = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
+                                bindTemperatureDev = device;
+                            }
+                            if (bDev.BindCluster == 1029)
+                            {
+                                bindHumidityName = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
+                                bindHumidityDev = device;
+                            }
+                        }
                     }
                     if (device.Type == DeviceType.FreshAirHumiditySensor)
                     {
                         bindHumidityName = Common.LocalDevice.Current.GetDeviceEpointName(device);
                         bindHumidityDev = device;
+                    }
+                    else if (device.Type == DeviceType.PMSensor)
+                    {
+                        if (bDev.BindCluster == 1026)
+                        {
+                            bindTemperatureName = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.TemperatureSensor);
+                            bindTemperatureDev = device;
+                        }
+                        if (bDev.BindCluster == 1029)
+                        {
+                            bindHumidityName = Common.LocalDevice.Current.GetDeviceEpointName(device) + "-" + Language.StringByID(R.MyInternationalizationString.HumiditySensor);
+                            bindHumidityDev = device;
+                        }
                     }
                 }
                 result = true;
@@ -1581,7 +1635,7 @@
                         }
                     }, ShowErrorMode.NO);
                 }
-            });
+            }, ShowErrorMode.NO);
         }
 
         #endregion

--
Gitblit v1.8.0