From d87400af518ebc9274f4447f06476959c3aa5102 Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期二, 14 七月 2020 16:29:42 +0800
Subject: [PATCH] Merge branch 'dev-tzy' into dev-2020xm

---
 ZigbeeApp/Shared/Phone/Category/AdjustTargetAddSceneForm.cs |   83 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 74 insertions(+), 9 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Category/AdjustTargetAddSceneForm.cs b/ZigbeeApp/Shared/Phone/Category/AdjustTargetAddSceneForm.cs
index 3aef76a..211ea4e 100755
--- a/ZigbeeApp/Shared/Phone/Category/AdjustTargetAddSceneForm.cs
+++ b/ZigbeeApp/Shared/Phone/Category/AdjustTargetAddSceneForm.cs
@@ -38,6 +38,10 @@
         /// 鍦烘櫙鍒楄〃鎺т欢
         /// </summary>
         private VerticalListControl listSceneView = null;
+        /// <summary>
+        /// 褰撳墠閫夋嫨鐨勬ゼ灞�
+        /// </summary>
+        private string nowSelectFloorId = string.Empty;
 
         #endregion
 
@@ -53,6 +57,9 @@
 
             //璁剧疆澶撮儴淇℃伅
             base.SetTitleText(Language.StringByID(R.MyInternationalizationString.AddScence));
+
+            //鍒濆鍖栧彸涓婅鐨勬帶浠�
+            this.InitTopRightMenuControl();
             //鍒濆鍖栦腑閮ㄤ俊鎭�
             this.InitMiddleFrame();
         }
@@ -62,6 +69,9 @@
         /// </summary>
         private void InitMiddleFrame()
         {
+            //娓呯┖body
+            this.ClearBodyFrame();
+
             //鑾峰彇鑳藉鏄剧ず鐨勬埧闂村垪琛�
             var listRoom = this.GetCanShowRoomList();
             if (listRoom.Count == 0)
@@ -96,7 +106,10 @@
             this.btnFinishControl = new BottomClickButton();
             btnFinishControl.TextID = R.MyInternationalizationString.uFinish;
             bodyFrameLayout.AddChidren(btnFinishControl);
-            btnFinishControl.Visible = false;
+            if (this.listNewScene == null || this.listNewScene.Count == 0)
+            {
+                btnFinishControl.Visible = false;
+            }
             btnFinishControl.ButtonClickEvent += (sender, e) =>
             {
                 //鍥炶皟鍑芥暟
@@ -106,6 +119,54 @@
 
             //鎵ц鍒濆鍖�(浼氳嚜鍔ㄨЕ鍙慡electRoomEvent浜嬩欢)
             roomSwitchContr.InitControl();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栧彸涓婅鐨勬帶浠�
+        /// </summary>
+        private void InitTopRightMenuControl()
+        {
+            //鑾峰彇妤煎眰
+            var dicFloor = HdlRoomLogic.Current.GetFloorSortList();
+            if (dicFloor.Count == 0)
+            {
+                return;
+            }
+            var btnIconContr = new MostRightIconControl(69, 69);
+            btnIconContr.UnSelectedImagePath = "Item/Drop_Down.png";
+            topFrameLayout.AddChidren(btnIconContr);
+            btnIconContr.InitControl();
+
+            var btnFloor = new NormalViewControl(300, 69, true);
+            btnFloor.Gravity = Gravity.CenterVertical;
+            btnFloor.X = btnIconContr.X + btnIconContr.btnIcon.X - Application.GetRealWidth(300);
+            btnFloor.TextAlignment = TextAlignment.CenterRight;
+            topFrameLayout.AddChidren(btnFloor);
+
+            foreach (var floorId in dicFloor.Keys)
+            {
+                //绗竴涓ゼ灞�
+                this.nowSelectFloorId = floorId;
+                btnFloor.Text = dicFloor[floorId];
+                break;
+            }
+
+            btnIconContr.ButtonClickEvent += (sender, e) =>
+            {
+                //妤煎眰鑿滃崟
+                var contr = new TopRightFloorMenuControl(dicFloor.Count, 2, this.nowSelectFloorId, Language.StringByID(R.MyInternationalizationString.SelectFloor));
+                foreach (var floorId in dicFloor.Keys)
+                {
+                    contr.AddRowMenu(floorId, () =>
+                    {
+                        //璁板綍璧烽�夋嫨鐨処D
+                        this.nowSelectFloorId = floorId;
+                        btnFloor.Text = dicFloor[this.nowSelectFloorId];
+                        //鍒濆鍖栦腑閮ㄤ俊鎭�
+                        this.InitMiddleFrame();
+                    });
+                }
+            };
         }
 
         #endregion
@@ -209,19 +270,23 @@
         /// <returns></returns>
         private List<Room> GetCanShowRoomList()
         {
-            //鍏堝垪琛ㄥ寲
-            this.listOldSceneId = new List<int>();
-            this.listNewScene = new List<int>();
-            foreach (var data in this.listAdjustTarget)
+            if (this.listNewScene == null)
             {
-                if (data.Type == 1)
+                //鍏堝垪琛ㄥ寲
+                this.listOldSceneId = new List<int>();
+                this.listNewScene = new List<int>();
+                foreach (var data in this.listAdjustTarget)
                 {
-                    //鍙鍦烘櫙
-                    listOldSceneId.Add(data.ElseScenesId);
+                    if (data.Type == 1)
+                    {
+                        //鍙鍦烘櫙
+                        listOldSceneId.Add(data.ElseScenesId);
+                    }
                 }
             }
+
             //褰撳墠妤煎眰鐨勫叏閮ㄦ埧闂�
-            var lisrRoom = HdlRoomLogic.Current.GetRoomsByCurrentFloorIdAppendLoveRoom();
+            var lisrRoom = HdlRoomLogic.Current.GetRoomsByFloorIdAppendLoveRoom(this.nowSelectFloorId);
             var listShowRoom = new List<Room>();
             foreach (var room in lisrRoom)
             {

--
Gitblit v1.8.0