From 25429f085093d89d543a0b90e30d0d62d1b7dac9 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 30 八月 2022 09:37:38 +0800
Subject: [PATCH] 合并了IOS的代码
---
ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs | 217 ++++++++++++++++++++++++++++++-----------------------
1 files changed, 122 insertions(+), 95 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs
index 801c052..8d233fd 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs
@@ -23,6 +23,12 @@
/// </summary>
public static DateTime DoorlockZoneTime = DateTime.Now;
/// <summary>
+ /// 鎵�鏈夐棬閿佷腑鐨勫父寮�妯″紡鍊糩鐢ㄤ簬鎺ㄩ�佹煡璇紝鎻愮ず闂ㄩ攣澶辨晥锛�
+ /// keys:闂ㄩ攣mac+epoint value:鏄惁甯稿紑妯″紡
+ /// ture:甯稿紑锛� false:鍏抽棴
+ /// </summary>
+ public static Dictionary<string, bool?> DoorLockNormallyMode = new Dictionary<string, bool?> { };
+ /// <summary>
/// 甯稿紑妯″紡鎵ц鏃堕棿
/// </summary>
public static int NormallyOpenModeInvalidTime = 12;
@@ -142,7 +148,7 @@
var listDevice = new List<CommonDevice> { };
listDevice.Add(doorLock);
var devTemp = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice);
- if (devTemp.ConcreteType == DeviceConcreteType.IntelligentLocks_Sone)
+ if (devTemp.ConcreteType != DeviceConcreteType.IntelligentLocks_H06C)
{
return true;
}
@@ -155,6 +161,14 @@
public static void NormallyOpenModeValue(ZigBee.Device.DoorLock doorLock, bool value)
{
doorLock.IsDoorLockNormallyMode = value;
+ if (DoorLockCommonInfo.DoorLockNormallyMode.ContainsKey(doorLock.DeviceAddr + doorLock.DeviceEpoint))
+ {
+ DoorLockCommonInfo.DoorLockNormallyMode[doorLock.DeviceAddr + doorLock.DeviceEpoint] = value;
+ }
+ else
+ {
+ DoorLockCommonInfo.DoorLockNormallyMode.Add(doorLock.DeviceAddr + doorLock.DeviceEpoint, value);
+ }
}
/// <summary>
@@ -162,9 +176,10 @@
/// </summary>
/// <param name="doorLock">褰撳墠闂ㄩ攣</param>
/// <param name="doorLockMessType">瀵艰嚧闂ㄩ攣澶辨晥鐨勬搷浣滅被鍨�</param>
- /// <param name="haveLogic">缃戝叧涓槸鍚﹀瓨鍦ㄩ�昏緫甯稿紑妯″紡</param>
+ /// <param name="haveLogic">缃戝叧涓槸鍚﹀瓨鍦ㄩ�昏緫甯稿紑妯″紡</param>
/// <param name="action">鍥炶皟澶勭悊鏇存柊鍐呭</param>
- public static async void NomallyOpenModeInvalidDialog(ZigBee.Device.DoorLock doorLock, DoorLockMessType doorLockMessType, bool haveLogic, Action<bool> action = null)
+ /// <param name="type">1:纭甯稿紑妯″紡宸茬粡寮�鍚紱0:甯稿紑妯″紡澶辨晥鎻愮ず</param>
+ public static async void NomallyOpenModeInvalidDialog(ZigBee.Device.DoorLock doorLock, DoorLockMessType doorLockMessType, bool haveLogic, Action<bool> action = null, int type = 0)
{
//甯稿紑妯″紡鍙兘涓讳汉鎿嶄綔
if (UserCenterResourse.UserInfo.AuthorityNo != 1)
@@ -202,7 +217,7 @@
if (haveLogic)
{
//姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫
- var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock);
+ var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock);
}
}
else
@@ -294,7 +309,7 @@
if (haveLogic)
{
//姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫
- var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock);
+ var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock);
}
}
else
@@ -343,7 +358,7 @@
if (haveLogic)
{
//姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫
- var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock);
+ var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock);
}
Application.RunOnMainThread(() =>
{
@@ -510,7 +525,7 @@
var listDevice = new List<CommonDevice> { };
listDevice.Add(doorLock);
var devTemp = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice);
- if (devTemp.ConcreteType == DeviceConcreteType.IntelligentLocks_Sone)
+ if (devTemp.ConcreteType != DeviceConcreteType.IntelligentLocks_H06C)
{
return true;
}
@@ -592,26 +607,28 @@
var SubAccounListTemp = await ZigBee.Device.DoorLock.GetSubAccountByDistributedMark();
var SubAccounListDictionary = new Dictionary<string, Shared.Phone.UserCenter.MemberInfoRes> { };
- foreach (var member in SubAccounListTemp)
- {
- //鍒ゆ柇涓�涓处鎴风粦瀹氫簡閭鐨勬儏鍐�
- if (SubAccounListDictionary.ContainsKey(member.DistributedMark) == true
- || member.Account == UserCenterResourse.UserInfo.Phone
- || member.Account == UserCenterResourse.UserInfo.Email)
- {
- //濡傛灉鏄畠鑷繁鐨勮瘽锛屼笉鏄剧ず,璐︽埛鍜岀粦瀹氱殑閭鍙樉绀哄叾涓箣涓�
- continue;
+ if (SubAccounListTemp != null)
+ {
+ foreach (var member in SubAccounListTemp)
+ {
+ //鍒ゆ柇涓�涓处鎴风粦瀹氫簡閭鐨勬儏鍐�
+ if (SubAccounListDictionary.ContainsKey(member.DistributedMark) == true
+ || member.Account == UserCenterResourse.UserInfo.Phone
+ || member.Account == UserCenterResourse.UserInfo.Email)
+ {
+ //濡傛灉鏄畠鑷繁鐨勮瘽锛屼笉鏄剧ず,璐︽埛鍜岀粦瀹氱殑閭鍙樉绀哄叾涓箣涓�
+ continue;
+ }
+ //鍘绘帀瀛愯处鎴蜂腑鏅�氭垚鍛橈紝鐣欎笅鎷ユ湁绠$悊鍛樻潈闄愮殑鎴愬憳
+ //锛堝洜涓哄垎閰嶈处鎴风粰鏅�氭垚鍛橈紝鏅�氭垚鍛樺湪app涓笉鑳借繘鍏ヨ澶囩鐞嗛偅閲岋紝鎵�浠ユ病鍙戞煡鐪嬩富浜哄垎閰嶅璐︽埛锛�
+ if (member.AccountType != 1)
+ {
+ continue;
+ }
+
+ SubAccounListDictionary.Add(member.DistributedMark, member);
}
- //鍘绘帀瀛愯处鎴蜂腑鏅�氭垚鍛橈紝鐣欎笅鎷ユ湁绠$悊鍛樻潈闄愮殑鎴愬憳
- //锛堝洜涓哄垎閰嶈处鎴风粰鏅�氭垚鍛橈紝鏅�氭垚鍛樺湪app涓笉鑳借繘鍏ヨ澶囩鐞嗛偅閲岋紝鎵�浠ユ病鍙戞煡鐪嬩富浜哄垎閰嶅璐︽埛锛�
- if (member.AccountType != 1)
- {
- continue;
- }
-
- SubAccounListDictionary.Add(member.DistributedMark, member);
}
-
foreach (var addMemberID in SubAccounListDictionary.Keys)
{
SubAccounList.Add(SubAccounListDictionary[addMemberID]);
@@ -1036,81 +1053,81 @@
/// <summary>
/// 鑾峰彇浜戠瀛樺偍鐨勯棬閿佹垚鍛樹俊鎭�
/// </summary>
- public static async System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>> GetLocaDoorLockAccountlist(ZigBee.Device.DoorLock doorLock, Shared.Phone.UserCenter.MemberInfoRes curAccountObj, int curPage)
- {
- return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>>>)(async () =>
- {
- // 璇诲彇浜戠闂ㄩ攣璁惧涓殑淇℃伅
- var localDoorLockObj = new ZigBee.Device.DoorLock.GetDoorLockData() { };
- if (UserCenterResourse.UserInfo.AuthorityNo != 1)
- {
- localDoorLockObj.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
- localDoorLockObj.IsOtherAccountCtrl = true;
- }
- localDoorLockObj.CloudAccountId = curAccountObj.SubAccountDistributedMark;
- {
- localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint;
- }
- if (doorLock.DeviceAddr != null)
- {
- localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint;
- }
- var pageSetting = new ZigBee.Device.DoorLock.PageSetting() { };
- pageSetting.Page = curPage;
- localDoorLockObj.pageSetting = pageSetting;
- var getDoorLockInfoList = await ZigBee.Device.DoorLock.GetDoorLockInfoFromServer("DoorLock/GetDoorLockPager", localDoorLockObj);
- if (getDoorLockInfoList != null)
- {
- foreach (var curDoorLockUser in getDoorLockInfoList.PageData)
- {
- var doorLockObj = new ZigBee.Device.DoorLock.LocaDoorLockObj() { };
- if (curDoorLockUser.DoorLockLocalUserId != null)
- {
- doorLockObj.UserID = int.Parse(curDoorLockUser.DoorLockLocalUserId);
- doorLockObj.UnlockType = curDoorLockUser.OpenLockMode;
- doorLockObj.UserName = curDoorLockUser.UserIdRemarks;
- }
- doorLockObj.PrimaryId = curDoorLockUser.Id;
- doorLockObj.EntryTime = curDoorLockUser.EntryTime;
- doorLockObj.ConnectedAccount = curDoorLockUser.CloudAccountId;
- if (doorLock.localDoorLockAccountList.ContainsKey(curDoorLockUser.CloudAccountId) == false)
- {
- doorLock.localDoorLockAccountList.Add(doorLockObj.ConnectedAccount, doorLockObj);
- }
- else
- {
- doorLock.localDoorLockAccountList[curDoorLockUser.DoorLockLocalUserId] = doorLockObj;
- }
- }
- }
- return doorLock.localDoorLockUserList;
- }));
- }
+ //public static async System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>> GetLocaDoorLockAccountlist(ZigBee.Device.DoorLock doorLock, Shared.Phone.UserCenter.MemberInfoRes curAccountObj, int curPage)
+ //{
+ // return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>>>)(async () =>
+ // {
+ // // 璇诲彇浜戠闂ㄩ攣璁惧涓殑淇℃伅
+ // var localDoorLockObj = new ZigBee.Device.DoorLock.GetDoorLockData() { };
+ // if (UserCenterResourse.UserInfo.AuthorityNo != 1)
+ // {
+ // localDoorLockObj.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
+ // localDoorLockObj.IsOtherAccountCtrl = true;
+ // }
+ // localDoorLockObj.CloudAccountId = curAccountObj.SubAccountDistributedMark;
+ // {
+ // localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint;
+ // }
+ // if (doorLock.DeviceAddr != null)
+ // {
+ // localDoorLockObj.DoorLockId = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint;
+ // }
+ // var pageSetting = new ZigBee.Device.DoorLock.PageSetting() { };
+ // pageSetting.Page = curPage;
+ // localDoorLockObj.pageSetting = pageSetting;
+ // var getDoorLockInfoList = await ZigBee.Device.DoorLock.GetDoorLockInfoFromServer("DoorLock/GetDoorLockPager", localDoorLockObj);
+ // if (getDoorLockInfoList != null)
+ // {
+ // foreach (var curDoorLockUser in getDoorLockInfoList.PageData)
+ // {
+ // var doorLockObj = new ZigBee.Device.DoorLock.LocaDoorLockObj() { };
+ // if (curDoorLockUser.DoorLockLocalUserId != null)
+ // {
+ // doorLockObj.UserID = int.Parse(curDoorLockUser.DoorLockLocalUserId);
+ // doorLockObj.UnlockType = curDoorLockUser.OpenLockMode;
+ // doorLockObj.UserName = curDoorLockUser.UserIdRemarks;
+ // }
+ // doorLockObj.PrimaryId = curDoorLockUser.Id;
+ // doorLockObj.EntryTime = curDoorLockUser.EntryTime;
+ // doorLockObj.ConnectedAccount = curDoorLockUser.CloudAccountId;
+ // if (doorLock.localDoorLockAccountList.ContainsKey(curDoorLockUser.CloudAccountId) == false)
+ // {
+ // doorLock.localDoorLockAccountList.Add(doorLockObj.ConnectedAccount, doorLockObj);
+ // }
+ // else
+ // {
+ // doorLock.localDoorLockAccountList[curDoorLockUser.DoorLockLocalUserId] = doorLockObj;
+ // }
+ // }
+ // }
+ // return doorLock.localDoorLockUserList;
+ // }));
+ //}
/// <summary>
/// 鑾峰彇鏈湴鍖归厤鎴愬憳鐨勯棬閿佺敤鎴蜂俊鎭垪琛�
/// </summary>
- public static async System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>> GetMatchDoorlockAccountList(ZigBee.Device.DoorLock doorLock, Shared.Phone.UserCenter.MemberInfoRes curAccountObj)
- {
- return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>>>)(async () =>
- {
- var curAccountDoorLockUserList = new Dictionary<int, ZigBee.Device.DoorLock.LocaDoorLockObj>();
- foreach (var curUserId in doorLock.localDoorLockAccountList.Keys)
- {
- var curDoorLockUser = doorLock.localDoorLockAccountList[curUserId];
+ //public static async System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>> GetMatchDoorlockAccountList(ZigBee.Device.DoorLock doorLock, Shared.Phone.UserCenter.MemberInfoRes curAccountObj)
+ //{
+ // return await System.Threading.Tasks.Task.Run((Func<System.Threading.Tasks.Task<Dictionary<int, LocaDoorLockObj>>>)(async () =>
+ // {
+ // var curAccountDoorLockUserList = new Dictionary<int, ZigBee.Device.DoorLock.LocaDoorLockObj>();
+ // foreach (var curUserId in doorLock.localDoorLockAccountList.Keys)
+ // {
+ // var curDoorLockUser = doorLock.localDoorLockAccountList[curUserId];
- if (string.IsNullOrEmpty(curDoorLockUser.ConnectedAccount) || curDoorLockUser.ConnectedAccount != curAccountObj.SubAccountDistributedMark)
- {
- continue;
- }
- else
- {
- curAccountDoorLockUserList.Add(curDoorLockUser.UserID, curDoorLockUser);
- }
- }
- return curAccountDoorLockUserList;
- }));
- }
+ // if (string.IsNullOrEmpty(curDoorLockUser.ConnectedAccount) || curDoorLockUser.ConnectedAccount != curAccountObj.SubAccountDistributedMark)
+ // {
+ // continue;
+ // }
+ // else
+ // {
+ // curAccountDoorLockUserList.Add(curDoorLockUser.UserID, curDoorLockUser);
+ // }
+ // }
+ // return curAccountDoorLockUserList;
+ // }));
+ //}
/// <summary>
/// 鐢熸垚6浣嶄复鏃跺瘑鐮�
@@ -1123,6 +1140,16 @@
return password;
}
+ //// <summary>
+ /// 鍙栧緱鏌愭湀鐨勬渶鍚庝竴澶�
+ /// </summary>
+ /// <param name="datetime">瑕佸彇寰楁湀浠芥渶鍚庝竴澶╃殑鏃堕棿</param>
+ /// <returns></returns>
+ public static DateTime LastDayOfMonth(DateTime datetime)
+ {
+ return datetime.AddDays(1 - datetime.Day).AddMonths(1).AddDays(-1);
+ }
+
/// <summary>
/// 灏哢NIX鏃堕棿鎴宠浆鎹㈡垚绯荤粺鏃堕棿(绮剧‘鍒扮)
/// <returns></returns>
--
Gitblit v1.8.0