From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 17 十二月 2020 09:07:13 +0800 Subject: [PATCH] 新云端Ver1.3 --- ZigbeeApp/Shared/Phone/UserCenter/Member/MemberListForm.cs | 187 +++++++++++++++++++--------------------------- 1 files changed, 78 insertions(+), 109 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberListForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberListForm.cs index 6e549ec..eb9aa90 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberListForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberListForm.cs @@ -42,7 +42,7 @@ titleIcon.InitControl(); titleIcon.ButtonClickEvent += (sender, e) => { - var menuContr = new TopRightMenuControl(2, 449); + var menuContr = new TopRightMenuControl(2, 2); //鎵弿浜岀淮鐮� string msg1 = Language.StringByID(R.MyInternationalizationString.uScanQRcode); menuContr.AddRowMenu(msg1, "Item/ScanQRcodeIcon.png", "Item/ScanQRcodeIconSelected.png", () => @@ -54,8 +54,14 @@ return; } //鎼滅储ID - this.SearchMemberInfo(qrCode); - }); + HdlThreadLogic.Current.RunThread(() => + { + this.SearchMemberInfo(qrCode); + }); + }, + Language.StringByID(R.MyInternationalizationString.uCancel), + Language.StringByID(R.MyInternationalizationString.uFlashlamp), + msg1); }); //杈撳叆璐﹀彿 string msg2 = Language.StringByID(R.MyInternationalizationString.uInputAccount); @@ -102,10 +108,10 @@ //鐢ㄦ埛鍥炬爣 var btnUserIcon = new ImageView(); - btnUserIcon.Height = Application.GetMinRealAverage(207); - btnUserIcon.Width = Application.GetMinRealAverage(207); - btnUserIcon.Radius = (uint)Application.GetMinRealAverage(207) / 2; - btnUserIcon.ImagePath = UserCenterResourse.UserInfo.UserIconFile; + btnUserIcon.Height = this.GetPictrueRealSize(207); + btnUserIcon.Width = this.GetPictrueRealSize(207); + btnUserIcon.Radius = (uint)this.GetPictrueRealSize(207) / 2; + btnUserIcon.ImagePath = HdlFileNameResourse.UserHeadIconFile; btnUserIcon.Y = Application.GetRealHeight(46); btnUserIcon.Gravity = Gravity.CenterHorizontal; frameBack.AddChidren(btnUserIcon); @@ -115,7 +121,7 @@ btnName.TextAlignment = TextAlignment.Center; btnName.Y = btnUserIcon.Bottom + Application.GetRealHeight(20); btnName.TextSize = 16; - btnName.Text = UserCenterResourse.UserInfo.UserName; ; + btnName.Text = HdlUserCenterResourse.UserInfo.NickName; ; frameBack.AddChidren(btnName); //韬唤 @@ -123,8 +129,8 @@ btnAuthority.TextAlignment = TextAlignment.Center; btnAuthority.Y = btnName.Bottom + Application.GetRealHeight(10); btnAuthority.TextSize = 12; - btnAuthority.TextColor = UserCenterColor.Current.TextGrayColor; - btnAuthority.Text = UserCenterResourse.UserInfo.AuthorityText; + btnAuthority.TextColor = UserCenterColor.Current.TextGrayColor1; + btnAuthority.Text = HdlUserCenterResourse.ResidenceOption.AuthorityText; frameBack.AddChidren(btnAuthority); } @@ -139,7 +145,7 @@ { //鏍囬:鎴愬憳鍒楄〃 var btnMenberTile = new NormalViewControl(800, 60, true); - btnMenberTile.X = ControlCommonResourse.XXLeft; + btnMenberTile.X = HdlControlResourse.XXLeft; btnMenberTile.Y = Application.GetRealHeight(480); btnMenberTile.TextColor = UserCenterColor.Current.TextColor1; btnMenberTile.TextID = R.MyInternationalizationString.MenberList; @@ -162,7 +168,7 @@ HdlThreadLogic.Current.RunThread(() => { //鎬讳箣鍏堟竻绌哄叡浜枃浠跺す鍑嗘病閿� - HdlShardLogic.Current.ClearShardDirectory(); + HdlShardLogic.Current.Dispone(); //鍒濆鍖栨垚鍛樺垪琛� this.InitMemberList(); }); @@ -171,28 +177,13 @@ /// <summary> /// 鍒濆鍖栨垚鍛樺垪琛� /// </summary> - private async void InitMemberList() + private void InitMemberList() { //寮�鍚繘搴︽潯 this.ShowProgressBar(); - var pra = new MemberListInfoPra(); - string result = await UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra); - if (result == null) - { - //鍏抽棴杩涘害鏉� - this.CloseProgressBar(ShowReLoadMode.YES); - return; - } - if (this.Parent == null) - { - //鍏抽棴杩涘害鏉� - this.CloseProgressBar(); - return; - } - - List<MemberInfoRes> listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<MemberInfoRes>>(result); - if (listInfo == null) + var listShowInfo = HdlMemberLogic.Current.GetMemberListInfo(); + if (listShowInfo == null) { //鍏抽棴杩涘害鏉� this.CloseProgressBar(ShowReLoadMode.YES); @@ -201,53 +192,26 @@ //鍏抽棴杩涘害鏉� this.CloseProgressBar(); - //鍏堟竻绌烘垚鍛樺垪琛ㄤ俊鎭� - UserCenterResourse.ListMemberInfo.Clear(); - - List<string> listCheck = new List<string>(); - foreach (MemberInfoRes infoRes in listInfo) - { - if (listCheck.Contains(infoRes.DistributedMark) == true - || infoRes.Account == UserCenterResourse.UserInfo.Phone - || infoRes.Account == UserCenterResourse.UserInfo.Email) - { - //濡傛灉鏄畠鑷繁鐨勮瘽锛屼笉鏄剧ず - continue; - } - if (UserCenterResourse.UserInfo.AuthorityNo != 1 && infoRes.AccountType != 0) - { - //涓嶈兘澶熻幏鍙栨潈闄愮瓑绾ф瘮浠栭珮鐨�(涓讳汉鑷繁鍙互鏃犺杩欎釜鍒ゆ柇) - continue; - } - - listCheck.Add(infoRes.DistributedMark); - //娣诲姞鎴愬憳淇℃伅鐨勭紦瀛� - UserCenterResourse.ListMemberInfo.Add(infoRes); - } - listInfo.Clear(); - //淇濆瓨鎴愬憳淇℃伅鐨勭紦瀛樺埌鏈湴鏂囦欢 - UserCenterLogic.SaveLocalMemberListInfo(); - if (UserCenterResourse.ListMemberInfo.Count == 0) + if (listShowInfo.Count == 0) { return; } HdlThreadLogic.Current.RunMain(() => { //娣诲姞鎴愬憳鍒楄〃 - this.AddMemberListRowByData(); + this.AddMemberListRowByData(listShowInfo); }); } /// <summary> /// 娣诲姞鎴愬憳鍒楄〃 /// </summary> - private void AddMemberListRowByData() + private void AddMemberListRowByData(List<MemberInfoRes> listNewInfo) { if (this.Parent == null) { return; } - var listNewInfo = UserCenterResourse.ListMemberInfo; int count = listNewInfo.Count - 1; for (int i = 0; i < listNewInfo.Count; i++) @@ -278,13 +242,13 @@ listView.AddChidren(rowlayout); //鎴愬憳澶村儚鍥炬爣 - string iconPath = System.IO.Path.Combine(UserCenterResourse.Option.UserPictruePath, info.DistributedMark + ".png"); + string iconPath = System.IO.Path.Combine(HdlFileNameResourse.UserPictrueDirectory, info.ChildAccountId + ".png"); var btnIcon = new ImageView(); - btnIcon.X = ControlCommonResourse.XXLeft; + btnIcon.X = HdlControlResourse.XXLeft; btnIcon.Gravity = Gravity.CenterVertical; - btnIcon.Height = Application.GetMinRealAverage(115); - btnIcon.Width = Application.GetMinRealAverage(115); - btnIcon.Radius = (uint)Application.GetMinRealAverage(115) / 2; + btnIcon.Height = this.GetPictrueRealSize(115); + btnIcon.Width = this.GetPictrueRealSize(115); + btnIcon.Radius = (uint)this.GetPictrueRealSize(115) / 2; if (System.IO.File.Exists(iconPath) == true) { btnIcon.ImagePath = iconPath; @@ -292,15 +256,15 @@ else { btnIcon.ImagePath = "Center/Admin.png"; - this.dicIconControl[info.DistributedMark] = btnIcon; - this.dicMemberAccount[info.DistributedMark] = info.Account; + this.dicIconControl[info.ChildAccountId] = btnIcon; + this.dicMemberAccount[info.ChildAccountId] = info.Account; } rowlayout.AddChidren(btnIcon); //鎴愬憳鏄电О - string memberName = string.IsNullOrEmpty(info.UserName) == true ? info.Account : info.UserName; + string memberName = info.ShowName; var btnName = rowlayout.AddLeftCaption(memberName, 600, true); - btnName.X = ControlCommonResourse.XXLeft + btnIcon.Height + Application.GetRealWidth(35); + btnName.X = HdlControlResourse.XXLeft + btnIcon.Height + Application.GetRealWidth(35); btnName.TextSize = 15; rowlayout.AddChidren(btnName); @@ -318,6 +282,23 @@ }; } + /// <summary> + /// 娣诲姞鎴愬憳琛�(澶栭儴璋冪敤) + /// </summary> + /// <param name="info"></param> + public void AddRowLayoutByOtherForm(MemberInfoRes info) + { + var myRow = listView.GetChildren(listView.ChildrenCount - 1); + if (myRow != null) + { + //鏈�鍚庝竴琛屽姞搴曠嚎 + ((FrameRowControl)myRow).AddBottomLine(); + } + this.AddRowLayout(info, false); + //璋冩暣鍒楄〃鎺т欢鐨勯珮搴� + listView.AdjustRealHeight(Application.GetRealHeight(23)); + } + #endregion #region 鈻� 鑾峰彇鎴愬憳澶村儚_______________________ @@ -331,35 +312,23 @@ { return; } - HdlThreadLogic.Current.RunThread(async () => + HdlThreadLogic.Current.RunThread(() => { - var pra = new AccountInfoPra(); foreach (var keys in dicMemberAccount.Keys) { if (this.Parent == null) { return; } - pra.Account = dicMemberAccount[keys]; - var result = await UserCenterLogic.GetByteResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountInfo", false, pra, new List<string>() { "NotSetAgain" }); - if (result == null) - { - continue; - } - var revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.ResponseEntity.ResponsePack>(System.Text.Encoding.UTF8.GetString(result)); - if (revertObj == null || revertObj.ResponseData == null) - { - continue; - } - var infoResult = Newtonsoft.Json.JsonConvert.DeserializeObject<AccountInfoResult>(revertObj.ResponseData.ToString()); - if (infoResult.HeadImage != null) + var imageData = HdlAccountLogic.Current.DownLoadAccountPictrue(dicMemberAccount[keys]); + if (imageData != null && imageData.Length > 0) { //鍐欏叆澶村儚鍐呭 - string iconPath = System.IO.Path.Combine(UserCenterResourse.Option.UserPictruePath, keys + ".png"); - Shared.IO.FileUtils.WriteFileByBytes(iconPath, infoResult.HeadImage); + string iconPath = System.IO.Path.Combine(HdlFileNameResourse.UserPictrueDirectory, keys + ".png"); + Shared.IO.FileUtils.WriteFileByBytes(iconPath, imageData); HdlThreadLogic.Current.RunMain(() => { - dicIconControl[keys].ImagePath = iconPath; + dicIconControl[keys].ImageBytes = Shared.IO.FileUtils.ReadFile(iconPath); }); } } @@ -371,7 +340,7 @@ #region 鈻� 鍒犻櫎鎸囧畾琛宊________________________ /// <summary> - /// 鍒犻櫎鎸囧畾琛� + /// 鍒犻櫎鎸囧畾琛�(澶栭儴璋冪敤) /// </summary> /// <param name="accountId"></param> public void DeleteRowByAccount(string accountId) @@ -386,6 +355,9 @@ if (row.MainKeys == accountId) { row.RemoveFromParent(); + //璋冩暣鍒楄〃鎺т欢鐨勯珮搴� + listView.AdjustRealHeight(Application.GetRealHeight(23)); + break; } } @@ -400,31 +372,34 @@ /// </summary> /// <param name="accountId">鎴愬憳ID</param> /// <param name="txtMsg">淇℃伅鎺т欢</param> - private async void SearchMemberInfo(string accountId) + private void SearchMemberInfo(string accountId) { - var pra = new AccountInfoPra(); - pra.Account = accountId; - string result = await UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountInfo", false, pra, new List<string>() { "AccountNoExists" }); + //寮�鍚繘搴︽潯 + this.ShowProgressBar(); + + var result = HdlMemberLogic.Current.SearchNormalInfoByAccount(accountId); + //鍏抽棴杩涘害鏉� + this.CloseProgressBar(); + if (result == null) { - //寮傚父 return; } - if (result == string.Empty) + if (result.Account == string.Empty) { - //鎴愬憳涓嶅瓨鍦� - var form = new MemberNotEsixtForm(); - form.AddForm(); + HdlThreadLogic.Current.RunMain(() => + { + //鎴愬憳涓嶅瓨鍦� + var form = new MemberNotEsixtForm(); + form.AddForm(Language.StringByID(R.MyInternationalizationString.uMemberInformation)); + }); return; } - var infoResult = Newtonsoft.Json.JsonConvert.DeserializeObject<AccountInfoResult>(result); - infoResult.Account = accountId; - - Application.RunOnMainThread(() => + HdlThreadLogic.Current.RunMain(() => { var form = new AddMemberInfoForm(); - form.AddForm(infoResult); + form.AddForm(result); }); } @@ -438,13 +413,7 @@ public override int FormActionAgainEvent() { //娓呯┖鍏变韩鏂囦欢澶� - HdlShardLogic.Current.ClearShardDirectory(); - - this.listView.RemoveAll(); - listView.Height = bodyFrameLayout.Height - Application.GetRealHeight(567); - - //娣诲姞鎴愬憳鍒楄〃 - this.AddMemberListRowByData(); + HdlShardLogic.Current.Dispone(); return 1; } -- Gitblit v1.8.0