| | |
| | | //var dev = common as Panel; |
| | | }); |
| | | } |
| | | |
| | | |
| | | /// 构造函数 |
| | | /// </summary> |
| | | /// <param name="doorLock"></param> |
| | |
| | | |
| | | #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() |
| | | { |
| | |
| | | |
| | | 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(); |
| | |
| | | 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() |
| | | { |
| | |
| | | }; |
| | | RowView.AddChidren(line2); |
| | | int currentIndex = i; |
| | | if (currentIndex == localAccountList.Count - 1) |
| | | if (currentIndex == doorLock.localAllAccountList.Count - 1) |
| | | { |
| | | line2.Visible = false; |
| | | } |
| | |
| | | masterManagementPage.Show(); |
| | | } |
| | | else |
| | | {
|
| | | { |
| | | var memberFrozenPage = new Shared.Phone.UserCenter.DoorLock.MemberFrozenPage(doorLock, currentAccount); |
| | | Shared.Phone.UserView.HomePage.Instance.AddChidren(memberFrozenPage); |
| | | Shared.Phone.UserView.HomePage.Instance.PageIndex += 1; |