From 1c4904d77f484c075080942d87785481b52b6fb2 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期一, 28 十月 2019 14:58:46 +0800
Subject: [PATCH] Revert "Merge branch 'dev-tzy' into DEV_GXC"

---
 ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs |  634 +++++++++++++++++----------------------------------------
 1 files changed, 187 insertions(+), 447 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
index f7e7f35..3570f6e 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
@@ -12,25 +12,17 @@
         #region 鈻� 鍙橀噺澹版槑___________________________
 
         /// <summary>
-        /// 妗屽竷鎺т欢
-        /// </summary>
-        private FrameLayout frameTable = null;
-        /// <summary>
         /// 鍒楄〃鎺т欢
         /// </summary>
         private VerticalListControl listView = null;
         /// <summary>
+        /// 鍒楄〃鎺т欢鏈�澶ч珮搴�
+        /// </summary>
+        private int MaxListViewHeight = 0;
+        /// <summary>
         /// 妤煎眰椤哄簭
         /// </summary>
         private List<string> listFloorSort = new List<string>();
-        /// <summary>
-        /// 鎴块棿椤哄簭
-        /// </summary>
-        private List<string> listRoomSort = new List<string>();
-        /// <summary>
-        /// 褰撳墠APP鐨勪綇瀹呮ā寮� 0:杩樻病鏈夎缃湁妯″紡 1:妤煎眰妯″紡 2:娌℃湁妤煎眰妯″紡
-        /// </summary>
-        private int AppResidenceMode = 0;
 
         #endregion
 
@@ -45,174 +37,52 @@
             //璁剧疆澶撮儴淇℃伅
             base.SetTitleText(Common.Config.Instance.Home.Name);
 
-            //涓讳汉鎴栬�呯鐞嗗憳鎵嶄細鍑虹幇杩欎釜鑿滃崟
-            if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
+            //鍒ゆ柇鑳藉惁鍒犻櫎浣忓畢
+            if (i_CanDeleteResidence == true)
             {
                 //鍒濆鍖栧彸涓婅鑿滃崟
                 this.InitTopRightMenu();
             }
             //鍒濆鍖栦腑閮ㄤ俊鎭�
-            this.InitMiddleFrame(i_CanDeleteResidence);
+            this.InitMiddleFrame();
         }
 
         /// <summary>
         /// 鍒濆鍖栦腑閮ㄤ俊鎭�
         /// </summary>
-        /// <param name="i_CanDeleteResidence">鑳藉惁鍒犻櫎褰撳墠浣忓畢</param>
-        private void InitMiddleFrame(bool i_CanDeleteResidence)
+        private void InitMiddleFrame()
         {
             //娓呯┖bodyFrame
             this.ClearBodyFrame();
 
-            var rowHome = new RowLayoutControl();
-            rowHome.Height = Application.GetRealHeight(173);
-            rowHome.BackgroundColor = UserCenterColor.Current.White;
-            bodyFrameLayout.AddChidren(rowHome);
+            var frameHome = new FrameRowControl();
+            frameHome.Height = Application.GetRealHeight(173);
+            frameHome.BackgroundColor = UserCenterColor.Current.White;
+            bodyFrameLayout.AddChidren(frameHome);
 
-            var btnAdreeIcon = rowHome.frameTable.AddLeftIcon(81);
+            var btnAdreeIcon = frameHome.AddLeftIcon(81);
             btnAdreeIcon.UnSelectedImagePath = "Item/FixedPositionSelected.png";
 
             //浣忓畢鍚嶇О
-            var btnHomeName = rowHome.frameTable.AddLeftCaption(Common.Config.Instance.Home.Name, 700, 60);
+            var btnHomeName = frameHome.AddLeftCaption(Common.Config.Instance.Home.Name, 700, 60);
             btnHomeName.TextSize = 15;
             btnHomeName.Y = Application.GetRealHeight(35);
-            rowHome.frameTable.AddChidren(btnHomeName, ChidrenBindMode.BindEventOnly);
+            frameHome.AddChidren(btnHomeName, ChidrenBindMode.BindEventOnly);
             //褰撳墠浣忓畢
-            var btnNowView = rowHome.frameTable.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uNowResidence), 700, 49);
+            var btnNowView = frameHome.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uNowResidence), 700, 49);
             btnNowView.TextSize = 12;
             btnNowView.Y = Application.GetRealHeight(95);
             btnNowView.TextColor = UserCenterColor.Current.TextGrayColor1;
-            rowHome.frameTable.AddChidren(btnNowView, ChidrenBindMode.BindEventOnly);
+            frameHome.AddChidren(btnNowView, ChidrenBindMode.BindEventOnly);
             //鍙崇澶�
-            rowHome.frameTable.AddRightArrow();
+            frameHome.AddRightArrow();
 
-            if (i_CanDeleteResidence == true)
-            {
-                //鍒犻櫎
-                var btnDelete = new NormalViewControl(Application.GetRealWidth(184), rowHome.Height, false);
-                btnDelete.BackgroundColor = 0xfff75858;
-                btnDelete.TextAlignment = TextAlignment.Center;
-                btnDelete.TextColor = UserCenterColor.Current.White;
-                btnDelete.TextSize = 12;
-                btnDelete.TextID = R.MyInternationalizationString.uDelete;
-                rowHome.AddRightView(btnDelete);
-                btnDelete.ButtonClickEvent += (sender, e) =>
-                {
-                    //纭鍒犻櫎浣忓畢鍙婃墍鏈夋ゼ灞傘�佹埧闂�?
-                    string msg = Language.StringByID(R.MyInternationalizationString.uDeleteResidenceMsg);
-                    this.ShowMassage(ShowMsgType.Confirm, msg, () =>
-                    {
-                        HdlThreadLogic.Current.RunThread(() =>
-                        {
-                            this.DeleteResidence();
-                        });
-                    });
-                };
-            }
-            //鍒濆鍖栨甯�
-            this.frameTable = new FrameLayout();
-            frameTable.Y = rowHome.Bottom + Application.GetRealHeight(23);
-            frameTable.Height = bodyFrameLayout.Height - rowHome.Bottom - Application.GetRealHeight(23);
-            bodyFrameLayout.AddChidren(frameTable);
-
-            //鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
-            this.InitFrameTableByMode();
-        }
-
-        /// <summary>
-        /// 鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
-        /// </summary>
-        private void InitFrameTableByMode()
-        {
-            this.frameTable.RemoveAll();
-
-            //0:杩樻病鏈夎缃湁妯″紡 1:妤煎眰妯″紡 2:娌℃湁妤煎眰妯″紡
-            AppResidenceMode = this.CheckAppResidenceMode();
-            if (AppResidenceMode == 1)
-            {
-                //鍒濆鍖栨ゼ灞傛ā寮�
-                this.InitControlByFloorMode();
-            }
-            else if (AppResidenceMode == 2)
-            {
-                //鍒濆鍖栨棤妤煎眰妯″紡
-                this.InitControlByNotFloorMode();
-            }
-        }
-
-        #endregion
-
-        #region 鈻� 鍙充笂瑙掕彍鍗昣________________________
-
-        /// <summary>
-        /// 鍒濆鍖栧彸涓婅鑿滃崟
-        /// </summary>
-        private void InitTopRightMenu()
-        {
-            var btnIcon = new MostRightIconControl(69, 69);
-            btnIcon.UnSelectedImagePath = "Item/Add.png";
-            topFrameLayout.AddChidren(btnIcon);
-            btnIcon.InitControl();
-            btnIcon.ButtonClickEvent += ((sender, e) =>
-            {
-                //0:杩樻病鏈夎缃湁妯″紡 1:妤煎眰妯″紡 2:娌℃湁妤煎眰妯″紡
-                AppResidenceMode = this.CheckAppResidenceMode();
-                //娌℃湁璁剧疆杩囨ā寮�
-                if (AppResidenceMode == 0)
-                {
-                    var frame = new TopRightMenuControl(2);
-                    //鍒涘缓妤煎眰
-                    frame.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uCreatFloor), "Item/CreatFloor.png", "Item/CreatFloorSelected.png", () =>
-                    {
-                        //鍒涘缓妤煎眰
-                        this.CreatOrEditorFloor(null, string.Empty, string.Empty);
-                    });
-                    //鍒涘缓鎴块棿
-                    frame.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uCreatRoom), "Item/RoomIcon.png", "Item/RoomIconSelected.png", () =>
-                    {
-                        var form = new AddNewRoomForm();
-                        form.AddForm(string.Empty);
-                        form.FinishEditorEvent += () =>
-                        {
-                            //鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
-                            this.InitFrameTableByMode();
-                        };
-                    });
-                }
-                //妤煎眰妯″紡
-                else if (AppResidenceMode == 1)
-                {
-                    //鍒涘缓妤煎眰
-                    this.CreatOrEditorFloor(null, string.Empty, string.Empty);
-                }
-                //鏃犳ゼ灞傛ā寮�
-                else if (AppResidenceMode == 2)
-                {
-                    var form = new AddNewRoomForm();
-                    form.AddForm(string.Empty);
-                    form.FinishEditorEvent += () =>
-                    {
-                        //鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
-                        this.InitFrameTableByMode();
-                    };
-                }
-            });
-        }
-
-        #endregion
-
-        #region 鈻� 鍒濆鍖栨ゼ灞傛ā寮廮____________________
-
-        /// <summary>
-        /// 鍒濆鍖栨ゼ灞傛ā寮�
-        /// </summary>
-        private void InitControlByFloorMode()
-        {
             var frameFloor = new FrameRowControl();
             frameFloor.UseClickStatu = false;
+            frameFloor.Y = frameHome.Bottom + Application.GetRealHeight(23);
             frameFloor.Height = Application.GetRealHeight(115);
             frameFloor.BackgroundColor = UserCenterColor.Current.White;
-            frameTable.AddChidren(frameFloor);
+            bodyFrameLayout.AddChidren(frameFloor);
 
             //妤煎眰
             var btnFloor = frameFloor.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uFloor), 200, 60);
@@ -220,12 +90,26 @@
             btnFloor.TextColor = UserCenterColor.Current.TextColor2;
             btnFloor.TextSize = 15;
             frameFloor.AddChidren(btnFloor, ChidrenBindMode.NotBind);
+            if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
+            {
+                //娣诲姞妤煎眰
+                var btnAddFloor = frameFloor.AddMostRightEmptyIcon(69, 69);
+                frameFloor.ChangedChidrenBindMode(btnAddFloor, ChidrenBindMode.NotBind);
+                btnAddFloor.Y = Application.GetRealHeight(46);
+                btnAddFloor.UnSelectedImagePath = "Item/Add.png";
+                btnAddFloor.ButtonClickEvent += (sender, e) =>
+                {
+                    //鍒涘缓妤煎眰
+                    this.CreatOrEditorFloor(string.Empty, string.Empty);
+                };
+            }
 
+            this.MaxListViewHeight = bodyFrameLayout.Height - frameFloor.Bottom;
             listView = new VerticalListControl(29);
             listView.BackgroundColor = UserCenterColor.Current.White;
             listView.Y = frameFloor.Bottom;
-            listView.Height = frameTable.Height - frameFloor.Bottom;
-            frameTable.AddChidren(listView);
+            listView.Height = MaxListViewHeight;
+            bodyFrameLayout.AddChidren(listView);
 
             //鍒濆鍖栨ゼ灞傝
             this.InitFloorRow();
@@ -244,6 +128,8 @@
                 listFloorSort.Add(keys);
             }
 
+            listView.Height = MaxListViewHeight;
+            listView.RemoveAll();
             if (Common.Config.Instance.Home.FloorDics.Count == 0)
             {
                 return;
@@ -305,8 +191,8 @@
                 frameRow.AddRightView(btnChanged);
                 btnChanged.ButtonClickEvent += (sender, e) =>
                 {
-                    //鍒涘缓鎴栬�呯紪杈戞ゼ灞�
-                    this.CreatOrEditorFloor(btnFloor, keys, floorName);
+                //鍒涘缓鎴栬�呯紪杈戞ゼ灞�
+                this.CreatOrEditorFloor(keys, floorName);
                 };
 
                 //鍒犻櫎
@@ -319,60 +205,22 @@
                 frameRow.AddRightView(btnDelete);
                 btnDelete.ButtonClickEvent += (sender, e) =>
                 {
-                    //纭鍒犻櫎妤煎眰鍙婂叾鎵�鏈夋埧闂�?
-                    this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uDeleteFloorMsg), () =>
-                    {
-                        //绉婚櫎妤煎眰
-                        Common.Config.Instance.Home.FloorDics.Remove(keys);
-                        if (Common.Room.CurrentRoom == null)
-                        {
-                            Common.Room.CurrentRoom = Common.Room.Lists[0];
-                        }
-                        var listDeleteFile = new List<string>();
-                        for (int i = 0; i < Common.Room.Lists.Count; i++)
-                        {
-                            if (Common.Room.Lists[i].FloorId == keys)
-                            {
-                                listDeleteFile.Add(Common.Room.Lists[i].FileName);
-                            }
-                        }
-                        //鍒犻櫎鎴块棿
-                        foreach (string fileName in listDeleteFile)
-                        {
-                            Common.Room.CurrentRoom.Remove(fileName);
-                        }
-                        //濡傛灉褰撳墠閫夋嫨鐨勬埧闂存槸鍒犻櫎瀵硅薄鐨勮瘽
-                        if (Common.Room.CurrentRoom.FloorId == keys)
-                        {
-                            Common.Room.CurrentRoom = Common.Room.Lists[0];
-                        }
-                        Common.Config.Instance.Home.Save();
-                        //淇濆瓨椤哄簭
-                        listFloorSort.Remove(keys);
-                        Common.Room.CurrentRoom.SaveFloorSort(listFloorSort);
-
-                        if (Common.Config.Instance.Home.FloorDics.Count == 0)
-                        {
-                            //鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
-                            this.InitFrameTableByMode();
-                        }
-                        else
-                        {
-                            frameRow.RemoveFromParent();
-                            listView.AdjustRealHeight(Application.GetRealHeight(23));
-                        }
-                    });
+                    //鍒犻櫎妤煎眰
+                    this.DeleteFloor(keys);
                 };
             }
         }
 
+        #endregion
+
+        #region 鈻� 鍒涘缓鎴栫紪杈戞ゼ灞俖____________________
+
         /// <summary>
         /// 鍒涘缓鎴栬�呯紪杈戞ゼ灞�
         /// </summary>
-        /// <param name="btnFloor"></param>
         /// <param name="keys"></param>
         /// <param name="floorName"></param>
-        private void CreatOrEditorFloor(NormalViewControl btnFloor, string keys, string floorName)
+        private void CreatOrEditorFloor(string keys, string floorName)
         {
             //鐢熸垚涓�涓脊绐楃敾闈�
             var dialogForm = new DialogInputFrameControl(this, DialogFrameMode.OnlyInput);
@@ -406,257 +254,11 @@
                     }
                     Common.Config.Instance.Home.FloorDics[keys] = textValue;
                     Common.Config.Instance.Home.Save();
-                    if (btnFloor != null)
-                    {
-                        btnFloor.Text = textValue;
-                    }
-                    else
-                    {
-                        //鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
-                        this.InitFrameTableByMode();
-                    }
+                    //閲嶆柊鍒濆鍖栨ゼ灞傝
+                    this.InitFloorRow();
                 }
             });
         }
-
-
-        #endregion
-
-        #region 鈻� 鍒濆鍖栨棤妤煎眰妯″紡___________________
-
-        /// <summary>
-        /// 鍒濆鍖栨棤妤煎眰妯″紡
-        /// </summary>
-        private void InitControlByNotFloorMode()
-        {
-            var frameRoom = new FrameRowControl();
-            frameRoom.UseClickStatu = false;
-            frameRoom.Height = Application.GetRealHeight(115);
-            frameRoom.BackgroundColor = UserCenterColor.Current.White;
-            frameTable.AddChidren(frameRoom);
-
-            //鎴块棿鍒楄〃
-            var btnRoomList = frameRoom.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uRoomList), 200, 60);
-            btnRoomList.Y = Application.GetRealHeight(50);
-            btnRoomList.TextColor = UserCenterColor.Current.TextColor2;
-            btnRoomList.TextSize = 15;
-            frameRoom.AddChidren(btnRoomList, ChidrenBindMode.NotBind);
-
-            listView = new VerticalListControl(29);
-            listView.BackgroundColor = UserCenterColor.Current.White;
-            listView.Y = frameRoom.Bottom;
-            listView.Height = frameTable.Height - frameRoom.Bottom;
-            frameTable.AddChidren(listView);
-
-            //鍒濆鍖栨埧闂村垪琛�
-            this.InitRoomListRow();
-        }
-
-        /// <summary>
-        /// 鍒濆鍖栨埧闂村垪琛�
-        /// </summary>
-        private void InitRoomListRow()
-        {
-            //鑾峰彇妤煎眰鐨勬埧闂�
-            var listRoom = Common.Room.CurrentRoom.GetFloorSortRoom(string.Empty);
-            this.listRoomSort.Clear();
-            for (int i = 0; i < listRoom.Count; i++)
-            {
-                this.listRoomSort.Add(listRoom[i].Id);
-            }
-
-            for (int i = 0; i < listRoom.Count; i++)
-            {
-                //娣诲姞鎴块棿琛�
-                this.AddRoomRow(listRoom[i], i != listRoom.Count - 1);
-            }
-            //璋冩暣鎺т欢鐪熷疄楂樺害
-            listView.AdjustRealHeight(Application.GetRealHeight(23));
-        }
-
-        #endregion
-
-        #region 鈻� 娣诲姞鎴块棿琛宊________________________
-
-        /// <summary>
-        /// 娣诲姞鎴块棿琛�
-        /// </summary>
-        /// <param name="room"></param>
-        /// <param name="addLine"></param>
-        private void AddRoomRow(Common.Room room, bool addLine)
-        {
-            var frameRow = new RowLayoutControl(listView.rowSpace / 2);
-            listView.AddChidren(frameRow);
-            //鍥炬爣
-            var btnIcon = frameRow.frameTable.AddLeftIcon(81);
-            btnIcon.UnSelectedImagePath = "Item/RoomIconSelected.png";
-            //鍚嶇О
-            var btnName = frameRow.frameTable.AddLeftCaption(room.Name, 600);
-            btnName.TextSize = 15;
-            //鍙崇澶�
-            frameRow.frameTable.AddRightArrow();
-            if (addLine == true)
-            {
-                //搴曠嚎
-                frameRow.frameTable.AddBottomLine();
-            }
-            frameRow.frameTable.ButtonClickEvent += (sender, e) =>
-            {
-                var form = new LookRoomSettionForm();
-                form.AddForm(room);
-            };
-
-            if (room.IsSharedRoom == true)
-            {
-                //濡傛灉鏄垎浜殑鎴块棿锛屼笉鑳界紪杈戝拰淇敼
-                return;
-            }
-
-            //缂栬緫
-            var btnEditor = new NormalViewControl(Application.GetRealWidth(184), frameRow.Height, false);
-            btnEditor.BackgroundColor = 0xff4a4a4a;
-            btnEditor.TextSize = 12;
-            btnEditor.TextColor = UserCenterColor.Current.White;
-            btnEditor.TextAlignment = TextAlignment.Center;
-            btnEditor.TextID = R.MyInternationalizationString.uEditor;
-            frameRow.AddRightView(btnEditor);
-            btnEditor.ButtonClickEvent += (sender, e) =>
-            {
-                var form = new EditorRoomInforForm();
-                form.AddForm(room);
-                form.FinishEditorEvent += (roomName) =>
-                {
-                    btnName.Text = roomName;
-                };
-            };
-
-            //鍒犻櫎
-            var btnDelete = new NormalViewControl(Application.GetRealWidth(184), frameRow.Height, false);
-            btnDelete.BackgroundColor = 0xfff75858;
-            btnDelete.TextSize = 12;
-            btnDelete.TextColor = UserCenterColor.Current.White;
-            btnDelete.TextAlignment = TextAlignment.Center;
-            btnDelete.TextID = R.MyInternationalizationString.uDelete;
-            frameRow.AddRightView(btnDelete);
-            btnDelete.ButtonClickEvent += (sender, e) =>
-            {
-                //纭鍒犻櫎鎴块棿?
-                this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uDeleteRoomMsg), () =>
-                {
-                    if (Common.Room.CurrentRoom.Id == room.Id)
-                    {
-                        //濡傛灉鍒犻櫎鐨勬槸褰撳墠鎴块棿鐨勮瘽
-                        Common.Room.CurrentRoom = Common.Room.Lists[0];
-                    }
-                    Common.Room.CurrentRoom.Remove(room.FileName);
-                    //淇濆瓨椤哄簭
-                    this.listRoomSort.Remove(room.Id);
-                    Common.Room.CurrentRoom.SaveRoomSort(string.Empty, this.listRoomSort);
-
-                    if (Common.Room.Lists.Count <= 1)
-                    {
-                        //鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠�
-                        this.InitFrameTableByMode();
-                    }
-                    else
-                    {
-                        frameRow.RemoveFromParent();
-                        listView.AdjustRealHeight(Application.GetRealHeight(23));
-                    }
-                });
-            };
-        }
-
-        #endregion
-
-        #region 鈻� 鍒犻櫎浣忓畢___________________________
-
-        /// <summary>
-        /// 鍒犻櫎浣忓畢
-        /// </summary>
-        public async void DeleteResidence()
-        {
-            //寮�鍚繘搴︽潯
-            this.ShowProgressBar();
-
-            var Pra = new DeleteResidencePra();
-            Pra.HomeId = Common.Config.Instance.Home.Id;
-            Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
-
-            bool result = await UserCenterLogic.GetResultStatuByRequestHttps("App/DelHome", true, Pra);
-            //鍏抽棴杩涘害鏉�
-            this.CloseProgressBar();
-            if (result == false)
-            {
-                return;
-            }
-
-            //鍥犱负鍒犻櫎鐨勬槸褰撳墠鐨勪綇瀹�,鎵�浠ラ渶瑕佸厛鍒囨崲鍒板埆鐨勪綇瀹�
-            string deleteId = Common.Config.Instance.Home.Id;
-            string deleteFile = Common.Config.Instance.Home.FileName;
-            int index = 0;
-            for (; index < Common.Config.Instance.HomeFilePathList.Count; index++)
-            {
-                if (Common.Config.Instance.HomeFilePathList[index] == deleteFile)
-                {
-                    //褰撳墠浣忓畢鎵�澶勭殑浣嶇疆(浣忓畢鏁拌偗瀹氬ぇ浜�1,涓嶇劧涓嶄細鍑虹幇鍒犻櫎鎸夐挳)
-                    if (index == 0)
-                    {
-                        //鍙栦笅涓�浣�
-                        index++;
-                    }
-                    else
-                    {
-                        //鍙栧墠涓�浣�
-                        index--;
-                    }
-                    break;
-                }
-            }
-
-            var myHouse = Common.House.GetHouseByFilePath(Common.Config.Instance.HomeFilePathList[index]);
-            //鍒囨崲浣忓畢
-            Common.Config.Instance.HomeId = myHouse.Id;
-            Common.Global.CreateHomeDirectory(myHouse.Id);
-            Common.Config.Instance.Save();
-            //鍒锋柊涓汉涓績鐨勫唴瀛樺強绾跨▼
-            await UserCenterLogic.InitUserCenterMenmoryAndThread();
-            Common.Room.InitAllRoom();
-
-            //鍒犻櫎浣忓畢
-            Common.House.DeleteHouseByHouseId(deleteId);
-
-            Application.RunOnMainThread(() =>
-            {
-                //鍏抽棴鐣岄潰
-                this.CloseForm();
-            });
-        }
-
-        #endregion
-
-        #region 鈻� 涓�鑸柟娉昣__________________________
-
-        /// <summary>
-        /// 妫�娴婣pp鐨勪綇瀹呮ā寮� 0:杩樻病鏈夎缃湁妯″紡 1:妤煎眰妯″紡 2:娌℃湁妤煎眰妯″紡
-        /// </summary>
-        /// <returns></returns>
-        private int CheckAppResidenceMode()
-        {
-            if (Common.Config.Instance.Home.FloorDics.Count > 0)
-            {
-                //鎷ユ湁妤煎眰
-                return 1;
-            }
-            if (Common.Room.Lists.Count > 1)
-            {
-                //鏃犳ゼ灞傛ā寮�
-                return 2;
-            }
-
-            return 0;
-        }
-
 
         /// <summary>
         /// 妫�娴嬫ゼ灞傚悕绉�
@@ -688,6 +290,144 @@
 
         #endregion
 
+        #region 鈻� 鍒犻櫎妤煎眰___________________________
+
+        /// <summary>
+        /// 鍒犻櫎妤煎眰
+        /// </summary>
+        /// <param name="keys"></param>
+        private void DeleteFloor(string keys)
+        {
+            //纭鍒犻櫎妤煎眰鍙婂叾鎵�鏈夋埧闂�?
+            this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uDeleteFloorMsg), () =>
+            {
+                //绉婚櫎妤煎眰
+                Common.Config.Instance.Home.FloorDics.Remove(keys);
+                if (Common.Room.CurrentRoom == null)
+                {
+                    Common.Room.CurrentRoom = Common.Room.Lists[0];
+                }
+                var listDeleteFile = new List<string>();
+                for (int i = 0; i < Common.Room.Lists.Count; i++)
+                {
+                    if (Common.Room.Lists[i].FloorId == keys)
+                    {
+                        listDeleteFile.Add(Common.Room.Lists[i].FileName);
+                    }
+                }
+                //鍒犻櫎鎴块棿
+                foreach (string fileName in listDeleteFile)
+                {
+                    Common.Room.CurrentRoom.Remove(fileName);
+                }
+                //濡傛灉褰撳墠閫夋嫨鐨勬埧闂存槸鍒犻櫎瀵硅薄鐨勮瘽
+                if (Common.Room.CurrentRoom.FloorId == keys)
+                {
+                    Common.Room.CurrentRoom = Common.Room.Lists[0];
+                }
+                Common.Config.Instance.Home.Save();
+                //閲嶆柊鍒濆鍖栨ゼ灞傝
+                listFloorSort.Remove(keys);
+                this.InitFloorRow();
+            });
+        }
+
+        #endregion
+
+        #region 鈻� 鍙充笂瑙掕彍鍗昣________________________
+
+        /// <summary>
+        /// 鍒濆鍖栧彸涓婅鑿滃崟
+        /// </summary>
+        private void InitTopRightMenu()
+        {
+            var btnIcon = new MostRightIconControl(69, 69);
+            btnIcon.UnSelectedImagePath = "Item/More.png";
+            topFrameLayout.AddChidren(btnIcon);
+            btnIcon.InitControl();
+            btnIcon.ButtonClickEvent += ((sender, e) =>
+            {
+                var frame = new TopRightMenuControl(this, 1);
+                //鍒犻櫎浣忓畢
+                frame.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uDeleteResidence), "Item/DeleteIcon2.png", "Item/DeleteIcon2Selected.png", () =>
+                {
+                    //纭鍒犻櫎浣忓畢鍙婃墍鏈夋ゼ灞傘�佹埧闂�?
+                    string msg = Language.StringByID(R.MyInternationalizationString.uDeleteResidenceMsg);
+                    this.ShowMassage(ShowMsgType.Confirm, msg, () =>
+                    {
+                        this.DeleteResidence();
+                    });
+                });
+            });
+        }
+
+        /// <summary>
+        /// 鍒犻櫎浣忓畢
+        /// </summary>
+        public async void DeleteResidence()
+        {
+            //寮�鍚繘搴︽潯
+            this.ShowProgressBar();
+
+            var Pra = new DeleteResidencePra();
+            Pra.HomeId = Common.Config.Instance.Home.Id;
+            Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
+
+            bool result = await UserCenterLogic.GetResultStatuByRequestHttps("App/DelHome", true, Pra);
+            //鍏抽棴杩涘害鏉�
+            this.CloseProgressBar();
+            if (result == false)
+            {
+                return;
+            }
+
+            HdlThreadLogic.Current.RunThread(async () =>
+            {
+                //鍥犱负鍒犻櫎鐨勬槸褰撳墠鐨勪綇瀹�,鎵�浠ラ渶瑕佸厛鍒囨崲鍒板埆鐨勪綇瀹�
+                string deleteId = Common.Config.Instance.Home.Id;
+                string deleteFile = Common.Config.Instance.Home.FileName;
+                int index = 0;
+                for (; index < Common.Config.Instance.HomeFilePathList.Count; index++)
+                {
+                    if (Common.Config.Instance.HomeFilePathList[index] == deleteFile)
+                    {
+                        //褰撳墠浣忓畢鎵�澶勭殑浣嶇疆(浣忓畢鏁拌偗瀹氬ぇ浜�1,涓嶇劧涓嶄細鍑虹幇鍒犻櫎鎸夐挳)
+                        if (index == 0)
+                        {
+                            //鍙栦笅涓�浣�
+                            index++;
+                        }
+                        else
+                        {
+                            //鍙栧墠涓�浣�
+                            index--;
+                        }
+                        break;
+                    }
+                }
+
+                var myHouse = Common.House.GetHouseByFilePath(Common.Config.Instance.HomeFilePathList[index]);
+                //鍒囨崲浣忓畢
+                Common.Config.Instance.HomeId = myHouse.Id;
+                Common.Global.CreateHomeDirectory(myHouse.Id);
+                Common.Config.Instance.Save();
+                //鍒锋柊涓汉涓績鐨勫唴瀛樺強绾跨▼
+                await UserCenterLogic.InitUserCenterMenmoryAndThread();
+                Common.Room.InitAllRoom();
+
+                //鍒犻櫎浣忓畢
+                Common.House.DeleteHouseByHouseId(deleteId);
+
+                Application.RunOnMainThread(() =>
+                {
+                    //鍏抽棴鐣岄潰
+                    this.CloseForm();
+                });
+            });
+        }
+
+        #endregion
+
         #region 鈻� 缁撴瀯浣揰____________________________
 
         /// <summary>

--
Gitblit v1.8.0