From 351bdda734832d821a9764b0cde8be5d83c4ec50 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 01 十二月 2022 09:56:25 +0800 Subject: [PATCH] 2022年12月01日09:56:23 --- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs | 319 +++++++++++++++++++---------------------------------- 1 files changed, 114 insertions(+), 205 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs index a9e6361..158d0a8 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs @@ -40,16 +40,43 @@ BackgroundColor = Shared.Common.ZigbeeColor.Current.GXCTopViewBackgroundColor; } - #region 鈼� 鍙橀噺鐢虫槑__________________________ - ZigBee.Device.DoorLock doorLock;//褰撳墠闂ㄩ攣 - VerticalListRefreshControl bodyView;//鍒锋柊View - Button currentMethod;// 褰撳墠閫夋嫨鐨勬柟寮� - Shared.Phone.UserCenter.MemberInfoRes curAccountObj;//褰撳墠璐︽埛 + #region 鍙橀噺鐢虫槑 + /// <summary> + /// 褰撳墠闂ㄩ攣 + /// </summary> + ZigBee.Device.DoorLock doorLock; + /// <summary> + /// 鍒锋柊View + /// </summary> + VerticalListRefreshControl bodyView; + /// <summary> + /// 褰撳墠閫夋嫨鐨勬柟寮� + /// </summary> + Button currentMethod; + /// <summary> + /// 褰撳墠璐︽埛 + /// </summary> + Shared.Phone.UserCenter.MemberInfoRes curAccountObj; + /// <summary> + /// 鏁版嵁涓虹┖锛孶I鏄剧ず鐨勭┖鍥剧墖 + /// </summary> Button entryStatusPic; + /// <summary> + /// 鏁版嵁涓虹┖锛孶I鏄剧ず鐨勬枃鏈彁绀� + /// </summary> Button btnPicTip; + /// <summary> + /// 鏁版嵁涓虹┖锛孶I鏄剧ず鐨勬枃鏈彁绀� + /// </summary> Button btnPicTip1; - bool isSecondDel;//鏄惁浜屾鍒犻櫎 - FrameLayout blankFrameLayout;//绌烘暟鎹樉绀哄竷灞� + /// <summary> + /// //鏄惁浜屾鍒犻櫎 + /// </summary> + bool isSecondDel; + /// <summary> + /// 绌烘暟鎹樉绀哄竷灞� + /// </summary> + FrameLayout blankFrameLayout; #endregion /// <summary> @@ -76,8 +103,12 @@ { Application.RunOnMainThread(() => { - // 绫诲瀷鍖哄垎 - TypeRefresh(); + // 绫诲瀷鍖哄垎 + UndateUnlockMethodAction += (obj) => + { + RefreshList(obj); + }; + TypeRefresh(doorLock); CommonPage.Loading.Hide(); bodyView.EndHeaderRefreshing(); }); @@ -85,11 +116,12 @@ }); } - /// <summary> - /// UI鏄剧ず + /// <summary> + /// UI鏄剧ず /// </summary> public void Show() { + UserView.HomePage.Instance.ScrollEnabled = false; doorLock.currentUserDisplayMethod = ""; this.TopFrameLayout(this, Language.StringByID(R.MyInternationalizationString.LockMethod)); this.btnTitleLine.Visible = false; @@ -154,7 +186,10 @@ RefreshList(); } } - //涓儴甯冨眬 + + /// <summary> + /// 涓儴甯冨眬 + /// </summary> void MidFrameLayoutContent() { #region 寮�閿佹柟寮廢I @@ -194,6 +229,14 @@ { btnAllMethod.Text = Language.StringByID(R.MyInternationalizationString.ProximithCardUnlock); } + else if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.FaceIDUnlock)) + { + btnAllMethod.Text = Language.StringByID(R.MyInternationalizationString.FaceIDUnlock); + } + else if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.CalmFingerprintUnlock)) + { + btnAllMethod.Text = Language.StringByID(R.MyInternationalizationString.CalmFingerprintUnlock); + } else { btnAllMethod.Text = Language.StringByID(R.MyInternationalizationString.AllMethod); @@ -212,7 +255,11 @@ EventHandler<MouseEventArgs> handerSideLip = (sender, e) => { - SideslipFramelayout(); + SideslipFramelayout(doorLock); + UndateUnlockMethodAction += (obj) => + { + RefreshList(obj); + }; }; btnNext.MouseUpEventHandler += handerSideLip; btnAllMethod.MouseUpEventHandler += handerSideLip; @@ -257,6 +304,7 @@ Width = Application.GetRealHeight(757), Visible = false, UnSelectedImagePath = "DoorLock/UnLockBlankPic.png", + Gravity = Gravity.CenterHorizontal, }; blankFrameLayout.AddChidren(entryStatusPic); @@ -283,6 +331,10 @@ TextSize = 12, }; blankFrameLayout.AddChidren(btnPicTip1); + if (UserCenterResourse.UserInfo.AuthorityNo != 1) + { + btnPicTip1.Width = 0; + } } /// <summary> @@ -347,6 +399,18 @@ } break; case 3: + if (curDoorLockUser.UnlockType != unlockMethod) + { + continue; + } + break; + case 13: + if (curDoorLockUser.UnlockType != unlockMethod) + { + continue; + } + break; + case 14: if (curDoorLockUser.UnlockType != unlockMethod) { continue; @@ -438,7 +502,11 @@ localDoorLockObj.UserID = curDoorLockUser.UserID; doorLock.localDoorLockUserList.Remove(curUserId); doorLock.ReSave(); - TypeRefresh(); + UndateUnlockMethodAction += (obj) => + { + RefreshList(obj); + }; + TypeRefresh(doorLock); } } else @@ -482,7 +550,11 @@ var localDoorLockObj = new ZigBee.Device.DoorLock.LocaDoorLockObj() { }; localDoorLockObj.UserID = curDoorLockUser.UserID; doorLock.localDoorLockUserList.Remove(curUserId); - TypeRefresh(); + UndateUnlockMethodAction += (obj) => + { + RefreshList(obj); + }; + TypeRefresh(doorLock); } } else @@ -552,6 +624,26 @@ btnDoorlockUser.Text = Language.StringByID(R.MyInternationalizationString.IcCard) + "ID" + curDoorLockUser.UserID; } break; + case 13: + if (!string.IsNullOrEmpty(curDoorLockUser.UserName)) + { + btnDoorlockUser.Text = curDoorLockUser.UserName; + } + else + { + btnDoorlockUser.Text = Language.StringByID(R.MyInternationalizationString.CalmFingerprintMark) + "ID" + +curDoorLockUser.UserID; + } + break; + case 14: + if (!string.IsNullOrEmpty(curDoorLockUser.UserName)) + { + btnDoorlockUser.Text = curDoorLockUser.UserName; + } + else + { + btnDoorlockUser.Text = Language.StringByID(R.MyInternationalizationString.FaceIDMark) + "ID" + +curDoorLockUser.UserID; + } + break; case 15: if (!string.IsNullOrEmpty(curDoorLockUser.UserName)) { @@ -592,11 +684,16 @@ var localDoorLockObj = new ZigBee.Device.DoorLock.LocaDoorLockObj() { }; localDoorLockObj.UserID = curDoorLockUser.UserID; localDoorLockObj.UnlockType = curDoorLockUser.UnlockType; + localDoorLockObj.PrimaryId = curDoorLockUser.PrimaryId; localDoorLockObj.EntryTime = curDoorLockUser.EntryTime; localDoorLockObj.UserName = refreshDoorLockData.UserIdRemarks; localDoorLockObj.ConnectedAccount = curAccountObj.SubAccountDistributedMark; doorLock.localDoorLockUserList.Add(curDoorLockUser.UserID, localDoorLockObj); - TypeRefresh(); + UndateUnlockMethodAction += (obj1) => + { + RefreshList(obj1); + }; + TypeRefresh(doorLock); } } else @@ -616,202 +713,14 @@ } } - // 渚ц竟瀵艰埅鏍� - void SideslipFramelayout() - { - var dialog = new Dialog - { - }; - dialog.Show(); - - var flMain = new FrameLayout { BackgroundColor = 0x00000000 }; - dialog.AddChidren(flMain); - flMain.MouseUpEventHandler += (sender11, e11) => - { - dialog.Close(); - }; - - var sidelipFrameLayout = new FrameLayout() - { - Height = Application.GetRealHeight(625), - Width = Application.GetRealWidth(449), - Y = Application.GetRealHeight(115 + 160), - X = Application.GetRealWidth(596), - BackgroundImagePath = "DoorLock/SideslipPic.png", - }; - flMain.AddChidren(sidelipFrameLayout); - - var sidelipVerticalScrolViewLayout = new VerticalScrolViewLayout() - { - Height = Application.GetRealHeight(600), - Y = Application.GetRealHeight(28), - }; - sidelipFrameLayout.AddChidren(sidelipVerticalScrolViewLayout); - Button oldbutton = null; - Button oldbuttonText = null; - for (var i = 0; i < 4; i++) - { - var rowFrameLayout = new RowLayout() - { - Height = Application.GetRealHeight(150), - LineColor = Shared.Common.ZigbeeColor.Current.XMRowLine, - X = Application.GetRealWidth(81), - }; - sidelipVerticalScrolViewLayout.AddChidren(rowFrameLayout); - - var btnAllMethod = new Button() - { - Width = Application.GetRealWidth(81), - Height = Application.GetRealHeight(81), - Y = Application.GetRealHeight(35), - }; - rowFrameLayout.AddChidren(btnAllMethod); - - var btnMethodText = new Button() - { - Width = Application.GetRealWidth(311), - Height = Application.GetRealHeight(58), - X = Application.GetRealWidth(92), - Y = Application.GetRealHeight(49), - TextColor = Shared.Common.ZigbeeColor.Current.XMGray3, - TextSize = 14, - TextAlignment = TextAlignment.CenterLeft, - }; - rowFrameLayout.AddChidren(btnMethodText); - - EventHandler<MouseEventArgs> hander = (sender, e) => - { - if (!btnAllMethod.IsSelected) - { - if (oldbutton != null) - { - oldbutton.IsSelected = false; - } - if (oldbuttonText != null) - { - oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMGray3; - } - oldbutton = btnAllMethod; - oldbuttonText = btnMethodText; - doorLock.currentUserDisplayMethod = btnMethodText.Text; - doorLock.ReSave(); - btnAllMethod.IsSelected = true; - oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; - oldbuttonText.IsBold = true; - TypeRefresh(); - } - dialog.Close(); - }; - rowFrameLayout.MouseUpEventHandler += hander; - btnAllMethod.MouseUpEventHandler += hander; - btnMethodText.MouseUpEventHandler += hander; - - switch (i) - { - case 0: - btnAllMethod.UnSelectedImagePath = "DoorLock/AllMethod.png"; - btnAllMethod.SelectedImagePath = "DoorLock/AllMethodOn.png"; - btnMethodText.Text = Language.StringByID(R.MyInternationalizationString.AllMethod); - break; - case 1: - btnAllMethod.UnSelectedImagePath = "DoorLock/Password.png"; - btnAllMethod.SelectedImagePath = "DoorLock/PasswordOn.png"; - btnMethodText.Text = Language.StringByID(R.MyInternationalizationString.PasswordUnlock); - break; - case 2: - btnAllMethod.UnSelectedImagePath = "DoorLock/Fingerprint.png"; - btnAllMethod.SelectedImagePath = "DoorLock/FingerprintOn.png"; - btnMethodText.Text = Language.StringByID(R.MyInternationalizationString.FingerprintUnlock); - break; - case 3: - btnAllMethod.UnSelectedImagePath = "DoorLock/proximityCard.png"; - btnAllMethod.SelectedImagePath = "DoorLock/proximityCardOn.png"; - btnMethodText.Text = Language.StringByID(R.MyInternationalizationString.ProximithCardUnlock); - break; - } - - if (string.IsNullOrEmpty(doorLock.currentUserDisplayMethod) && i == 0) - { - btnAllMethod.IsSelected = true; - btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; - btnMethodText.IsBold = true; - oldbutton = btnAllMethod; - oldbuttonText = btnMethodText; - } - if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.AllMethod) && i == 0) - { - btnAllMethod.IsSelected = true; - btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; - btnMethodText.IsBold = true; - oldbutton = btnAllMethod; - oldbuttonText = btnMethodText; - } - if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.PasswordUnlock) && i == 1) - { - btnAllMethod.IsSelected = true; - btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; - btnMethodText.IsBold = true; - oldbutton = btnAllMethod; - oldbuttonText = btnMethodText; - } - if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.FingerprintUnlock) && i == 2) - { - btnAllMethod.IsSelected = true; - btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; - btnMethodText.IsBold = true; - oldbutton = btnAllMethod; - oldbuttonText = btnMethodText; - } - if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.ProximithCardUnlock) && i == 3) - { - btnAllMethod.IsSelected = true; - btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack; - btnMethodText.IsBold = true; - oldbutton = btnAllMethod; - oldbuttonText = btnMethodText; - } - } - } - - //绫诲瀷鍖哄垎 - void TypeRefresh() - { - if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.PasswordUnlock)) - { - RefreshList(0); - } - else if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.FingerprintUnlock)) - { - RefreshList(15); - } - else if (doorLock.currentUserDisplayMethod == Language.StringByID(R.MyInternationalizationString.ProximithCardUnlock)) - { - RefreshList(3); - } - else - { - RefreshList(); - } - } - /// <summary> /// 閲嶅啓绉婚櫎鏂规硶 /// </summary> public override void RemoveFromParent() { + UserView.HomePage.Instance.ScrollEnabled = true; ZbGateway.StatusList.Remove(this); base.RemoveFromParent(); - } - - public void Changed(CommonDevice common) - { - } - public void ChangedILogicStatus(ZigBee.Device.Logic logic) - { - } - - public void ChangedISceneStatus(Scene scene) - { } } } -- Gitblit v1.8.0