From 94e4e5b9fd3da964c44b7b14227d6fe2bbb426d7 Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 02 四月 2020 13:56:39 +0800 Subject: [PATCH] 2020-04-02-2 --- ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs | 99 ++++++++++++++++++++++++++++++++----------------- 1 files changed, 65 insertions(+), 34 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs index 0b71266..30cd414 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs @@ -189,12 +189,12 @@ //娌℃湁璁剧疆杩囨ā寮� if (AppResidenceMode == 0) { - var frame = new TopRightMenuControl(2); + var frame = new TopRightMenuControl(2, 2); //鍒涘缓妤煎眰 frame.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uCreatFloor), "Item/CreatFloor.png", "Item/CreatFloorSelected.png", () => { //鍒涘缓妤煎眰 - this.CreatOrEditorFloor(null, string.Empty, string.Empty); + this.CreatOrEditorFloor(null, null, string.Empty, string.Empty); }); //鍒涘缓鎴块棿 frame.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uCreatRoom), "Item/RoomIcon.png", "Item/RoomIconSelected.png", () => @@ -212,7 +212,7 @@ else if (AppResidenceMode == 1) { //鍒涘缓妤煎眰 - this.CreatOrEditorFloor(null, string.Empty, string.Empty); + this.CreatOrEditorFloor(null, null, string.Empty, string.Empty); } //鏃犳ゼ灞傛ā寮� else if (AppResidenceMode == 2) @@ -266,7 +266,7 @@ private void InitFloorRow() { //鑾峰彇妤煎眰 - var dicFloor = Common.Room.CurrentRoom.GetFloorSortList(); + var dicFloor = HdlRoomLogic.Current.GetFloorSortList(); this.listFloorSort.Clear(); foreach (string keys in dicFloor.Keys) { @@ -335,7 +335,7 @@ btnChanged.ButtonClickEvent += (sender, e) => { //鍒涘缓鎴栬�呯紪杈戞ゼ灞� - this.CreatOrEditorFloor(btnFloor, keys, floorName); + this.CreatOrEditorFloor(frameRow, btnFloor, keys, floorName); }; //鍒犻櫎 @@ -353,32 +353,40 @@ { //绉婚櫎妤煎眰 Common.Config.Instance.Home.FloorDics.Remove(keys); - if (Common.Room.CurrentRoom == null) + if (Common.Config.Instance.Home.CurrentFloorId == keys) { - 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) + //濡傛灉鍒犻櫎鐨勬槸褰撳墠妤煎眰鐨勮瘽 + Common.Config.Instance.Home.CurrentFloorId = string.Empty; + foreach (string floorId in Common.Config.Instance.Home.FloorDics.Keys) { - listDeleteFile.Add(Common.Room.Lists[i].FileName); + //鎶婄涓�涓ゼ灞侷D缁欏畠 + Common.Config.Instance.Home.CurrentFloorId = floorId; + break; } } - //鍒犻櫎鎴块棿 - foreach (string fileName in listDeleteFile) + var listDeleteId = new List<string>(); + var listAllRoom = HdlRoomLogic.Current.GetAllListRooms(); + for (int i = 0; i < listAllRoom.Count; i++) { - Common.Room.CurrentRoom.Remove(fileName); + if (listAllRoom[i].FloorId == keys) + { + listDeleteId.Add(listAllRoom[i].Id); + } } //濡傛灉褰撳墠閫夋嫨鐨勬埧闂存槸鍒犻櫎瀵硅薄鐨勮瘽 - if (Common.Room.CurrentRoom.FloorId == keys) + if (HdlRoomLogic.Current.CurrentRoom.FloorId == keys) { - Common.Room.CurrentRoom = Common.Room.Lists[0]; + HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom(); + } + //鍒犻櫎鎴块棿 + foreach (string roomId in listDeleteId) + { + HdlRoomLogic.Current.RemoveRoom(roomId); } Common.Config.Instance.Home.Save(); //淇濆瓨椤哄簭 listFloorSort.Remove(keys); - Common.Room.CurrentRoom.SaveFloorSort(listFloorSort); + HdlRoomLogic.Current.SaveFloorSort(listFloorSort); if (Common.Config.Instance.Home.FloorDics.Count == 0) { @@ -401,7 +409,7 @@ /// <param name="btnFloor"></param> /// <param name="keys"></param> /// <param name="floorName"></param> - private void CreatOrEditorFloor(NormalViewControl btnFloor, string keys, string floorName) + private void CreatOrEditorFloor(RowLayoutControl frameRow, NormalViewControl btnFloor, string keys, string floorName) { //鐢熸垚涓�涓脊绐楃敾闈� var dialogForm = new DialogInputControl(); @@ -414,8 +422,15 @@ } //璇疯緭鍏ユゼ灞傚悕绉� dialogForm.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInputFloorName)); - dialogForm.Text = floorName; - + if (Common.Config.Instance.Home.FloorDics.ContainsKey(keys) == true) + { + dialogForm.Text = Common.Config.Instance.Home.FloorDics[keys]; + floorName = Common.Config.Instance.Home.FloorDics[keys]; + } + else + { + dialogForm.Text = floorName; + } //鎸変笅纭鎸夐挳 dialogForm.ComfirmClickEvent += ((textValue) => { @@ -426,6 +441,8 @@ } //鐢婚潰鍏抽棴 dialogForm.CloseDialog(); + //杩樺師宸﹀彸鑿滃崟 + frameRow?.HideMenu(); if (floorName != textValue) { //缂栬緫鎴栬�呭垱寤烘ゼ灞傚悕绉� @@ -435,6 +452,10 @@ } Common.Config.Instance.Home.FloorDics[keys] = textValue; Common.Config.Instance.Home.Save(); + if (Common.Config.Instance.Home.CurrentFloorId == string.Empty) + { + Common.Config.Instance.Home.CurrentFloorId = keys; + } if (btnFloor != null) { btnFloor.Text = textValue; @@ -487,7 +508,7 @@ private void InitRoomListRow() { //鑾峰彇妤煎眰鐨勬埧闂� - var listRoom = Common.Room.CurrentRoom.GetFloorSortRoom(string.Empty); + var listRoom = HdlRoomLogic.Current.GetFloorSortRoom(string.Empty); this.listRoomSort.Clear(); for (int i = 0; i < listRoom.Count; i++) { @@ -545,6 +566,8 @@ var btnEditor = frameRow.AddEditorControl(); btnEditor.ButtonClickEvent += (sender, e) => { + //鍏抽棴宸﹀彸鑿滃崟 + frameRow.HideMenu(); var form = new EditorRoomInforForm(); form.AddForm(room); form.FinishEditorEvent += (roomName) => @@ -560,17 +583,18 @@ //纭鍒犻櫎鎴块棿? this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uDeleteRoomMsg), () => { - if (Common.Room.CurrentRoom.Id == room.Id) + if (HdlRoomLogic.Current.CurrentRoom.Id == room.Id) { //濡傛灉鍒犻櫎鐨勬槸褰撳墠鎴块棿鐨勮瘽 - Common.Room.CurrentRoom = Common.Room.Lists[0]; + HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom(); } - Common.Room.CurrentRoom.Remove(room.FileName); + HdlRoomLogic.Current.RemoveRoom(room.Id); //淇濆瓨椤哄簭 this.listRoomSort.Remove(room.Id); - Common.Room.CurrentRoom.SaveRoomSort(string.Empty, this.listRoomSort); + HdlRoomLogic.Current.SaveRoomSort(string.Empty, this.listRoomSort); - if (Common.Room.Lists.Count <= 1) + var listAllRoom = HdlRoomLogic.Current.GetAllListRooms(); + if (listAllRoom.Count <= 1) { //鏍规嵁鎸囧畾妯″紡,鍒濆鍖栨甯冩帶浠� this.InitFrameTableByMode(); @@ -601,10 +625,10 @@ Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken(); bool result = await UserCenterLogic.GetResultStatuByRequestHttps("App/DelHome", true, Pra); - //鍏抽棴杩涘害鏉� - this.CloseProgressBar(); if (result == false) { + //鍏抽棴杩涘害鏉� + this.CloseProgressBar(); return; } @@ -636,9 +660,10 @@ Common.Config.Instance.HomeId = myHouse.Id; Common.Global.CreateHomeDirectory(myHouse.Id); Common.Config.Instance.Save(); + //鍒锋柊涓汉涓績鐨勫唴瀛樺強绾跨▼ - await UserCenterLogic.InitUserCenterMenmoryAndThread(); - Common.Room.InitAllRoom(); + await UserCenterLogic.InitUserCenterMenmoryAndThread(false); + HdlRoomLogic.Current.InitAllRoom(); //鍒犻櫎浣忓畢 Common.House.DeleteHouseByHouseId(deleteId); @@ -684,7 +709,13 @@ var listGateway = HdlGatewayLogic.Current.GetAllLocalGateway(); foreach (var gateway in listGateway) { - var result = HdlGatewayLogic.Current.SetGatewaySite(gateway, longitude, latitude); + ZigBee.Device.ZbGateway realWay = null; + if (HdlGatewayLogic.Current.GetRealGateway(ref realWay, gateway) == false) + { + //閿欒:缃戝叧瀵硅薄涓㈠け + continue; + } + var result = HdlGatewayLogic.Current.SetGatewaySite(gateway, longitude, latitude, ShowErrorMode.YES); if (result == false) { //鍏抽棴杩涘害鏉� @@ -720,7 +751,7 @@ //鎷ユ湁妤煎眰 return 1; } - if (Common.Room.Lists.Count > 1) + if (HdlRoomLogic.Current.GetAllListRooms().Count > 1) { //鏃犳ゼ灞傛ā寮� return 2; -- Gitblit v1.8.0