From a4924de3136289d10cabbf2f61a228387d44ded7 Mon Sep 17 00:00:00 2001 From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local> Date: 星期四, 07 十一月 2019 13:48:36 +0800 Subject: [PATCH] Merge branch 'dev-tzy' into DEV_GXC --- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs | 177 +++++++++++++++++++++-------------------------------------- 1 files changed, 63 insertions(+), 114 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs index 0b5d4d8..191071a 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs @@ -27,91 +27,6 @@ //var dev = common as Panel; }); } - //浠庨棬閿佽淇℃伅 - void ReadDoorLockDeviceUserInfo() - { - System.Threading.Tasks.Task.Run(async () => - { - Application.RunOnMainThread(() => { CommonPage.Loading.Start("Loading..."); }); - try - { - var getDoorLockInfo = await doorLock.GetDoorlockUserInfoAsync(); - if (getDoorLockInfo != null && getDoorLockInfo.doorLockUserDetailData != null) - { - var dataList = getDoorLockInfo.doorLockUserDetailData.UserObjList; - foreach (var doorData in dataList) - { - var localDoorLockObj1 = new ZigBee.Device.DoorLock.LocaDoorLockObj() - { - UserID = doorData.UserId, - UnlockType = doorData.UserType - }; - if ((doorLock.localDoorLockUserList.ContainsKey(localDoorLockObj1.UserID)) == false) - { - doorLock.localDoorLockUserList.Add(localDoorLockObj1.UserID, localDoorLockObj1); - } - } - } - } - catch { } - finally - { - Application.RunOnMainThread(() => - { - CommonPage.Loading.Hide(); - }); - } - }); - } - //浠庢湇鍔″櫒璇讳俊鎭� - void ReadDoorLockServerUserInfo(Shared.Phone.UserCenter.MemberInfoRes curAccountObj) - { - System.Threading.Tasks.Task.Run(async () => - { - Application.RunOnMainThread(() => { CommonPage.Loading.Start("Loading..."); }); - try - { - // 璇诲彇浜戠闂ㄩ攣璁惧涓殑淇℃伅 - var localDoorLockObj = new ZigBee.Device.DoorLock.GetDoorLockData() { }; - - localDoorLockObj.CloudAccountId = curAccountObj.SubAccountDistributedMark; - if (doorLock.DeviceAddr != null) - { - localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; - } - - var getDoorLockInfoList = await ZigBee.Device.DoorLock.GetDoorLockInfoFromServer("App/GetDoorLockPager", localDoorLockObj); - if (getDoorLockInfoList != null) - { - foreach (var curDoorLockUser in getDoorLockInfoList.PageData) - { - if (doorLock.localDoorLockUserList.ContainsKey(int.Parse(curDoorLockUser.DoorLockLocalUserId))) - { - doorLock.localDoorLockUserList.Remove(int.Parse(curDoorLockUser.DoorLockLocalUserId)); - } - var doorLockObj = new ZigBee.Device.DoorLock.LocaDoorLockObj() { }; - doorLockObj.UserID = int.Parse(curDoorLockUser.DoorLockLocalUserId); - doorLockObj.UnlockType = curDoorLockUser.OpenLockMode; - doorLockObj.PrimaryId = curDoorLockUser.Id; - doorLockObj.EntryTime = curDoorLockUser.EntryTime; - doorLockObj.UserName = curDoorLockUser.UserIdRemarks; - doorLockObj.ConnectedAccount = curDoorLockUser.CloudAccountId; - doorLock.localDoorLockUserList.Add(int.Parse(curDoorLockUser.DoorLockLocalUserId), doorLockObj); - } - } - } - catch { } - finally - { - Application.RunOnMainThread(() => - { - CommonPage.Loading.Hide(); - }); - } - }); - } - - /// 鏋勯�犲嚱鏁� /// </summary> /// <param name="doorLock"></param> @@ -122,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() { @@ -166,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(); @@ -174,35 +139,26 @@ btnAddFrameLayout.MouseDownEventHandler += eHandler; btnUndistributeText.MouseDownEventHandler += eHandler; btnUndistributeIcon.MouseDownEventHandler += eHandler; - - MidFrameLayoutContent(); + midVerticalScrolViewLayout = new VerticalScrolViewLayout() + { + }; + this.midFrameLayout.AddChidren(midVerticalScrolViewLayout); + ReadAccountList(); + // MidFrameLayoutContent(); } async void MidFrameLayoutContent() { - var 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() + midVerticalScrolViewLayout.RemoveAll(); + for (int i = 0; i < doorLock.localAllAccountList.Count; i++) { - }; - 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() { @@ -243,7 +199,7 @@ }; RowView.AddChidren(line2); int currentIndex = i; - if (currentIndex == localAccountList.Count - 1) + if (currentIndex == doorLock.localAllAccountList.Count - 1) { line2.Visible = false; } @@ -265,13 +221,6 @@ Shared.Phone.UserView.HomePage.Instance.AddChidren(masterManagementPage); Shared.Phone.UserView.HomePage.Instance.PageIndex += 1; masterManagementPage.Show(); - } - else if (currentIndex == 1) - { - var userDoorLockPage = new UserDoorLockPage(doorLock, currentAccount); - Shared.Phone.UserView.HomePage.Instance.AddChidren(userDoorLockPage); - Shared.Phone.UserView.HomePage.Instance.PageIndex += 1; - userDoorLockPage.Show(); } else { -- Gitblit v1.8.0