From 7ded9bc93b6beb5d7311ed4d013f90c521f85b5e Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 24 八月 2020 11:47:24 +0800
Subject: [PATCH] 2020.08.24.1

---
 ZigbeeApp/Shared/Phone/Device/Logic/Method.cs |   71 +++++++++++++++++++++++++++++------
 1 files changed, 59 insertions(+), 12 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/Method.cs b/ZigbeeApp/Shared/Phone/Device/Logic/Method.cs
index c484111..81bac76 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/Method.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/Method.cs
@@ -46,7 +46,7 @@
                 {
                     ///鍖哄垎鍑鸿緭鍏ユ潯浠跺拰杈撳嚭鐩爣璁惧
                     var listdevicetype = GetDevice(type);
-                    var listdevice = GetDeviceUIList(listAllRoom[i], listdevicetype);
+                    var listdevice = GetDeviceUIList(listAllRoom[i], listdevicetype, type);
                     if (listdevice.Count == 0)
                     {
                         ///杩囨护鎺夋病鏈夎澶囩殑鎴块棿
@@ -68,8 +68,9 @@
         /// </summary>
         /// <param name="room">褰撳墠鎴块棿</param>
         /// <param name="deviceTypelist">璁惧绫诲瀷</param>
+        ///  /// <param name="type">閫昏緫绫诲瀷</param>
         /// <returns></returns>
-        public static List<CommonDevice> GetDeviceUIList(Common.Room room, List<DeviceType> deviceTypelist)
+        public static List<CommonDevice> GetDeviceUIList(Common.Room room, List<DeviceType> deviceTypelist,string type)
         {
             var deviceUIlist = new List<CommonDevice>();
             foreach (var deviceKey in room.ListDevice)
@@ -94,6 +95,22 @@
                         continue;
                     }
                 }
+                if (type == "condition_mould")
+                {
+                    if (device.Type == DeviceType.IASZone)
+                    {
+                        if (device.IasDeviceType != 13)
+                        {//鑷姩鍖栨ā鏉垮彧鏀寔绾㈠浼犳劅鍣�
+                            continue;
+                        }
+                        if (device.ModelIdentifier == "MSPIRB-ZB.10")
+                        {
+                            //鑷姩鍖栨ā鏉夸笉鏀寔鍏夌収搴�
+                            continue;
+                        }
+
+                    }
+                }
                 deviceUIlist.Add(device);
             }
             return deviceUIlist;
@@ -108,7 +125,7 @@
             List<string> devicetypelist = new List<string>();
             devicetypelist.Clear();
 
-            var lightjosn = devicelist.Find((device) => device.Type == DeviceType.DimmableLight || device.Type == DeviceType.OnOffOutput);
+            var lightjosn = devicelist.Find((device) => device.Type == DeviceType.DimmableLight || device.Type == DeviceType.OnOffOutput || device.Type == DeviceType.ColorTemperatureLight);
             if (lightjosn != null)
             {
                 devicetypelist.Add(Language.StringByID(MyInternationalizationString.Lights));
@@ -166,6 +183,7 @@
             {
                 DeviceTypeList.Add(DeviceType.OnOffOutput);//0x0101鍗佽繘鍒�257
                 DeviceTypeList.Add(DeviceType.DimmableLight);
+                DeviceTypeList.Add(DeviceType.ColorTemperatureLight);
             }
             else if (devicetype == Language.StringByID(MyInternationalizationString.Curtains))
             {
@@ -260,8 +278,17 @@
                         {
                             break;
                         }
-                        patm = $"ZigeeLogic/sensor{iASZonedevice.IasDeviceType}.png";
-                        selectedpatm = $"ZigeeLogic/selectedsensor{iASZonedevice.IasDeviceType}.png";
+
+                        if (device.ModelIdentifier == "MSPIRB-ZB.10")
+                        {
+                            patm = $"ZigeeLogic/sensor541.png";
+                            selectedpatm = $"ZigeeLogic/selectedsensor541.png";
+                        }
+                        else
+                        {
+                            patm = $"ZigeeLogic/sensor{iASZonedevice.IasDeviceType}.png";
+                            selectedpatm = $"ZigeeLogic/selectedsensor{iASZonedevice.IasDeviceType}.png";
+                        }
                     }
                     break;
                 case DeviceType.TemperatureSensor:
@@ -316,6 +343,12 @@
                         selectedpatm = "ZigeeLogic/selectedairswitch.png";
                     }
                     break;
+                case DeviceType.ColorTemperatureLight:
+                    {
+                        patm = "ZigeeLogic/nightLight.png";
+                        selectedpatm = "ZigeeLogic/nightLightSelected.png";
+                    }
+                    break;
             }
             button.UnSelectedImagePath = patm;
             button.SelectedImagePath = selectedpatm;
@@ -350,6 +383,7 @@
                         deviceTypeList.Add(DeviceType.WindowCoveringDevice);
                         deviceTypeList.Add(DeviceType.Thermostat);
                         deviceTypeList.Add(DeviceType.AirSwitch);
+                        deviceTypeList.Add(DeviceType.ColorTemperatureLight);
                         ///闂ㄩ攣鐗规畩
                        // deviceTypeList.Add(DeviceType.DoorLock);
                     }
@@ -372,6 +406,7 @@
                         deviceTypeList.Add(DeviceType.WindowCoveringDevice);
                         deviceTypeList.Add(DeviceType.Thermostat);
                         deviceTypeList.Add(DeviceType.AirSwitch);
+                        deviceTypeList.Add(DeviceType.ColorTemperatureLight);
                         ///闂ㄩ攣鐗规畩
                       // deviceTypeList.Add(DeviceType.DoorLock);
                     }
@@ -766,11 +801,18 @@
 
             if (Config.Instance.Home.IsVirtually)
             {
+                if (Common.Logic.LogicList.Count == 0)
+                {
+                    CurrentLogic.LogicId = 1;
+                    Common.Logic.LogicList.Add(CurrentLogic);
+                }
+
                 if (CurrentLogic.LogicId == 0)
                 {
                     bool d = false;
                     for (int i = 1; i < 50; i++)
                     {
+                       
                         for (int j = 0; j < Common.Logic.LogicList.Count; j++)
                         {
                             if (i != Common.Logic.LogicList[j].LogicId)
@@ -792,7 +834,7 @@
                 {
                     for (int j = 0; j < Common.Logic.LogicList.Count; j++)
                     {
-                        if (j == Common.Logic.LogicList[j].LogicId)
+                        if (CurrentLogic.LogicId == Common.Logic.LogicList[j].LogicId)
                         {
                             Common.Logic.LogicList.RemoveAt(j);
                             Common.Logic.LogicList.Insert(j,CurrentLogic);
@@ -826,7 +868,7 @@
                         }
                         if (LogicView.IfString._SoneLogic == if_logic)
                         {
-                            //Sone闂ㄩ攣鑱斿姩浜嬩欢閫昏緫鍒楄〃
+                            //Sone闂ㄩ攣甯稿紑妯″紡閫昏緫鍒楄〃
                             Common.Logic.SoneLogicList.Add(CurrentLogic);
 
                         }
@@ -875,11 +917,13 @@
             else if (LogicView.IfString._SoneLogic == if_logic)
             {
                 //璺冲埌Sone闂ㄩ攣鑱斿姩浜嬩欢鍒楄〃鐣岄潰
-                UserView.HomePage.Instance.RemoveViewByTag("SoneLogic");//绉婚櫎鎵�鏈夋爣璁癓ockListView鐣岄潰
-                var soneLogicList = new SoneLogicList();
-                UserView.HomePage.Instance.AddChidren(soneLogicList);
-                UserView.HomePage.Instance.PageIndex += 1;
-                soneLogicList.Show();
+                //UserView.HomePage.Instance.RemoveViewByTag("SoneLogic");//绉婚櫎鎵�鏈夋爣璁癓ockListView鐣岄潰
+                //var soneLogicList = new SoneLogicList();
+                //UserView.HomePage.Instance.AddChidren(soneLogicList);
+                //UserView.HomePage.Instance.PageIndex += 1;
+                //soneLogicList.Show();
+
+                SoneLogicList.soneLogicList?.RefreshView();
             }
 
         }
@@ -900,5 +944,8 @@
         /// 鐣岄潰楂樺害
         /// </summary>
         public static int H = 1922;
+
+
+
     }
 }

--
Gitblit v1.8.0