From 1c4904d77f484c075080942d87785481b52b6fb2 Mon Sep 17 00:00:00 2001 From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local> Date: 星期一, 28 十月 2019 14:58:46 +0800 Subject: [PATCH] Revert "Merge branch 'dev-tzy' into DEV_GXC" --- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs | 122 +++++++++++++++++++++++++++------------- 1 files changed, 83 insertions(+), 39 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs index 53eec42..b5accd6 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UnLockMethod.cs @@ -28,13 +28,82 @@ bool isSecondDel; #endregion + /// <summary> + /// 鑾峰彇鏈�鏂颁俊鎭� + /// </summary> + void ReadDoorLockUserInfo() + { + 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); + } + } + } + + // 璇诲彇浜戠闂ㄩ攣璁惧涓殑淇℃伅 + 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(() => + { + RefreshList(); + CommonPage.Loading.Hide(); + }); + } + }); + } /// <summary> /// UI鏄剧ず /// </summary> public void Show() { - //ReadDoorLockUserInfo(); + ReadDoorLockUserInfo(); this.TopFrameLayout(this, Language.StringByID(R.MyInternationalizationString.LockMethod)); this.btnTitleLine.Visible = false; EventHandler<MouseEventArgs> eHandlerBack = (sender, e) => @@ -259,7 +328,7 @@ Height = Application.GetRealHeight(49), X = Application.GetRealWidth(173), Y = Application.GetRealHeight(95), - Text = Language.StringByID(R.MyInternationalizationString.DelBindDevice), + Text = Language.StringByID(R.MyInternationalizationString.Delete), TextColor = Shared.Common.ZigbeeColor.Current.XMWhite, TextSize = 12, TextAlignment = TextAlignment.Center, @@ -314,11 +383,6 @@ Action<Shared.View> action = async (obj) => { var refreshDoorLockData = new ZigBee.Device.DoorLock.RefreshDoorLockData(); - if (UserCenterResourse.UserInfo.AuthorityNo != 1) - { - refreshDoorLockData.LoginAccessToken = UserCenterLogic.GetConnectMainToken(); - refreshDoorLockData.IsOtherAccountCtrl = true; - } refreshDoorLockData.CloudAccountId = curAccountObj.SubAccountDistributedMark; if (doorLock.DeviceAddr != null) { @@ -328,8 +392,8 @@ refreshDoorLockData.DoorLockLocalUserId = curDoorLockUser.UserID.ToString(); refreshDoorLockData.PrimaryId = curDoorLockUser.PrimaryId; refreshDoorLockData.UserIdRemarks = btnDoorlockUser.Text; - var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/UpdateDoorLock", refreshDoorLockData); - if (result != null && result.StateCode == "Success") + var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("App/UpdateDoorLock", refreshDoorLockData); + if (result.StateCode == "Success") { if (doorLock.localDoorLockUserList.ContainsKey(curDoorLockUser.UserID)) { @@ -364,14 +428,9 @@ var resultData = await doorLock.DefaultControlAsync(passData); if (resultData != null && resultData.defaultControlResponseData != null) { - if (resultData.defaultControlResponseData.status == 0 || resultData.defaultControlResponseData.status == 2) + if (resultData.defaultControlResponseData.status == 0) { 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; @@ -379,8 +438,8 @@ deleteDoorLockData.DoorLockLocalUserId = curDoorLockUser.UserID.ToString(); deleteDoorLockData.PrimaryId = curDoorLockUser.PrimaryId; deleteDoorLockData.DelDoorLockDelType = 2; - var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/DelDoorLock", deleteDoorLockData); - if (result != null && result.StateCode == "Success") + var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("App/DelDoorLock", deleteDoorLockData); + if (result.StateCode == "Success") { isSecondDel = false; if (doorLock.localDoorLockUserList.ContainsKey(curDoorLockUser.UserID)) @@ -403,11 +462,6 @@ if (isSecondDel) { 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; @@ -415,8 +469,8 @@ deleteDoorLockData.DoorLockLocalUserId = curDoorLockUser.UserID.ToString(); deleteDoorLockData.PrimaryId = curDoorLockUser.PrimaryId; deleteDoorLockData.DelDoorLockDelType = 2; - var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/DelDoorLock", deleteDoorLockData); - if (result != null && result.StateCode == "Success") + var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("App/DelDoorLock", deleteDoorLockData); + if (result.StateCode == "Success") { isSecondDel = false; if (doorLock.localDoorLockUserList.ContainsKey(curDoorLockUser.UserID)) @@ -717,7 +771,7 @@ Height = Application.GetRealHeight(49), X = Application.GetRealWidth(173), Y = Application.GetRealHeight(95), - Text = Language.StringByID(R.MyInternationalizationString.DelBindDevice), + Text = Language.StringByID(R.MyInternationalizationString.Delete), TextColor = Shared.Common.ZigbeeColor.Current.XMWhite, TextSize = 12, TextAlignment = TextAlignment.Center, @@ -772,11 +826,6 @@ Action<Shared.View> action = async (obj) => { var refreshDoorLockData = new ZigBee.Device.DoorLock.RefreshDoorLockData(); - if (UserCenterResourse.UserInfo.AuthorityNo != 1) - { - refreshDoorLockData.LoginAccessToken = UserCenterLogic.GetConnectMainToken(); - refreshDoorLockData.IsOtherAccountCtrl = true; - } refreshDoorLockData.CloudAccountId = curAccountObj.SubAccountDistributedMark; if (doorLock.DeviceAddr != null) { @@ -786,8 +835,8 @@ refreshDoorLockData.DoorLockLocalUserId = curDoorLockUser.UserID.ToString(); refreshDoorLockData.PrimaryId = curDoorLockUser.PrimaryId; refreshDoorLockData.UserIdRemarks = btnDoorlockUser.Text; - var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/UpdateDoorLock", refreshDoorLockData); - if (result != null && result.StateCode == "Success") + var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("App/UpdateDoorLock", refreshDoorLockData); + if (result.StateCode == "Success") { if (doorLock.localDoorLockUserList.ContainsKey(curDoorLockUser.UserID)) { @@ -825,11 +874,6 @@ if (resultData.defaultControlResponseData.status == 0) { 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; @@ -837,8 +881,8 @@ deleteDoorLockData.DoorLockLocalUserId = curDoorLockUser.UserID.ToString(); deleteDoorLockData.PrimaryId = curDoorLockUser.PrimaryId; deleteDoorLockData.DelDoorLockDelType = 2; - var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("DoorLock/DelDoorLock", deleteDoorLockData); - if (result != null && result.StateCode == "Success") + var result = await ZigBee.Device.DoorLock.SendDoorLockToServer("App/DelDoorLock", deleteDoorLockData); + if (result.StateCode == "Success") { if (doorLock.localDoorLockUserList.ContainsKey(curDoorLockUser.UserID)) { -- Gitblit v1.8.0