From 9a4b76398009cf76c508d61f7e48fb6f5cb7ac2d Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期二, 21 七月 2020 09:46:53 +0800
Subject: [PATCH] 请合并最新多功能面板代码

---
 ZigbeeApp/Shared/Phone/UserCenter/DoorLock/MemberFrozenPage.cs |  136 ++++++++++++++++++---------------------------
 1 files changed, 54 insertions(+), 82 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/MemberFrozenPage.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/MemberFrozenPage.cs
index 15a960b..e694c22 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/MemberFrozenPage.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/MemberFrozenPage.cs
@@ -5,7 +5,7 @@
 using ZigBee.Device;
 namespace Shared.Phone.UserCenter.DoorLock
 {
-    public class MemberFrozenPage : DoorLockCommonLayout, ZigBee.Common.IStatus
+    public class MemberFrozenPage : DoorLockCommonLayout
     {
         /// <summary>
         /// 鏋勯�犲嚱鏁�
@@ -18,12 +18,24 @@
             BackgroundColor = Shared.Common.ZigbeeColor.Current.GXCTopViewBackgroundColor;
         }
 
-        #region 鈼� 鍙橀噺鐢虫槑__________________________
+        #region  鍙橀噺鐢虫槑 
+        /// <summary>
+        /// 褰撳墠闂ㄩ攣
+        /// </summary>
         ZigBee.Device.DoorLock doorLock;
+        /// <summary>
+        /// 褰撳墠鎴愬憳瀵硅薄v
+        /// </summary>
         Shared.Phone.UserCenter.MemberInfoRes curAccountObj;
+        /// <summary>
+        /// 鍒锋柊View
+        /// </summary>
         VerticalRefreshLayout bodyView;
         #endregion
 
+        /// <summary>
+        /// 鍒濆鍖栨暟鎹俊鎭�
+        /// </summary>
         void ReadDoorLockUserInfo()
         {
             System.Threading.Tasks.Task.Run(async () =>
@@ -100,7 +112,9 @@
                 ReadDoorLockUserInfo();
             };
         }
-
+        /// <summary>
+        /// 涓儴甯冨眬
+        /// </summary>
         public async void MidRefresh()
         {
             bodyView.RemoveAll();
@@ -220,9 +234,7 @@
                     }
                     else if (currentIndex == 1)
                     {
-                        btnRight.IsSelected = !btnRight.IsSelected;
-
-                        if (btnRight.IsSelected)
+                        if (!btnRight.IsSelected)
                         {
                             FreezeUser(true);
                         }
@@ -233,8 +245,7 @@
                     }
                     else if (currentIndex == 2)
                     {
-                        btnRight.IsSelected = !btnRight.IsSelected;
-                        if (btnRight.IsSelected)
+                        if (!btnRight.IsSelected)
                         {
                             HasRemoteUnlockAccessMethod(true);
                         }
@@ -264,7 +275,10 @@
             }
         }
 
-        //鍐荤粨璐︽埛
+        /// <summary>
+        /// 鍐荤粨璐︽埛
+        /// </summary>
+        /// <param name="isFreeze"></param>
         void FreezeUser(bool isFreeze)
         {
             var dialog = new Dialog { };
@@ -277,21 +291,12 @@
             {
                 textFreeze = Language.StringByID(R.MyInternationalizationString.SureToUnFreeze);
             }
-            var doorDialog = new Shared.Phone.UserCenter.DoorLock.DoorlockDialog(dialog, Language.StringByID(R.MyInternationalizationString.Tip));
-            doorDialog.Show();
-            doorDialog.dialogMidFraFrameLayout.Height = Application.GetRealHeight(58);
-            doorDialog.dialogMidFraFrameLayout.X = Application.GetRealWidth(0);
-            doorDialog.dialogMidFraFrameLayout.Y = Application.GetRealHeight(202);
-            doorDialog.dialogMidFraFrameLayout.AddChidren(doorDialog.dialogMidText);
-            doorDialog.dialogMidText.Text = textFreeze;
-            doorDialog.dialogMidFraFrameLayout.AddChidren(doorDialog.dialogMidText);
-            doorDialog.dialogBtnConfirm.Text = Language.StringByID(R.MyInternationalizationString.DoorlockConfirm);
-            doorDialog.dialogBtnCancel.MouseUpEventHandler += (sender1, e1) =>
-            {
-                MidRefresh();
-                dialog.Close();
-            };
-            doorDialog.dialogBtnConfirm.MouseUpEventHandler += (sender1, e1) =>
+
+            string msg = Language.StringByID(R.MyInternationalizationString.GoPersonalCenter);
+            var alert = new Shared.Phone.UserCenter.ShowMsgControl(ShowMsgType.Confirm, textFreeze, Language.StringByID(R.MyInternationalizationString.DoorlockConfirm));
+            alert.Show();
+            //浣跨敤纭鍨嬪脊妗嗘椂,鐨勫洖璋冨嚱鏁�
+            alert.ConfirmClickEvent += () =>
             {
                 System.Threading.Tasks.Task.Run(async () =>
                 {
@@ -311,9 +316,8 @@
                             foreach (var curDoorLockUser in curAccountDoorLockUserList)
                             {
                                 // 璐︽埛涓病鏈夐棬閿佺敤鎴�
-                                if (curDoorLockUser.DoorLockLocalUserId == null || curDoorLockUser.DoorLockLocalUserId == "")
+                                if (string.IsNullOrEmpty(curDoorLockUser.DoorLockLocalUserId))
                                 {
-                                    //
                                 }
                                 else
                                 {
@@ -338,6 +342,17 @@
                             }
                             //鍐荤粨/瑙e喕鐢ㄦ埛
                             int count1 = tempGroupId.Count;
+                            if (tempGroupId.Count == 1)
+                            {
+                                foreach (var a in tempGroupId)
+                                {
+                                    if (a.Count == 0)
+                                    {
+                                        count1 = 0;
+                                        break;
+                                    }
+                                }
+                            }
                             int count2 = 0;
 
                             int tempCount = 0;
@@ -346,7 +361,7 @@
                                 var tempUserIdList1 = tempGroupId[i];
                                 if (tempUserIdList1.Count == 0)
                                 {
-                                    return;
+                                    break;
                                 }
                                 var passData = doorLock.FreezeAccountData(tempUserIdList1, accessType);
                                 var resultData = await doorLock.DefaultControlAsync(passData);
@@ -360,10 +375,7 @@
                                     {
                                         count2++;
                                     }
-                                    //if (tempCount == tempGroupId.Count - 1)
-                                    //{
                                     System.Threading.Thread.Sleep(1000);
-                                    //}
                                 }
                                 else
                                 {
@@ -570,29 +582,24 @@
                         });
                     }
                 });
-                dialog.Close();
             };
         }
 
-        //鏄惁缁欏瓙璐︽埛鎷ユ湁杩滅▼寮�閿佺殑鏉′欢
+        /// <summary>
+        /// 鏄惁缁欏瓙璐︽埛鎷ユ湁杩滅▼寮�閿佺殑鏉′欢
+        /// </summary>
+        /// <param name="hasAccess"></param>
         void HasRemoteUnlockAccessMethod(bool hasAccess)
         {
-            var dialog = new Dialog { };
-            var doorDialog = new Shared.Phone.UserCenter.DoorLock.DoorlockDialog(dialog, Language.StringByID(R.MyInternationalizationString.Tip));
-            doorDialog.Show();
-            doorDialog.dialogMidFraFrameLayout.Height = Application.GetRealHeight(58);
-            doorDialog.dialogMidFraFrameLayout.X = Application.GetRealWidth(0);
-            doorDialog.dialogMidFraFrameLayout.Y = Application.GetRealHeight(202);
-            doorDialog.dialogMidFraFrameLayout.AddChidren(doorDialog.dialogMidText);
-            doorDialog.dialogMidText.Text = Language.StringByID(R.MyInternationalizationString.SureGiveAccessToSubaccount);
-            doorDialog.dialogMidFraFrameLayout.AddChidren(doorDialog.dialogMidText);
-            doorDialog.dialogBtnConfirm.Text = Language.StringByID(R.MyInternationalizationString.DoorlockConfirm);
-            doorDialog.dialogBtnCancel.MouseUpEventHandler += (sender1, e1) =>
+            string msg = Language.StringByID(R.MyInternationalizationString.SureGiveAccessToSubaccount);
+            if (!hasAccess)
             {
-                MidRefresh();
-                dialog.Close();
-            };
-            doorDialog.dialogBtnConfirm.MouseUpEventHandler += (sender1, e1) =>
+                msg = Language.StringByID(R.MyInternationalizationString.SureCancelAccessToSubaccount);
+            }
+            var alert = new Shared.Phone.UserCenter.ShowMsgControl(ShowMsgType.Confirm, msg, Language.StringByID(R.MyInternationalizationString.DoorlockConfirm));
+            alert.Show();
+            //浣跨敤纭鍨嬪脊妗嗘椂,鐨勫洖璋冨嚱鏁�
+            alert.ConfirmClickEvent += () =>
             {
                 System.Threading.Tasks.Task.Run(async () =>
                 {
@@ -778,42 +785,7 @@
                         });
                     }
                 });
-                dialog.Close();
             };
         }
-
-        #region 鈼� 鎺ュ彛瀹炵幇__________________________
-        /// <summary>
-        /// 澶勭悊鍙樺寲浜嬩欢 --灏嗗純鐢� 鏀圭敤DeviceInfoChange()
-        /// </summary>
-        /// <returns>The changed.</returns>
-        /// <param name="common">Common.</param>
-        public void Changed(CommonDevice common)
-        {
-
-        }
-        /// <summary>
-        /// 澶勭悊鍙樺寲浜嬩欢
-        /// </summary>
-        /// <param name="common"></param>
-        /// <param name="typeTag"></param>
-        public void DeviceInfoChange(CommonDevice common, string typeTag)
-        {
-        }
-        /// <summary>
-        /// Changeds the IL ogic status.
-        /// </summary>
-        /// <param name="logic">Logic.</param>
-        public void ChangedILogicStatus(ZigBee.Device.Logic logic)
-        {
-        }
-        /// <summary>
-        /// Changeds the IS cene status.
-        /// </summary>
-        /// <param name="scene">Scene.</param>
-        public void ChangedISceneStatus(Scene scene)
-        {
-        }
-        #endregion
     }
 }

--
Gitblit v1.8.0