| | |
| | | { |
| | | localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; |
| | | } |
| | | |
| | | var getDoorLockInfoList = await ZigBee.Device.DoorLock.GetDoorLockInfoFromServer("DoorLock/GetDoorLockPager", localDoorLockObj); |
| | | if (getDoorLockInfoList != null) |
| | | { |
| | |
| | | doorLock.localDoorLockUserList.Add(int.Parse(curDoorLockUser.DoorLockLocalUserId), doorLockObj); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.CloudServerResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(this.btnTip); |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(this.btnTip); |
| | | }); |
| | | } |
| | | } |
| | | catch { } |
| | |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | RefreshList(); |
| | | MidFrameLayoutContent(); |
| | | CommonPage.Loading.Hide(); |
| | | }); |
| | | } |
| | |
| | | EventHandler<MouseEventArgs> eHandlerBack = (sender, e) => |
| | | { |
| | | RemoveFromParent(); |
| | | this.btnTip.Visible = false; |
| | | }; |
| | | this.btnBack.MouseUpEventHandler += eHandlerBack; |
| | | this.btnBackFrameLayout.MouseUpEventHandler += eHandlerBack; |
| | | this.MidFrameLayout(this); |
| | | |
| | | MidFrameLayoutContent(); |
| | | ReadDoorLockUserInfo(); |
| | | } |
| | | |
| | | public void RefreshList() |
| | | public void MidFrameLayoutContent() |
| | | { |
| | | var midTopFrameLayout = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(115), |
| | | BackgroundColor = Shared.Common.ZigbeeColor.Current.XMTopFrameLayout, |
| | | }; |
| | | this.midFrameLayout.AddChidren(midTopFrameLayout); |
| | | |
| | | var btnAllMethod = new Button() |
| | | { |
| | | Height = Application.GetRealHeight(49), |
| | | Width = Application.GetRealWidth(141 + 100), |
| | | Y = Application.GetRealHeight(35), |
| | | X = Application.GetRealWidth(812 - 100), |
| | | TextAlignment = TextAlignment.Center, |
| | | Text = Language.StringByID(R.MyInternationalizationString.LockMethod), |
| | | TextColor = Shared.Common.ZigbeeColor.Current.XMTopTitleText, |
| | | TextSize = 12, |
| | | }; |
| | | midTopFrameLayout.AddChidren(btnAllMethod); |
| | | |
| | | var btnNext = new Button() |
| | | { |
| | | X = Application.GetRealWidth(953), |
| | | Y = Application.GetRealHeight(20), |
| | | Height = Application.GetRealHeight(69), |
| | | Width = Application.GetRealWidth(69), |
| | | UnSelectedImagePath = "DoorLock/UnLockSideslipIcon.png", |
| | | SelectedImagePath = "DoorLock/UnLockSideslipIcon.png", |
| | | }; |
| | | midTopFrameLayout.AddChidren(btnNext); |
| | | btnNext.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | SideslipFramelayout(); |
| | | }; |
| | | |
| | | bodyView = new VerticalScrolViewLayout() |
| | | { |
| | | Y = midTopFrameLayout.Bottom, |
| | | }; |
| | | this.midFrameLayout.AddChidren(bodyView); |
| | | |
| | | RefreshList(); |
| | | } |
| | | |
| | | void RefreshList() |
| | | { |
| | | bodyView.RemoveAll(); |
| | | foreach (var curUserId in doorLock.localDoorLockUserList.Keys) |
| | |
| | | switch (curDoorLockUser.UnlockType) |
| | | { |
| | | case 0: |
| | | if (curDoorLockUser.UserName != "") |
| | | if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null) |
| | | { |
| | | btnText.Text = curDoorLockUser.UserName; |
| | | } |
| | |
| | | } |
| | | break; |
| | | case 3: |
| | | if (curDoorLockUser.UserName != "") |
| | | if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null) |
| | | { |
| | | btnText.Text = curDoorLockUser.UserName; |
| | | } |
| | |
| | | } |
| | | break; |
| | | case 15: |
| | | if (curDoorLockUser.UserName != "") |
| | | if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null) |
| | | { |
| | | btnText.Text = curDoorLockUser.UserName; |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | public void MidFrameLayoutContent() |
| | | { |
| | | var midTopFrameLayout = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(115), |
| | | BackgroundColor = Shared.Common.ZigbeeColor.Current.XMTopFrameLayout, |
| | | }; |
| | | this.midFrameLayout.AddChidren(midTopFrameLayout); |
| | | |
| | | var btnAllMethod = new Button() |
| | | { |
| | | Height = Application.GetRealHeight(49), |
| | | Width = Application.GetRealWidth(141 + 100), |
| | | Y = Application.GetRealHeight(35), |
| | | X = Application.GetRealWidth(812 - 100), |
| | | TextAlignment = TextAlignment.Center, |
| | | Text = Language.StringByID(R.MyInternationalizationString.LockMethod), |
| | | TextColor = Shared.Common.ZigbeeColor.Current.XMTopTitleText, |
| | | TextSize = 12, |
| | | }; |
| | | midTopFrameLayout.AddChidren(btnAllMethod); |
| | | |
| | | var btnNext = new Button() |
| | | { |
| | | X = Application.GetRealWidth(953), |
| | | Y = Application.GetRealHeight(20), |
| | | Height = Application.GetRealHeight(69), |
| | | Width = Application.GetRealWidth(69), |
| | | UnSelectedImagePath = "DoorLock/UnLockSideslipIcon.png", |
| | | SelectedImagePath = "DoorLock/UnLockSideslipIcon.png", |
| | | }; |
| | | midTopFrameLayout.AddChidren(btnNext); |
| | | btnNext.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | SideslipFramelayout(); |
| | | }; |
| | | |
| | | bodyView = new VerticalScrolViewLayout() |
| | | { |
| | | Y = midTopFrameLayout.Bottom, |
| | | }; |
| | | this.midFrameLayout.AddChidren(bodyView); |
| | | |
| | | RefreshList(); |
| | | } |
| | | |
| | | //本地账户 |
| | | public void MatchUsersFrameLayout(ZigBee.Device.DoorLock.LocaDoorLockObj curDoorLockUser) |
| | | void MatchUsersFrameLayout(ZigBee.Device.DoorLock.LocaDoorLockObj curDoorLockUser) |
| | | { |
| | | #region UI |
| | | FrameLayout flMain = new FrameLayout { BackgroundColor = 0x0f000000 }; |
| | |
| | | |
| | | EventHandler<MouseEventArgs> eHandler = (sender, e) => |
| | | { |
| | | if (doorLock.IsFreezeAccount[currentAccount.SubAccountDistributedMark] == true) |
| | | { |
| | | |
| | | new Tip() { MaxWidth = 150, Text = btnUserName.Text + Language.StringByID(R.MyInternationalizationString.AccountIsFreezed), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(this.btnTip); |
| | | return; |
| | | } |
| | | |
| | | if (!btnChoose.IsSelected) |
| | | { |
| | | if (oldbuttonChoose != null) |
| | |
| | | switch (curDoorLockUser.UnlockType) |
| | | { |
| | | case 0: |
| | | if (curDoorLockUser.UserName != "") |
| | | if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null) |
| | | { |
| | | addLockInfo.UserIdRemarks = curDoorLockUser.UserName; |
| | | } |
| | |
| | | } |
| | | break; |
| | | case 3: |
| | | if (curDoorLockUser.UserName != "") |
| | | if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null) |
| | | { |
| | | addLockInfo.UserIdRemarks = curDoorLockUser.UserName; |
| | | } |
| | |
| | | } |
| | | break; |
| | | case 15: |
| | | if (curDoorLockUser.UserName != "") |
| | | if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null) |
| | | { |
| | | addLockInfo.UserIdRemarks = curDoorLockUser.UserName; |
| | | } |
| | |
| | | var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/AddDoorLock", addLockInfo); |
| | | if (result != null && result.StateCode == "Success") |
| | | { |
| | | if (doorLock.localDoorLockUserList.ContainsKey(curDoorLockUser.UserID)) |
| | | //存账户信息 |
| | | //var resultList1 = await Shared.Phone.UserCenter.DoorLock.DoorLockCommonInfo.GetCloudLocalAccountlist(doorLock, curAccountId); |
| | | //存门锁信息 |
| | | var resultList = await Shared.Phone.UserCenter.DoorLock.DoorLockCommonInfo.GetCloudLocalDoorLocklist(doorLock, curAccountId); |
| | | var uList = new List<int> { }; |
| | | if (resultList != null) |
| | | { |
| | | doorLock.localDoorLockUserList.Remove(curDoorLockUser.UserID); |
| | | var localDoorLockObj = new ZigBee.Device.DoorLock.LocaDoorLockObj() { }; |
| | | localDoorLockObj.UserID = curDoorLockUser.UserID; |
| | | localDoorLockObj.UnlockType = curDoorLockUser.UnlockType; |
| | | localDoorLockObj.EntryTime = curDoorLockUser.EntryTime; |
| | | localDoorLockObj.UserName = curDoorLockUser.UserName; |
| | | localDoorLockObj.ConnectedAccount = curAccountId; |
| | | doorLock.localDoorLockUserList.Add(curDoorLockUser.UserID, localDoorLockObj); |
| | | foreach (var a in resultList.Keys) |
| | | { |
| | | uList.Add(a); |
| | | } |
| | | } |
| | | var d = uList.Find((value) => { return value == doorLock.doorLockProgrammingEventNotificationCommand.UserID; }); |
| | | if (d != null) |
| | | { |
| | | RefreshList(); |
| | | flMain.RemoveFromParent(); |
| | | bottomFrameLayout.RemoveAll(); |
| | | } |
| | | else |
| | | { |
| | | new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.CloudServerResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(this.btnTip); |
| | | } |
| | | } |
| | | else |
| | | { |