From 159ec8ae413683e1ce134ec204d1c0b4d175baec Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期四, 14 十一月 2019 15:55:32 +0800
Subject: [PATCH] 2019.11.14

---
 ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs |   58 ++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 36 insertions(+), 22 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs b/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
index aeb5b99..21003fa 100644
--- a/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
+++ b/ZigbeeApp/Shared/Phone/UserView/UserHomeView.cs
@@ -208,7 +208,7 @@
 
                                 case DeviceType.Thermostat:
                                     //AC鍔熻兘
-                                    if ((common as ZigBee.Device.AC).DeviceStatusReport.CluterID == 513)
+                                    if (common.DeviceStatusReport.CluterID == 513)
                                     {
                                         var ac = deviceUI.CommonDevice as ZigBee.Device.AC;
                                         ac.DeviceStatusReport = common.DeviceStatusReport;
@@ -217,29 +217,31 @@
                                         {
                                             continue;
                                         }
+
+                                        var curTemp = (attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
                                         switch (attriButeList[0].AttributeId)
                                         {
                                             case 0:
                                                 //姝ゅ睘鎬ц〃鏄庡鍐呭綋鍓嶇殑娓╁害 * 100锛屽疄闄呮俯搴︿负鈥淟ocalTemperature / 100鈥濓紝鍗曚綅锛氣剝
-                                                ac.currentLocalTemperature = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
+                                                ac.currentLocalTemperature = curTemp;
                                                 ac.LastDateTime = DateTime.Now;
                                                 break;
 
                                             case 17:
                                                 //姝ゅ睘鎬ц〃鏄庢璁惧褰撳墠鐨勫埗鍐锋俯搴︼紝瀹為檯娓╁害涓衡�淐oolingSetpoint / 100鈥濓紝鍗曚綅锛氣剝銆�
-                                                ac.currentCoolingSetpoint = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
+                                                ac.currentCoolingSetpoint = curTemp;
                                                 ac.LastDateTime = DateTime.Now;
                                                 break;
 
                                             case 18:
                                                 //姝ゅ睘鎬ц〃鏄庢璁惧褰撳墠鐨勫埗鐑俯搴︼紝瀹為檯娓╁害涓衡�淗eatingSetpoint / 100鈥濓紝鍗曚綅锛氣剝銆�
-                                                ac.currentHeatingSetpoint = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
+                                                ac.currentHeatingSetpoint = curTemp;
                                                 ac.LastDateTime = DateTime.Now;
                                                 break;
 
                                             case 4096:
                                                 //姝ゅ睘鎬ц〃鏄庢璁惧褰撳墠鐨勮嚜鍔ㄦ俯搴︼紝瀹為檯娓╁害涓衡�淎utoSetpoint / 100鈥濓紝鍗曚綅锛氣剝銆�
-                                                ac.currentAutoSetpoint = (attriButeList[0].AttriButeData / 100 > ACControlBase.Temperature_High || attriButeList[0].AttriButeData / 100 < ACControlBase.Temperature_Low) ? attriButeList[0].AttriButeData / 100 : ACControlBase.Temperature_Default;
+                                                ac.currentAutoSetpoint = curTemp;
                                                 ac.LastDateTime = DateTime.Now;
                                                 break;
 
@@ -252,8 +254,31 @@
                                         (rowFL.GetChildren(0) as FunctionMainView).IsSelected = ac.currentSystemMode != 0;
                                         (rowFL.GetChildren(0) as FunctionMainView).StatuButton.Text = deviceUI.GetDeviceStatu();
                                     }
+                                    if (common.DeviceStatusReport.CluterID == 514)
+                                    {
+                                        var ac = deviceUI.CommonDevice as ZigBee.Device.AC;
+                                        var attriButeList = common.DeviceStatusReport.AttriBute;
+                                        if (attriButeList == null || attriButeList.Count == 0)
+                                        {
+                                            return;
+                                        }
+                                        ac.DeviceStatusReport = common.DeviceStatusReport;
+                                        switch (attriButeList[0].AttributeId)
+                                        {
+                                            case 0:
+                                                ac.currentFanMode = attriButeList[0].AttriButeData;
+                                                ac.LastDateTime = DateTime.Now;
+                                                break;
+                                            case 4096:
+                                                ac.currentFanSwingMode = attriButeList[0].AttriButeData;
+                                                ac.LastDateTime = DateTime.Now;
+                                                break;
+                                        }
+                                        (rowFL.GetChildren(0) as FunctionMainView).IsSelected = ac.currentSystemMode != 0;
+                                        (rowFL.GetChildren(0) as FunctionMainView).StatuButton.Text = deviceUI.GetDeviceStatu();
+                                    }
                                     //褰揅luterID=3,灏辫瘉鏄庤璁惧鍦ㄧ嚎锛岀洿鎺ユ爣璁�
-                                    if ((common as ZigBee.Device.AC).DeviceStatusReport.CluterID == 3)
+                                    if (common.DeviceStatusReport.CluterID == 3)
                                     {
                                         var ac = deviceUI.CommonDevice as AC;
                                         ac.IsOnline = 1;
@@ -614,7 +639,8 @@
                         roomPageView.AddChidren(roomBackView);
                         var roomBG = new Button()
                         {
-                            UnSelectedImagePath = "Room/HomeBG.png",
+                            //UnSelectedImagePath = "Room/HomeBG.png",
+                            UnSelectedImagePath = room.BackgroundImage
                         };
                         roomBackView.AddChidren(roomBG);
                         var roomName = new Button()
@@ -636,24 +662,11 @@
                             Width = Application.GetMinRealAverage(100),
                             Height = Application.GetMinRealAverage(100),
                             UnSelectedImagePath = "Item/List.png",
-                            SelectedImagePath = "Item/ListSelected.png"
                         };
                         roomBackView.AddChidren(roomListBtn);
 
                         roomListBtn.MouseUpEventHandler += (send, e) =>
                         {
-                            //var roomList = new Device.Room.RoomManagement();
-                            //HomePage.Instance.AddChidren(roomList);
-                            //HomePage.Instance.PageIndex += 1;
-                            //roomList.Show();
-                            //roomList.action += () =>
-                            //{
-                            //    Show();
-                            //};
-                            if(room.IsLove)
-                            {
-                                return;
-                            }
                             var editRoom = new Device.Room.EditRoom();
                             HomePage.Instance.AddChidren(editRoom);
                             HomePage.Instance.PageIndex += 1;
@@ -662,7 +675,6 @@
                             {
                                 Show();
                             };
-
                         };
                     }
                 }
@@ -688,7 +700,7 @@
                         Text = Language.StringByID(R.MyInternationalizationString.Favorite),
                         TextAlignment = TextAlignment.CenterLeft,
                         TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
-                        TextSize = 18,
+                        TextSize = 18
                     };
                     roomBackView.AddChidren(roomName);
                     var roomListBtn = new Button()
@@ -1398,6 +1410,7 @@
                                 ac.ReadAutoSetpoint();
                                 ac.ReadFanMode();
                                 ac.ReadSystemMode();
+                                ac.ReadSystemFansSwingMode();
                             });
                         }
                         else
@@ -1412,6 +1425,7 @@
                                 ac.ReadAutoSetpoint();
                                 ac.ReadFanMode();
                                 ac.ReadSystemMode();
+                                ac.ReadSystemFansSwingMode();
                             }
                         }
                         var lightView = new FunctionMainView(xx, yy);

--
Gitblit v1.8.0