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/Bind/BindInfo.cs |  145 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 143 insertions(+), 2 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindInfo.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindInfo.cs
index 80f0596..7c1caca 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindInfo.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/BindInfo.cs
@@ -41,6 +41,10 @@
             /// 鍦版殩鐩爣
             /// </summary>
             Fh = 6,
+            /// <summary>
+            /// 鍦癈O2鏆栫洰鏍�
+            /// </summary>
+            CO2 = 7,
         }
 
         #endregion
@@ -171,6 +175,17 @@
                             {
                                 curRoomDeviceListTemp.Add(device);
                             }
+
+                            if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                            {
+                                //鑾峰彇璁惧绫诲瀷
+                                var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                                //绌烘皵璐ㄩ噺浼犳劅鍣�
+                                if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                                {
+                                    curRoomDeviceListTemp.Add(device);
+                                }
+                            }
                         }
                     }
                     break;
@@ -187,6 +202,25 @@
                                     continue;
                                 }
                                 curRoomDeviceListTemp.Add(device);
+                            }
+                        }
+                    }
+                    break;
+                case BindType.CO2:
+                    foreach (var deviceKeys in curRoom.ListDevice)
+                    {
+                        var device = LocalDevice.Current.GetDevice(deviceKeys);
+                        if (device != null)
+                        {
+                            if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                            {
+                                //鑾峰彇璁惧绫诲瀷
+                                var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                                //绌烘皵璐ㄩ噺浼犳劅鍣�
+                                if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                                {
+                                    curRoomDeviceListTemp.Add(device);
+                                }
                             }
                         }
                     }
@@ -265,6 +299,14 @@
                             continue;
                         }
                         if (dev.SensorDiv == 2)
+                        {
+                            roomIncludeMatchHumpDevice.Add(device);
+                        }
+
+                        //鑾峰彇璁惧绫诲瀷
+                        var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                        //绌烘皵璐ㄩ噺浼犳劅鍣�
+                        if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
                         {
                             roomIncludeMatchHumpDevice.Add(device);
                         }
@@ -397,6 +439,16 @@
                                     {
                                         roomIncludeMatchDevice.Add(device);
                                     }
+                                    else if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                                    {
+                                        //鑾峰彇璁惧绫诲瀷
+                                        var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                                        //绌烘皵璐ㄩ噺浼犳劅鍣�
+                                        if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                                        {
+                                            roomIncludeMatchDevice.Add(device);
+                                        }
+                                    }
                                 }
                             }
                             break;
@@ -417,6 +469,25 @@
                                 }
                             }
                             break;
+                        case BindType.CO2:
+                            foreach (var de in room.ListDevice)
+                            {
+                                var device = LocalDevice.Current.GetDevice(de);
+                                if (device != null)
+                                {
+                                    if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                                    {
+                                        //鑾峰彇璁惧绫诲瀷
+                                        var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                                        //绌烘皵璐ㄩ噺浼犳劅鍣�
+                                        if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                                        {
+                                            roomIncludeMatchDevice.Add(device);
+                                        }
+                                    }
+                                }
+                            }
+                            break;
                     }
 
                     if (roomIncludeMatchDevice.Count == 0)
@@ -426,7 +497,7 @@
 
                     if (!string.IsNullOrEmpty(room.FloorId))
                     {
-                        //鏈夋ゼ灞�
+                        //鏈夋ゼ灞俒鎺у埗闈㈡澘濡傛灉涓嶅湪鎴块棿锛岄粯璁や笉缁戝畾]
                         if (room.FloorId == curControlDev.currentSelectFloorId)
                         {
                             roomTempList.Add(room);
@@ -520,6 +591,14 @@
                             {
                                 undistruibuteDevList.Add(device);
                             }
+
+                            //鑾峰彇璁惧绫诲瀷
+                            var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                            //绌烘皵璐ㄩ噺浼犳劅鍣�
+                            if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                            {
+                                undistruibuteDevList.Add(device);
+                            }
                         }
                         else if (device.Type == DeviceType.PMSensor)
                         {
@@ -545,6 +624,16 @@
                         {
                             undistruibuteDevList.Add(device);
                         }
+                        else if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                        {
+                            //鑾峰彇璁惧绫诲瀷
+                            var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                            //绌烘皵璐ㄩ噺浼犳劅鍣�
+                            if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                            {
+                                undistruibuteDevList.Add(device);
+                            }
+                        }
                     }
                     break;
                 case BindType.AC:
@@ -557,6 +646,21 @@
                                 continue;
                             }
                             undistruibuteDevList.Add(device);
+                        }
+                    }
+                    break;
+                case BindType.CO2:
+                    foreach (var device in UndistributeCommonDeviceListTemp)
+                    {
+                        if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                        {
+                            //鑾峰彇璁惧绫诲瀷
+                            var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                            //绌烘皵璐ㄩ噺浼犳劅鍣�
+                            if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                            {
+                                undistruibuteDevList.Add(device);
+                            }
                         }
                     }
                     break;
@@ -654,6 +758,17 @@
                                 {
                                     currentPanelBindSupportDeviceListTemp.Add(device);
                                 }
+
+                                if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                                {
+                                    //鑾峰彇璁惧绫诲瀷
+                                    var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                                    //绌烘皵璐ㄩ噺浼犳劅鍣�
+                                    if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                                    {
+                                        currentPanelBindSupportDeviceListTemp.Add(device);
+                                    }
+                                }
                             }
                         }
                     }
@@ -677,6 +792,32 @@
                                         continue;
                                     }
                                     currentPanelBindSupportDeviceListTemp.Add(device);
+                                }
+                            }
+                        }
+                    }
+                    break;
+                case BindType.CO2:
+                    foreach (var r in supportRoomList)
+                    {
+                        if (r.ListDevice.Count == 0)
+                        {
+                            continue;
+                        }
+                        foreach (var deviceKeys in r.ListDevice)
+                        {
+                            var device = LocalDevice.Current.GetDevice(deviceKeys);
+                            if (device != null)
+                            {
+                                if (device.Type == ZigBee.Device.DeviceType.TemperatureSensor)
+                                {
+                                    //鑾峰彇璁惧绫诲瀷
+                                    var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<ZigBee.Device.CommonDevice>() { device });
+                                    //绌烘皵璐ㄩ噺浼犳劅鍣�
+                                    if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+                                    {
+                                        currentPanelBindSupportDeviceListTemp.Add(device);
+                                    }
                                 }
                             }
                         }
@@ -1077,6 +1218,6 @@
                 btnFinish.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
             }
         }
-        #endregion 
+        #endregion
     }
 }

--
Gitblit v1.8.0