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/UndistributeDoorlockUserPage.cs | 225 ++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 146 insertions(+), 79 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UndistributeDoorlockUserPage.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UndistributeDoorlockUserPage.cs
index a2400e0..4efd8ca 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UndistributeDoorlockUserPage.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UndistributeDoorlockUserPage.cs
@@ -64,31 +64,66 @@
{
localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint;
}
-
var getDoorLockInfoList = await ZigBee.Device.DoorLock.GetDoorLockInfoFromServer("DoorLock/GetDoorLockPager", localDoorLockObj);
if (getDoorLockInfoList != null)
{
foreach (var curDoorLockUser in getDoorLockInfoList.PageData)
{
+ if (curDoorLockUser.DoorLockLocalUserId == null || curDoorLockUser.DoorLockLocalUserId == "")
+ {
+ continue;
+ }
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[int.Parse(curDoorLockUser.DoorLockLocalUserId)] = doorLockObj;
}
- 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);
+ else
+ {
+ if (curDoorLockUser.DoorLockLocalUserId != null)
+ {
+ //闂ㄩ攣涓病鏈夛紝浜戠鏈夌敤鎴稩D锛屽悗鍙板垹闄や簯绔繖浜汭D
+ var deleteDoorLockData = new ZigBee.Device.DoorLock.DeleteDoorLockData();
+ if (UserCenterResourse.UserInfo.AuthorityNo != 1)
+ {
+ deleteDoorLockData.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
+ deleteDoorLockData.IsOtherAccountCtrl = true;
+ }
+ if (doorLock.DeviceAddr != null)
+ {
+ deleteDoorLockData.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint;
+ }
+ deleteDoorLockData.DoorLockLocalUserId = curDoorLockUser.DoorLockLocalUserId;
+ deleteDoorLockData.PrimaryId = curDoorLockUser.Id;
+ deleteDoorLockData.DelDoorLockDelType = 2;
+ var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/DelDoorLock", deleteDoorLockData);
+ int i = 0;
+ }
+ }
}
+ }
+ else
+ {
+ Application.RunOnMainThread(() =>
+ {
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.CloudServerResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(this.btnTip);
+ return;
+ });
}
}
}
else
{
-
+ Application.RunOnMainThread(() =>
+ {
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(this.btnTip);
+ });
}
}
catch { }
@@ -96,7 +131,7 @@
{
Application.RunOnMainThread(() =>
{
- RefreshList();
+ MidFrameLayoutContent();
CommonPage.Loading.Hide();
});
}
@@ -113,16 +148,71 @@
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();
+ };
+
+ var btnLine = new Button
+ {
+ Y = midTopFrameLayout.Bottom,
+ Height = 1,
+ BackgroundColor = Shared.Common.ZigbeeColor.Current.XMTitleLine,
+ };
+ this.midFrameLayout.AddChidren(btnLine);
+
+ bodyView = new VerticalScrolViewLayout()
+ {
+ Y = midTopFrameLayout.Bottom,
+ Height = Application.GetRealHeight(1921 - 184 - 115 - 1),
+ };
+ this.midFrameLayout.AddChidren(bodyView);
+
+ RefreshList();
+ }
+
+ void RefreshList()
{
bodyView.RemoveAll();
foreach (var curUserId in doorLock.localDoorLockUserList.Keys)
@@ -185,7 +275,7 @@
switch (curDoorLockUser.UnlockType)
{
case 0:
- if (curDoorLockUser.UserName != "")
+ if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null)
{
btnText.Text = curDoorLockUser.UserName;
}
@@ -195,7 +285,7 @@
}
break;
case 3:
- if (curDoorLockUser.UserName != "")
+ if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null)
{
btnText.Text = curDoorLockUser.UserName;
}
@@ -205,7 +295,7 @@
}
break;
case 15:
- if (curDoorLockUser.UserName != "")
+ if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null)
{
btnText.Text = curDoorLockUser.UserName;
}
@@ -228,54 +318,8 @@
}
}
- 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 };
@@ -429,6 +473,13 @@
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)
@@ -488,7 +539,7 @@
switch (curDoorLockUser.UnlockType)
{
case 0:
- if (curDoorLockUser.UserName != "")
+ if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null)
{
addLockInfo.UserIdRemarks = curDoorLockUser.UserName;
}
@@ -498,7 +549,7 @@
}
break;
case 3:
- if (curDoorLockUser.UserName != "")
+ if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null)
{
addLockInfo.UserIdRemarks = curDoorLockUser.UserName;
}
@@ -508,7 +559,7 @@
}
break;
case 15:
- if (curDoorLockUser.UserName != "")
+ if (curDoorLockUser.UserName != "" && curDoorLockUser.UserName != null)
{
addLockInfo.UserIdRemarks = curDoorLockUser.UserName;
}
@@ -521,26 +572,42 @@
addLockInfo.EntryTime = curDoorLockUser.EntryTime;
var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/AddDoorLock", addLockInfo);
- if (result != null && result.StateCode == "Success")
+ if (result != null)
{
- if (doorLock.localDoorLockUserList.ContainsKey(curDoorLockUser.UserID))
+ if (result.StateCode == "Success")
{
- 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);
- RefreshList();
+ //瀛橀棬閿佷俊鎭�
+ var resultList = await Shared.Phone.UserCenter.DoorLock.DoorLockCommonInfo.GetCloudLocalDoorLocklist(doorLock, curAccountId);
+ var uList = new List<int> { };
+ if (resultList != null)
+ {
+ foreach (var a in resultList.Keys)
+ {
+ uList.Add(a);
+ }
+ }
+ var d = uList.Find((value) => { return value == curDoorLockUser.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
+ {
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinish);
flMain.RemoveFromParent();
bottomFrameLayout.RemoveAll();
}
}
else
{
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.BindFailed), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinish);
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.CloudServerResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinish);
flMain.RemoveFromParent();
bottomFrameLayout.RemoveAll();
}
--
Gitblit v1.8.0