From 7b60238359b94125d591678eff105ae2bf47843f Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期五, 15 十一月 2019 13:16:21 +0800
Subject: [PATCH] 2019.11.15
---
ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs | 190 +++++++++++++++++------------------------------
1 files changed, 68 insertions(+), 122 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs
index 0b5d4d8..7727d38 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserManagement.cs
@@ -17,101 +17,10 @@
/// <param name="common">Common.</param>
public void Changed(CommonDevice common)
{
- //if (common.Type != ZigBee.Device.DeviceType.OnOffSwitch)
- //{
- // return;
- //}
-
Shared.Application.RunOnMainThread(() =>
{
- //var dev = common as Panel;
});
}
- //浠庨棬閿佽淇℃伅
- void ReadDoorLockDeviceUserInfo()
- {
- System.Threading.Tasks.Task.Run(async () =>
- {
- Application.RunOnMainThread(() => { CommonPage.Loading.Start("Loading..."); });
- try
- {
- var getDoorLockInfo = await doorLock.GetDoorlockUserInfoAsync();
- if (getDoorLockInfo != null && getDoorLockInfo.doorLockUserDetailData != null)
- {
- var dataList = getDoorLockInfo.doorLockUserDetailData.UserObjList;
- foreach (var doorData in dataList)
- {
- var localDoorLockObj1 = new ZigBee.Device.DoorLock.LocaDoorLockObj()
- {
- UserID = doorData.UserId,
- UnlockType = doorData.UserType
- };
- if ((doorLock.localDoorLockUserList.ContainsKey(localDoorLockObj1.UserID)) == false)
- {
- doorLock.localDoorLockUserList.Add(localDoorLockObj1.UserID, localDoorLockObj1);
- }
- }
- }
- }
- catch { }
- finally
- {
- Application.RunOnMainThread(() =>
- {
- CommonPage.Loading.Hide();
- });
- }
- });
- }
- //浠庢湇鍔″櫒璇讳俊鎭�
- void ReadDoorLockServerUserInfo(Shared.Phone.UserCenter.MemberInfoRes curAccountObj)
- {
- System.Threading.Tasks.Task.Run(async () =>
- {
- Application.RunOnMainThread(() => { CommonPage.Loading.Start("Loading..."); });
- try
- {
- // 璇诲彇浜戠闂ㄩ攣璁惧涓殑淇℃伅
- var localDoorLockObj = new ZigBee.Device.DoorLock.GetDoorLockData() { };
-
- localDoorLockObj.CloudAccountId = curAccountObj.SubAccountDistributedMark;
- if (doorLock.DeviceAddr != null)
- {
- localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint;
- }
-
- var getDoorLockInfoList = await ZigBee.Device.DoorLock.GetDoorLockInfoFromServer("App/GetDoorLockPager", localDoorLockObj);
- if (getDoorLockInfoList != null)
- {
- foreach (var curDoorLockUser in getDoorLockInfoList.PageData)
- {
- if (doorLock.localDoorLockUserList.ContainsKey(int.Parse(curDoorLockUser.DoorLockLocalUserId)))
- {
- doorLock.localDoorLockUserList.Remove(int.Parse(curDoorLockUser.DoorLockLocalUserId));
- }
- var doorLockObj = new ZigBee.Device.DoorLock.LocaDoorLockObj() { };
- doorLockObj.UserID = int.Parse(curDoorLockUser.DoorLockLocalUserId);
- doorLockObj.UnlockType = curDoorLockUser.OpenLockMode;
- doorLockObj.PrimaryId = curDoorLockUser.Id;
- doorLockObj.EntryTime = curDoorLockUser.EntryTime;
- doorLockObj.UserName = curDoorLockUser.UserIdRemarks;
- doorLockObj.ConnectedAccount = curDoorLockUser.CloudAccountId;
- doorLock.localDoorLockUserList.Add(int.Parse(curDoorLockUser.DoorLockLocalUserId), doorLockObj);
- }
- }
- }
- catch { }
- finally
- {
- Application.RunOnMainThread(() =>
- {
- CommonPage.Loading.Hide();
- });
- }
- });
- }
-
-
/// 鏋勯�犲嚱鏁�
/// </summary>
/// <param name="doorLock"></param>
@@ -122,8 +31,58 @@
#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()
{
@@ -139,7 +98,7 @@
var btnAddFrameLayout = new FrameLayout
{
- X = Application.GetRealWidth(829),
+ X = Application.GetRealWidth(829 - 116),
Height = Application.GetRealHeight(72),
Width = Application.GetRealWidth(190),
};
@@ -163,10 +122,14 @@
TextAlignment = TextAlignment.CenterLeft,
};
btnAddFrameLayout.AddChidren(btnUndistributeText);
-
+ if (UserCenterResourse.UserInfo.AuthorityNo != 1)
+ {
+ btnUndistributeIcon.Width = 0;
+ btnUndistributeText.Width = 0;
+ }
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();
@@ -174,35 +137,25 @@
btnAddFrameLayout.MouseDownEventHandler += eHandler;
btnUndistributeText.MouseDownEventHandler += eHandler;
btnUndistributeIcon.MouseDownEventHandler += eHandler;
-
- MidFrameLayoutContent();
+ midVerticalScrolViewLayout = new VerticalScrolViewLayout()
+ {
+ };
+ this.midFrameLayout.AddChidren(midVerticalScrolViewLayout);
+ ReadAccountList();
}
async void MidFrameLayoutContent()
{
- var 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()
+ midVerticalScrolViewLayout.RemoveAll();
+ for (int i = 0; i < doorLock.localAllAccountList.Count; i++)
{
- };
- 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()
{
@@ -243,7 +196,7 @@
};
RowView.AddChidren(line2);
int currentIndex = i;
- if (currentIndex == localAccountList.Count - 1)
+ if (currentIndex == doorLock.localAllAccountList.Count - 1)
{
line2.Visible = false;
}
@@ -265,13 +218,6 @@
Shared.Phone.UserView.HomePage.Instance.AddChidren(masterManagementPage);
Shared.Phone.UserView.HomePage.Instance.PageIndex += 1;
masterManagementPage.Show();
- }
- else if (currentIndex == 1)
- {
- var userDoorLockPage = new UserDoorLockPage(doorLock, currentAccount);
- Shared.Phone.UserView.HomePage.Instance.AddChidren(userDoorLockPage);
- Shared.Phone.UserView.HomePage.Instance.PageIndex += 1;
- userDoorLockPage.Show();
}
else
{
--
Gitblit v1.8.0