From 3f87bf0ae7394cdd7d52428f1f6b4361434c7cc4 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期五, 15 五月 2020 13:28:33 +0800
Subject: [PATCH] hhhhhhhhh

---
 ZigbeeApp/Shared/Phone/Category/CategoryMainForm.cs |   74 +++++++++++++++++++++++++++----------
 1 files changed, 54 insertions(+), 20 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Category/CategoryMainForm.cs b/ZigbeeApp/Shared/Phone/Category/CategoryMainForm.cs
index 198566a..aeccb00 100755
--- a/ZigbeeApp/Shared/Phone/Category/CategoryMainForm.cs
+++ b/ZigbeeApp/Shared/Phone/Category/CategoryMainForm.cs
@@ -162,7 +162,7 @@
                     floors.FloorAction += (floorId) =>
                     {
                         btnFloorName.Text = Config.Instance.Home.GetFloorNameById(floorId);
-                        HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom();
+                        HdlRoomLogic.Current.NowCategoryRoom = HdlRoomLogic.Current.GetLoveRoom();
                         //鍒锋柊bodyView
                         this.RefreshBodyView();
                     };
@@ -276,16 +276,21 @@
         {
             //褰撳墠妤煎眰鐨勫叏閮ㄦ埧闂�
             var lisrRoom = HdlRoomLogic.Current.GetRoomsByCurrentFloorIdAppendLoveRoom();
+            if (HdlRoomLogic.Current.NowCategoryRoom == null)
+            {
+                //璁剧疆绗竴涓负鍒濆鎴块棿
+                HdlRoomLogic.Current.NowCategoryRoom = lisrRoom[0];
+            }
             //鎴块棿鑿滃崟鎺т欢
             var roomSwitchContr = new RoomDeviceGroupMenuControl(lisrRoom);
             roomSwitchContr.Y = Application.GetRealHeight(-55);
             this.functionSceneAutoBodyView.AddChidren(roomSwitchContr);
             //璁剧疆鍒濆鍊�
-            roomSwitchContr.SetDefultIndex(HdlRoomLogic.Current.CurrentRoom.Id);
+            roomSwitchContr.SetDefultIndex(HdlRoomLogic.Current.NowCategoryRoom.Id);
             //閫夋嫨浜嬩欢
             roomSwitchContr.SelectRoomEvent += (selectRoom) =>
             {
-                HdlRoomLogic.Current.CurrentRoom = selectRoom;
+                HdlRoomLogic.Current.NowCategoryRoom = selectRoom;
                 //鍦烘櫙
                 if (UserCenterResourse.ResidenceOption.CategoryPageSwitchIndex == 0)
                 {
@@ -537,7 +542,7 @@
                     cardContr.chidrenYaxis = listView.rowSpace / 2;
                     //鍒濆鍖栧崱鐗�
                     listView.AddChidren(cardContr);
-                    cardContr.InitControl(device);
+                    cardContr.InitControl(device, HdlRoomLogic.Current.NowCategoryRoom);
                     //鎺т欢璁板綍鍒扮紦瀛樹腑
                     this.dicDeviceRowControl[LocalDevice.Current.GetDeviceMainKeys(device)] = cardContr;
                     //鍔犵紦瀛�,鐒跺悗鍙戝懡浠�
@@ -588,6 +593,46 @@
         /// <param name="room"></param>
         private void RefreshSceneView(Room room)
         {
+            //涓讳汉锛岀鐞嗗憳涓撶敤鍒锋柊鎺т欢
+            VerticalListRefreshControl listview1 = null;
+            //鎴愬憳涓撶敤涓嶈兘鍒锋柊鐨勬帶浠�
+            VerticalListControl listview2 = null;
+            if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
+            {
+                //涓讳汉锛岀鐞嗗憳涓撶敤鍒锋柊鎺т欢
+                listview1 = new VerticalListRefreshControl();
+                functionSceneBodyView.AddChidren(listview1);
+                //涓嬫媺鍒锋柊
+                listview1.BeginHeaderRefreshingAction += () =>
+                {
+                    HdlThreadLogic.Current.RunThread(() =>
+                    {
+                        //浠庣綉鍏冲埛鏂板満鏅垪琛�
+                        bool result = HdlSceneLogic.Current.RefreshSceneUIList();
+                        HdlThreadLogic.Current.RunMain(() =>
+                        {
+                            listview1.EndHeaderRefreshing();
+                            if (result == true)
+                            {
+                                //鍦ㄥ闈㈡竻绌�(鐗规晥鐨勯棶棰�)
+                                this.functionSceneBodyView.RemoveAll();
+                                HdlThreadLogic.Current.RunMainInThread(() =>
+                                {
+                                    //鍒锋柊鍦烘櫙鍒嗘敮鎺т欢
+                                    this.RefreshSceneView(room);
+                                });
+                            }
+                        });
+                    });
+                };
+            }
+            else
+            {
+                //鎴愬憳涓撶敤涓嶈兘鍒锋柊鐨勬帶浠�
+                listview2 = new VerticalListControl();
+                functionSceneBodyView.AddChidren(listview2);
+            }
+
             var listScene = new List<SceneUI>();
             foreach (var sceneId in room.ListSceneId)
             {
@@ -599,28 +644,17 @@
             }
             if (listScene.Count == 0)
             {
+                //鍦ㄦ粦鍔ㄦ帶浠堕噷闈㈡坊鍔犱竴涓甯�
+                var frameTable = new FrameLayout();
+                listview1?.AddChidren(frameTable);
+                listview2?.AddChidren(frameTable);
                 //娌℃湁鍦烘櫙{0}璇风偣鍑诲彸涓婅娣诲姞
                 string[] arryMsg = Language.StringByID(R.MyInternationalizationString.NoScene).Split(new string[] { "{0}" }, StringSplitOptions.RemoveEmptyEntries);
-                this.ShowNotDataImage(functionSceneBodyView, arryMsg);
+                this.ShowNotDataImage(frameTable, arryMsg);
                 return;
             }
 
             var dicSceneContr = new Dictionary<int, SceneCategoryView>();
-            //涓讳汉锛岀鐞嗗憳涓撶敤鍒锋柊鎺т欢
-            VerticalListRefreshControl listview1 = null;
-            //鎴愬憳涓撶敤涓嶈兘鍒锋柊鐨勬帶浠�
-            VerticalListControl listview2 = null;
-            //if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
-            //{
-            //    listview1 = new VerticalListRefreshControl();
-            //    functionSceneBodyView.AddChidren(listview1);
-            //}
-            //else
-            {
-                listview2 = new VerticalListControl();
-                functionSceneBodyView.AddChidren(listview2);
-            }
-          
             foreach (var scene in listScene)
             {
                 //鍦烘櫙鍗$墖鎺т欢

--
Gitblit v1.8.0