From 652243206427f35a256400a149a1734085824cb9 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期三, 02 九月 2020 17:35:03 +0800 Subject: [PATCH] 2020-09-02-4 --- ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceListForm.cs | 134 ++++++++++++++++++++++++-------------------- 1 files changed, 72 insertions(+), 62 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceListForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceListForm.cs index 2ac9c0a..50c2d74 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceListForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceListForm.cs @@ -78,7 +78,7 @@ /// <param name="div">1:鍏堣鍙栦簯绔�,鏃犳硶鑱旂綉,鍐嶈鍙栨湰鍦� 2:鍙浜戠 3:鍙鏈湴</param> private void SetResidenceInfo(int div) { - HdlThreadLogic.Current.RunThread(async () => + HdlThreadLogic.Current.RunThread(() => { //铏氭嫙浣忓畢鐨勮瘽,鍙鏈湴 if (div == 3 || Config.Instance.Home.IsVirtually == true) @@ -91,7 +91,7 @@ //寮�鍚繘搴︽潯 this.ShowProgressBar(); //璁剧疆浣忓畢淇℃伅(鏈夌綉鎯呭喌) - var result = await this.SetResidenceInfoByOnline(); + var result = this.SetResidenceInfoByOnline(); if (result == true) { //浜戠璇诲彇鎴愬姛 @@ -120,26 +120,18 @@ /// <summary> /// 璁剧疆浣忓畢淇℃伅(鏈夌綉鎯呭喌) /// </summary> - private async System.Threading.Tasks.Task<bool> SetResidenceInfoByOnline() + private bool SetResidenceInfoByOnline() { //鑾峰彇浣忓畢淇℃伅 var Pra = new GetResidenceInfoPra(); - var listNotCheck = new List<string>() { "NotSetAgain" }; - string resultData = await UserCenterLogic.GetResponseDataByRequestHttps("App/GetHomePager", false, Pra, listNotCheck); - if (resultData == null) + string resultData = UserCenterLogic.GetResponseDataByRequestHttps("App/GetHomePager", false, Pra, new List<string> { "NotCheck" }, false); + if (string.IsNullOrEmpty(resultData) == true) { return false; } var pageData = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.ResponseEntity.ResidenceRes>(resultData); - - //鏆傛椂瀛樺偍鏁版嵁 - var dicData = new Dictionary<string, Common.ResponseEntity.ResidenceObj>(); - var listResidenceSort = new List<string>(); - for (int i = 0; i < pageData.PageData.Count; i++) - { - dicData[pageData.PageData[i].Id] = pageData.PageData[i]; - listResidenceSort.Add(pageData.PageData[i].Id); - } + //鎺掑簭浣忓畢 + var listHouse = HdlResidenceLogic.Current.SortHouse(pageData.PageData); HdlThreadLogic.Current.RunMain(() => { @@ -150,18 +142,14 @@ listView.Height = bodyFrameLayout.Height; this.dicResidenceData = new Dictionary<string, Common.ResponseEntity.ResidenceObj>(); - for (int i = 0; i < listResidenceSort.Count; i++) + for (int i = 0; i < listHouse.Count; i++) { - if (dicData.ContainsKey(listResidenceSort[i]) == false) - { - continue; - } - var info = dicData[listResidenceSort[i]]; + var info = listHouse[i]; //鏀堕泦璇ヨ处鍙蜂綇瀹呯殑鏁版嵁 this.dicResidenceData[info.Id] = info; //娣诲姞浣忓畢鐨勮(鏈夌綉鎯呭喌) - this.AddRowLayoutByOnline(info, i != listResidenceSort.Count - 1); + this.AddRowLayoutByOnline(info, i != listHouse.Count - 1); } //璋冩暣鍒楄〃鎺т欢鐨勯珮搴� this.listView.AdjustRealHeight(Application.GetRealHeight(23)); @@ -224,7 +212,7 @@ } this.ShowMassage(ShowMsgType.Confirm, msg, () => { - HdlThreadLogic.Current.RunThread(async () => + HdlThreadLogic.Current.RunThread(() => { //寮�鍚繘搴︽潯 this.ShowProgressBar(); @@ -232,13 +220,16 @@ //妫�娴嬫湰鍦版湁娌℃湁杩欎釜浣忓畢 this.CheckIsExsitResidence(info); - await HdlResidenceLogic.Current.SwitchResidence(info.Id); + var result = HdlResidenceLogic.Current.SwitchResidence(info.Id); HdlThreadLogic.Current.RunMain(() => { - //閲嶆柊鍒锋柊鍒楄〃 - this.listView.RemoveAll(); - this.SetResidenceInfo(2); + if (result == true) + { + //閲嶆柊鍒锋柊鍒楄〃 + this.listView.RemoveAll(); + this.SetResidenceInfo(2); + } //鍏抽棴杩涘害鏉� this.CloseProgressBar(); }); @@ -259,6 +250,14 @@ //鍒嗕韩鐨�,涓嶈兘鏇存敼 return; } + //杩囨埛 + var btnTransfer = rowLayout.AddDeleteControl(); + btnTransfer.TextID = R.MyInternationalizationString.uTransfer; + btnTransfer.ButtonClickEvent += (sender, e) => + { + var form = new TransferResidenceMainForm(); + form.AddForm(); + }; //鏇存敼 var btnChanged = rowLayout.AddEditorControl(); btnChanged.TextID = R.MyInternationalizationString.uChanged1; @@ -354,15 +353,18 @@ } this.ShowMassage(ShowMsgType.Confirm, msg, () => { - HdlThreadLogic.Current.RunThread(async () => + HdlThreadLogic.Current.RunThread(() => { - await HdlResidenceLogic.Current.SwitchResidence(i_home.Id); + var result = HdlResidenceLogic.Current.SwitchResidence(i_home.Id); HdlThreadLogic.Current.RunMain(() => { - //閲嶆柊鍒锋柊鍒楄〃 - this.listView.RemoveAll(); - this.SetResidenceInfo(3); + if (result == true) + { + //閲嶆柊鍒锋柊鍒楄〃 + this.listView.RemoveAll(); + this.SetResidenceInfo(3); + } //鍏抽棴杩涘害鏉� this.CloseProgressBar(); }); @@ -377,14 +379,14 @@ form.AddForm(flage); } }; - //鏇存敼 - var btnChanged = rowLayout.AddEditorControl(); - btnChanged.TextID = R.MyInternationalizationString.uChanged1; - btnChanged.ButtonClickEvent += (sender, e) => - { - //鏄剧ず缂栬緫鍚嶇О鐣岄潰 - this.ShowEditorNameForm(null, i_home, btnHome); - }; + ////鏇存敼 + //var btnChanged = rowLayout.AddEditorControl(); + //btnChanged.TextID = R.MyInternationalizationString.uChanged1; + //btnChanged.ButtonClickEvent += (sender, e) => + //{ + // //鏄剧ず缂栬緫鍚嶇О鐣岄潰 + // this.ShowEditorNameForm(null, i_home, btnHome); + //}; } #endregion @@ -424,7 +426,10 @@ if (info != null) { //缂栬緫浜戠鐨勪綇瀹呭悕绉� - this.EditorResidenceName(textValue, info, btnHome); + HdlThreadLogic.Current.RunThread(() => + { + this.EditorResidenceName(textValue, info, btnHome); + }); } else { @@ -448,7 +453,7 @@ /// <param name="ResidenceName"></param> /// <param name="info"></param> /// <returns></returns> - private async void EditorResidenceName(string ResidenceName, Common.ResponseEntity.ResidenceObj info, NormalViewControl btnHome) + private void EditorResidenceName(string ResidenceName, Common.ResponseEntity.ResidenceObj info, NormalViewControl btnHome) { //妫�娴嬭兘鍚︿繚瀛樹綇瀹� if (this.CheckIsCanSaveResidence(info.Id, ResidenceName, true) == false) @@ -458,24 +463,21 @@ //寮�鍚繘搴︽潯 this.ShowProgressBar(); - var Pra = new EditorResidencePra(); - Pra.HomeId = info.Id; - Pra.Name = ResidenceName; - Pra.IsOtherAccountCtrl = false; - Pra.LoginAccessToken = Config.Instance.Token; + var result = HdlResidenceLogic.Current.EditorResidenceName(info.Id, ResidenceName); - //缂栬緫浣忓畢 - bool flage = await UserCenterLogic.GetResultStatuByRequestHttps("App/EditHome", false, Pra); //鍏抽棴杩涘害鏉� this.CloseProgressBar(); - if (flage == true) + if (result == true) { - //鍒锋柊鍐呭瓨鐨勪綇瀹呭悕 - HdlResidenceLogic.Current.EditorHouseByHouseId(info.Id, ResidenceName); - //鏇存敼鏄剧ず鐨勫悕瀛� - btnHome.Text = ResidenceName; - info.Name = ResidenceName; + HdlThreadLogic.Current.RunMain(() => + { + //鍒锋柊鍐呭瓨鐨勪綇瀹呭悕 + HdlResidenceLogic.Current.EditorHouseByHouseId(info.Id, ResidenceName); + //鏇存敼鏄剧ず鐨勫悕瀛� + btnHome.Text = ResidenceName; + info.Name = ResidenceName; + }); } } @@ -508,7 +510,10 @@ dialogForm.CloseDialog(); //淇濆瓨浣忓畢 - this.AddNewResidence(textValue); + HdlThreadLogic.Current.RunThread(() => + { + this.AddNewResidence(textValue); + }); }); } @@ -517,7 +522,7 @@ /// </summary> /// <param name="ResidenceName"></param> /// <returns></returns> - private async void AddNewResidence(string ResidenceName) + private void AddNewResidence(string ResidenceName) { //妫�娴嬭兘鍚︿繚瀛樹綇瀹� if (this.CheckIsCanSaveResidence(string.Empty, ResidenceName, false) == false) @@ -530,8 +535,8 @@ var Pra = new AddResidencePra(); Pra.Name = ResidenceName; //娣诲姞浣忓畢 - string resultData = await UserCenterLogic.GetResponseDataByRequestHttps("App/AddHome", false, Pra); - if (resultData == null) + string resultData = UserCenterLogic.GetResponseDataByRequestHttps("App/AddHome", false, Pra); + if (string.IsNullOrEmpty(resultData) == true) { //鍏抽棴杩涘害鏉� this.CloseProgressBar(); @@ -541,9 +546,14 @@ var newInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<NewResidenceInfo>>(resultData); HdlResidenceLogic.Current.AddHouseToMemmory(newInfo[0].Id, ResidenceName); - //閲嶆柊鍒锋柊鍒楄〃 - this.listView.RemoveAll(); - this.SetResidenceInfo(2); + + HdlThreadLogic.Current.RunMain(() => + { + //閲嶆柊鍒锋柊鍒楄〃 + this.listView.RemoveAll(); + this.SetResidenceInfo(2); + }); + } #endregion -- Gitblit v1.8.0