From 1fee912d2378f4fe11218257509fb3ec3ee313be Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 26 三月 2020 18:16:07 +0800 Subject: [PATCH] 2020-03-26-2 --- ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs | 216 ++++++++++++++++++++++++----------------------------- 1 files changed, 97 insertions(+), 119 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs index fa4eb0b..061dbcc 100644 --- a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/AddCondition.cs @@ -9,7 +9,7 @@ { public AddCondition() { - Tag = "LockLogic"; + Tag = "Logic"; } Button selectedIcon = new Button(); VerticalRefreshLayout middle; @@ -17,65 +17,20 @@ public void Show() { - #region 鏈�涓婇潰鐨勫竷灞�浠g爜 - var topRowLayout = new RowLayout - { - BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor, - Height = Application.GetRealHeight(184), - LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor, - }; - this.AddChidren(topRowLayout); - var titleName = new Button - { - TextSize = 17, - TextColor = ZigbeeColor.Current.LogicTextBlackColor, - TextAlignment = TextAlignment.CenterLeft, - X = Application.GetRealWidth(176), - Width = Application.GetRealWidth(600), - Height = Application.GetRealHeight(69), - Y = Application.GetRealHeight(92), - TextID = MyInternationalizationString.userlist, - //Text = "閫夋嫨鐢ㄦ埛", - }; - topRowLayout.AddChidren(titleName); - - var clickBtn = new Button - { - Width = Application.GetRealWidth(81 + 51), - Height = Application.GetRealHeight(58 + 40), - Y = Application.GetRealHeight(98 - 40), - }; - topRowLayout.AddChidren(clickBtn); - clickBtn.MouseDownEventHandler += (sender, e) => - { - RemoveFromParent(); - }; - - var back = new Button - { - Width = Application.GetRealWidth(30), - Height = Application.GetRealHeight(51), - X = Application.GetRealWidth(81), - Y = Application.GetRealHeight(98), - //Gravity = Gravity.CenterVertical; - UnSelectedImagePath = "ZigeeLogic/back.png", - }; - topRowLayout.AddChidren(back); - back.MouseDownEventHandler += (sender, e) => - { - RemoveFromParent(); - }; - - #endregion - + #region 鐣岄潰甯冨眬浠g爜 + TopView view = new TopView(); + this.AddChidren(view.TopRowView()); + view.toptitleNameBtn.TextID = MyInternationalizationString.userlist; + view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); }; middle = new VerticalRefreshLayout { - Y = topRowLayout.Bottom, + Y = view.topRowLayout.Bottom, Height = Application.GetRealHeight(1920 - 184), BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, }; this.AddChidren(middle); + #endregion middle.BeginHeaderRefreshingAction += () => { //閲嶆柊鍒锋柊logic鍒楄〃 @@ -86,6 +41,7 @@ { ///浠庡垪琛ㄧЩ闄ゅ綋鍓嶉棬閿佸叏閮ㄧ殑鏃ф暟鎹紱 Send.LockList.Remove(Send.LockList[i]); + i--; } } Read(); @@ -98,7 +54,7 @@ /// <summary> /// 璇诲彇褰撳墠闂ㄩ攣鐨勪簯绔暟鎹紱 /// </summary> - public async void Read() + public void Read() { bool d = false; string macport = Send.CurrentDoorLock.DeviceAddr + "_" + Send.CurrentDoorLock.DeviceEpoint.ToString(); @@ -112,20 +68,33 @@ } } CommonPage.Loading.Start(); - if (!d) + middle.RemoveAll(); + System.Threading.Tasks.Task.Run(async () => { - var allMemberslist = await Send.AllMembers(Send.CurrentDoorLock.DeviceAddr); - Send.LockList.AddRange(allMemberslist); - } - UserAllView(macport); - CommonPage.Loading.Hide(); + try + { + if (!d) + { + var allMemberslist = await Send.AllMembers(macport); + Send.LockList.AddRange(allMemberslist); + } + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + CommonPage.Loading.Hide(); + UserAllView(macport); + }); + } + }); } /// <summary> /// 鏄剧ず鎵�鏈夌敤鎴� /// </summary> public void UserAllView(string macport) { - for (int i = 0; i < Send.LockList.Count; i++) { var user = Send.LockList[i]; @@ -133,55 +102,24 @@ { continue; } - var userFramelayout = new FrameLayout + + FunView userView = new FunView(); + userView.iconBtn.Visible = false; + userView.funnameBtn.X = Application.GetRealWidth(81); + userView.funnameBtn.Text = user.UserName; + userView.funnextBtn.X = Application.GetRealWidth(1080 - 81 - 58); + userView.lineBtn.X = Application.GetRealWidth(81); + userView.lineBtn.Width = Application.GetRealWidth(1080 - 81 - 58); + if (Send.LockList.Count - 1 == i) { - Height = Application.GetRealHeight(160), - BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, - }; - middle.AddChidren(userFramelayout); - - var userRow = new RowLayout - { - Y = Application.GetRealHeight(30), - Width = Application.GetRealWidth(1080 - 58 - 58), - Height = Application.GetRealHeight(130), - X = Application.GetRealWidth(58), - LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, - }; - userFramelayout.AddChidren(userRow); - - var usernameBtn = new Button - { - Text = user.UserName, - TextAlignment = TextAlignment.CenterLeft, - TextColor = ZigbeeColor.Current.LogicTextBlackColor, - Width = Application.GetRealWidth(600), - Height = Application.GetRealHeight(130), - Tag = Send.LockList[i], - TextSize = 14, - }; - userRow.AddChidren(usernameBtn); - - var btntimeback = new Button - { - Width = Application.GetRealWidth(58), - Height = Application.GetRealHeight(58), - UnSelectedImagePath = "ZigeeLogic/next.png", - X = userRow.Width - Application.GetRealWidth(58), - Gravity = Gravity.CenterVertical, - }; - userRow.AddChidren(btntimeback); - - - EventHandler<MouseEventArgs> userclick = (sender, e) => + userView.funFrameLayout.Height = Application.GetRealHeight(160 + 20);//鏈�鍚庝竴琛屽鍔�20楂樺害; + userView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; + } + middle.AddChidren(userView.FunFrameView()); + userView.clickviewBtn.MouseUpEventHandler += (sender, e) => { SelectedUserID(user); }; - usernameBtn.MouseUpEventHandler += userclick; - btntimeback.MouseUpEventHandler += userclick; - userFramelayout.MouseUpEventHandler += userclick; - userRow.MouseUpEventHandler += userclick; - } } @@ -265,13 +203,27 @@ lockRow.AddChidren(Btncomplete); #endregion - string SelectedLockStatus = ""; + lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * membershipIfon.UserIdMode.Count) - 20 - 50); lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * membershipIfon.UserIdMode.Count) + 20 + 50); + if (membershipIfon.UserIdMode.Count > 9) + { + ///鍏冪礌瓒呭嚭10涓紝鏆傛椂榛樿鏄剧ず10; + lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * 9) - 20 - 50); + lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * 9) + 20 + 50); + } + string SelectedLockStatus = ""; ///瀹氫箟涓や釜鍙橀噺璁板綍閫変腑鐘舵�侊紱 string attriButeId = ""; string attriButeData2 = ""; string modeName = ""; + + ///瀹氫袱涓彉閲忚褰曚箣鍓嶇殑鍙�硷紱 + string userId = ""; + string openMode = ""; + string accountName = ""; + string SelectedDeviceStatuscondition = ""; + for (int j = 0; j < membershipIfon.UserIdMode.Count; j++) { var userIdmode = membershipIfon.UserIdMode[j]; @@ -323,8 +275,8 @@ selectedIcon.Visible = false; selectedIcon = doorlockSelected; doorlockSelected.Visible = true; - //doorlockBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; - attriButeId = userIdmode.OpenMode.ToString(); + //doorlockBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + attriButeId = userIdmode.OpenMode.ToString(); attriButeData2 = userIdmode.UserId; modeName = userIdmode.ModeName; }; @@ -332,6 +284,30 @@ doorlockBtn.MouseUpEventHandler += doorlockclick; doorlockSelected.MouseUpEventHandler += doorlockclick; doorlockfra.MouseUpEventHandler += doorlockclick; + + if (string.IsNullOrEmpty(doorlockBtn.Text)) + { + string strname = ""; + switch (userIdmode.OpenMode) + { + case 0: + { + strname = Language.StringByID(MyInternationalizationString.lockpassword); + } + break; + case 3: + { + strname = Language.StringByID(MyInternationalizationString.ic); + } + break; + case 15: + { + strname = Language.StringByID(MyInternationalizationString.fingerprint); + } + break; + } + doorlockBtn.Text = userIdmode.UserId + strname; + } ///鏄剧ず涔嬪墠鐨勭姸鎬� if (conditionsIndex != -1) { @@ -347,6 +323,7 @@ } } + Btncomplete.MouseUpEventHandler += (sender, e) => { var lockConditionsInfo = new Dictionary<string, string>(); @@ -361,7 +338,8 @@ lockConditionsInfo.Add("Range", "0"); var accounts = new Dictionary<string, string>(); accounts.Add("Type", "1"); - accounts.Add("Account", membershipIfon.UserName + modeName); + accounts.Add("Account", Config.Instance.Guid); + accounts.Add("AccountName", membershipIfon.UserName + modeName); accounts.Add("UserId", attriButeData2); if (SelectedLockStatus != "") { @@ -383,10 +361,6 @@ } } } - if (!addCondition) - { - Common.Logic.CurrentLogic.Conditions.Add(lockConditionsInfo); - } for (int i = 0; i < Common.Logic.CurrentLogic.Accounts.Count; i++) { @@ -399,8 +373,12 @@ } } } + if (!addCondition) + {//娌℃湁瀛樺湪鏁版嵁鏂板姞 + Common.Logic.CurrentLogic.Conditions.Add(lockConditionsInfo); + } if (!addAccount) - { + {//娌℃湁瀛樺湪鏁版嵁鏂板姞 Common.Logic.CurrentLogic.Accounts.Add(accounts); } } @@ -431,9 +409,9 @@ { if (conditionsIndex == -1) { - var alert = new Alert(Language.StringByID(MyInternationalizationString.Prompt), - Language.StringByID(MyInternationalizationString.selectdevicestatuscondition), - Language.StringByID(MyInternationalizationString.complete)); + var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, + Language.StringByID(MyInternationalizationString.usertip), + Language.StringByID(MyInternationalizationString.confrim)); alert.Show(); return; } @@ -444,6 +422,6 @@ lockLogicCommunalPage.Show(() => { }); }; } - + } } -- Gitblit v1.8.0