From 2109463fab2eb1caed189e4f258e0e763c5cea7b Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 07 十一月 2019 11:58:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev-tzy' into dev-wjc --- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs | 93 +++++++++++++++++++++++++++++++--------------- 1 files changed, 63 insertions(+), 30 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs index dbce5ad..9669fe7 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs @@ -27,8 +27,6 @@ //var dev = common as Panel; }); } - - /// 鏋勯�犲嚱鏁� /// </summary> /// <param name="doorLock"></param> @@ -39,8 +37,58 @@ #region 鈼� 鍙橀噺鐢虫槑__________________________ ZigBee.Device.DoorLock doorLock; - List<Shared.Phone.UserCenter.MemberInfoRes> localAccountList = new List<Shared.Phone.UserCenter.MemberInfoRes> { }; + VerticalScrolViewLayout midVerticalScrolViewLayout; #endregion + + void ReadAccountList() + { + System.Threading.Tasks.Task.Run(async () => + { + Application.RunOnMainThread(() => { CommonPage.Loading.Start("Loading..."); }); + try + { + var localAccountListTemp = await Shared.Phone.UserCenter.DoorLock.DoorLockCommonInfo.LocalAccountList(); + if (localAccountListTemp != null) + { + doorLock.localAllAccountList.Clear(); + doorLock.localAllAccountList = localAccountListTemp; + foreach (var sub in localAccountListTemp) + { + //鍒濆鍖栨潈闄愪俊鎭� + if (doorLock.IsFreezeAccount.ContainsKey(sub.SubAccountDistributedMark) == false) + { + doorLock.IsFreezeAccount.Add(sub.SubAccountDistributedMark, false); + } + if (doorLock.HasRemoteUnlockAccess.ContainsKey(sub.SubAccountDistributedMark) == false) + { + doorLock.HasRemoteUnlockAccess.Add(sub.SubAccountDistributedMark, false); + } + if (doorLock.IsFailedToGetDoorLockInfo.ContainsKey(sub.SubAccountDistributedMark) == false) + { + doorLock.IsFailedToGetDoorLockInfo.Add(sub.SubAccountDistributedMark, false); + } + } + doorLock.ReSave(); + } + else + { + Application.RunOnMainThread(() => + { + new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.CloudServerResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(this.btnTip); + }); + } + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + MidFrameLayoutContent(); + CommonPage.Loading.Hide(); + }); + } + }); + } public void Show() { @@ -83,7 +131,7 @@ EventHandler<MouseEventArgs> eHandler = (sender, e) => { - var undistributeDoorlockUserPage = new Shared.Phone.UserCenter.DoorLock.UndistributeDoorlockUserPage(doorLock, localAccountList); + var undistributeDoorlockUserPage = new Shared.Phone.UserCenter.DoorLock.UndistributeDoorlockUserPage(doorLock, doorLock.localAllAccountList); Shared.Phone.UserView.HomePage.Instance.AddChidren(undistributeDoorlockUserPage); Shared.Phone.UserView.HomePage.Instance.PageIndex += 1; undistributeDoorlockUserPage.Show(); @@ -91,41 +139,26 @@ btnAddFrameLayout.MouseDownEventHandler += eHandler; btnUndistributeText.MouseDownEventHandler += eHandler; btnUndistributeIcon.MouseDownEventHandler += eHandler; - - MidFrameLayoutContent(); + midVerticalScrolViewLayout = new VerticalScrolViewLayout() + { + }; + this.midFrameLayout.AddChidren(midVerticalScrolViewLayout); + ReadAccountList(); + // MidFrameLayoutContent(); } async void MidFrameLayoutContent() { - List<Shared.Phone.UserCenter.MemberInfoRes> SubAccounList = null; - if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2) + midVerticalScrolViewLayout.RemoveAll(); + for (int i = 0; i < doorLock.localAllAccountList.Count; i++) { - SubAccounList = await ZigBee.Device.DoorLock.GetSubAccountByDistributedMark(); - } - - var masterAccount = new Shared.Phone.UserCenter.MemberInfoRes(); - masterAccount.Account = Shared.Common.Config.Instance.Account; - masterAccount.AccountType = Shared.Common.Config.Instance.AccountType; - masterAccount.SubAccountDistributedMark = Shared.Common.Config.Instance.Guid; - masterAccount.UserName = UserCenterResourse.UserInfo.UserName; - localAccountList.Add(masterAccount); - localAccountList.AddRange(SubAccounList); - - var bodyView = new VerticalScrolViewLayout() - { - }; - this.midFrameLayout.AddChidren(bodyView); - - doorLock.localAllAccountList = localAccountList; - for (int i = 0; i < localAccountList.Count; i++) - { - var currentAccount = localAccountList[i]; + var currentAccount = doorLock.localAllAccountList[i]; var RowView = new FrameLayout() { Height = Application.GetRealHeight(161), BackgroundColor = Shared.Common.ZigbeeColor.Current.XMTopFrameLayout, }; - bodyView.AddChidren(RowView); + midVerticalScrolViewLayout.AddChidren(RowView); var btnText = new Button() { @@ -166,7 +199,7 @@ }; RowView.AddChidren(line2); int currentIndex = i; - if (currentIndex == localAccountList.Count - 1) + if (currentIndex == doorLock.localAllAccountList.Count - 1) { line2.Visible = false; } -- Gitblit v1.8.0