From 351bdda734832d821a9764b0cde8be5d83c4ec50 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期四, 01 十二月 2022 09:56:25 +0800
Subject: [PATCH] 2022年12月01日09:56:23
---
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceDoorLockLogic.cs | 447 ++++++++++++++++++++++++++++---------------------------
1 files changed, 226 insertions(+), 221 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceDoorLockLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceDoorLockLogic.cs
old mode 100755
new mode 100644
index 6544496..e4c0d1f
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceDoorLockLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceDoorLockLogic.cs
@@ -1,221 +1,226 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace Shared.Phone.UserCenter
-{
- /// <summary>
- /// 闂ㄩ攣鍘嗗彶璁板綍鐨勯�昏緫
- /// </summary>
- public class HdlDeviceDoorLockLogic
- {
- #region 鈻� 鍙橀噺澹版槑___________________________
-
- /// <summary>
- /// 闂ㄩ攣鍘嗗彶璁板綍鐨勯�昏緫
- /// </summary>
- private static HdlDeviceDoorLockLogic m_Current = null;
- /// <summary>
- /// 闂ㄩ攣鍘嗗彶璁板綍鐨勯�昏緫
- /// </summary>
- public static HdlDeviceDoorLockLogic Current
- {
- get
- {
- if (m_Current == null)
- {
- m_Current = new HdlDeviceDoorLockLogic();
- }
- return m_Current;
- }
- }
-
- #endregion
-
- #region 鈻� 娣诲姞鍘嗗彶璁板綍_______________________
-
- /// <summary>
- /// 娣诲姞鍘嗗彶璁板綍
- /// </summary>
- /// <param name="i_doorLock">闂ㄩ攣瀵硅薄</param>
- /// <param name="OtherOpenLockMode">鍏朵粬寮�閿佹柟寮� 9001:甯稿紑鎵撳紑 9002:甯稿紑鍙栨秷 9003:甯稿紑鎸佺画</param>
- /// <param name="NormallyOpenContinuedTime">甯稿紑鎸佺画鏃堕棿(1~72灏忔椂 OtherOpenLockMode=9003鐨勬椂鍊欐湁鏁�)</param>
- public void AddDoorHistoryLog(ZigBee.Device.DoorLock i_doorLock, int OtherOpenLockMode, string NormallyOpenContinuedTime)
- {
- HdlThreadLogic.Current.RunThread(async () =>
- {
- //鑾峰彇闂ㄩ攣鐨勪富閿甀D
- var DoorLockId = await this.GetDoorHistoryDoorLockId(i_doorLock);
-
- var pra = new AddDoorHistoryLogPra();
- pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
- pra.DoorLockId = DoorLockId;
- pra.OtherOpenLockMode = OtherOpenLockMode;
- pra.NormallyOpenContinuedTime = NormallyOpenContinuedTime;
-
- //涓嶄簩娆″彂閫�,涓嶆娴嬮敊璇爜
- var listCheck = new List<string>() { "NotSetAgain", "NotCheck" };
- var result = await UserCenterLogic.GetResultStatuByRequestHttps("DoorLock/AddDoorLockHistory", true, pra, listCheck);
- if (result == false)
- {
- }
- });
- }
-
- /// <summary>
- /// 鑾峰彇娣诲姞闂ㄩ攣鍘嗗彶璁板綍鐨凞oorLockId
- /// </summary>
- /// <param name="i_doorLock">闂ㄩ攣瀵硅薄</param>
- /// <returns></returns>
- private async System.Threading.Tasks.Task<string> GetDoorHistoryDoorLockId(ZigBee.Device.DoorLock i_doorLock)
- {
- var pra = new GetDoorIdPra();
- pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
- pra.DoorLockId = i_doorLock.DeviceAddr + "_200";
- //涓嶄簩娆″彂閫�,涓嶆娴嬮敊璇爜
- var listCheck = new List<string>() { "NotSetAgain", "NotCheck" };
- var result = await UserCenterLogic.GetResponseDataByRequestHttps("DoorLock/GetDoorLockPager", true, pra, listCheck);
- if (result == null) { return null; }
-
- //濡傛灉宸茬粡鍒涘缓浜�,鍒欎笉鍐嶅垱寤�
- var myData = Newtonsoft.Json.JsonConvert.DeserializeObject<GetListIdResult>(result);
- if (myData.PageData.Count > 0)
- {
- return myData.PageData[0].Id;
- }
-
- //濡傛灉杩樻病鏈夊垱寤�,鍒欒櫄鎷熶竴涓壒娈婄殑涓滆タ鍑烘潵
- var pra2 = new AddDoorPra();
- pra2.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
- pra2.DoorLockId = i_doorLock.DeviceAddr + "_200";
- var result2 = await UserCenterLogic.GetResponseDataByRequestHttps("DoorLock/AddDoorLock", true, pra2, listCheck);
- //浜戠鏄洿鎺ヨ繑鍥炲垱寤虹殑涓婚敭瀛楃涓�
- return result2;
- }
-
- /// <summary>
- /// 娣诲姞鍘嗗彶璁板綍鐨勫弬鏁�
- /// </summary>
- private class AddDoorHistoryLogPra : IfacePraCommon
- {
- /// <summary>
- /// RequestVersion
- /// </summary>
- public string RequestVersion = Common.CommonPage.RequestVersion;
- /// <summary>
- /// LoginAccessToken
- /// </summary>
- public string LoginAccessToken = string.Empty;
- /// <summary>
- /// ZigbeeHomeId
- /// </summary>
- public string HomeId = Common.Config.Instance.Home.Id;
- /// <summary>
- /// 闂ㄩ攣浜戠涓婚敭(鍦�(鑾峰彇鏌愪釜浣忓畢闂ㄩ攣鍒嗛〉)鎺ュ彛鍝嶅簲涓殑Id鍊�)
- /// </summary>
- public string DoorLockId = string.Empty;
- /// <summary>
- /// 鍏朵粬寮�閿佹柟寮� 9001:甯稿紑鎵撳紑 9002:甯稿紑鍙栨秷 9003:甯稿紑鎸佺画
- /// </summary>
- public int OtherOpenLockMode = -1;
- /// <summary>
- /// 甯稿紑鎸佺画鏃堕棿(1~72灏忔椂 OtherOpenLockMode=9003鐨勬椂鍊欐湁鏁�)
- /// </summary>
- public string NormallyOpenContinuedTime = string.Empty;
- /// <summary>
- /// 寮�閿佹椂闂�(鍘嗗彶璁板綍鐨勬椂闂碏rom-To妫�绱㈢殑瀵硅薄)
- /// </summary>
- public string UnlockTime = DateTime.UtcNow.ToString();
- }
-
- /// <summary>
- /// 鑾峰彇娣诲姞闂ㄩ攣鍘嗗彶璁板綍鐨凞oorLockId鐨勫弬鏁�
- /// </summary>
- private class GetDoorIdPra : IfacePraCommon
- {
- /// <summary>
- /// RequestVersion
- /// </summary>
- public string RequestVersion = Common.CommonPage.RequestVersion;
- /// <summary>
- /// LoginAccessToken
- /// </summary>
- public string LoginAccessToken = string.Empty;
- /// <summary>
- /// ZigbeeHomeId
- /// </summary>
- public string HomeId = Common.Config.Instance.Home.Id;
- /// <summary>
- /// 濉獹UID
- /// </summary>
- public string CloudAccountId = Common.Config.Instance.Guid;
- /// <summary>
- /// 杩欎釜鏄棬閿佺殑 Mac_绔偣
- /// </summary>
- public string DoorLockId = string.Empty;
- /// <summary>
- /// 寮�閿佹柟寮�:鍥哄畾9000
- /// </summary>
- public int OpenLockMode = 9000;
- }
-
- /// <summary>
- /// 娣诲姞闂ㄩ攣鐨勫弬鏁�
- /// </summary>
- private class AddDoorPra : IfacePraCommon
- {
- /// <summary>
- /// RequestVersion
- /// </summary>
- public string RequestVersion = Common.CommonPage.RequestVersion;
- /// <summary>
- /// LoginAccessToken
- /// </summary>
- public string LoginAccessToken = string.Empty;
- /// <summary>
- /// ZigbeeHomeId
- /// </summary>
- public string HomeId = Common.Config.Instance.Home.Id;
- /// <summary>
- /// 濉獹UID
- /// </summary>
- public string CloudAccountId = Common.Config.Instance.Guid;
- /// <summary>
- /// 杩欎釜鏄棬閿佺殑 Mac_绔偣
- /// </summary>
- public string DoorLockId = string.Empty;
- /// <summary>
- /// 鍏朵粬寮�閿佹柟寮� 鍥哄畾9000
- /// </summary>
- public int OpenLockMode = 9000;
- /// <summary>
- /// 褰曞叆鏃堕棿
- /// </summary>
- public string EntryTime = DateTime.Now.ToString();
- }
-
- /// <summary>
- /// 鎺ユ敹浜戠ID鐨勭粨鏋�
- /// </summary>
- private class GetListIdResult
- {
- /// <summary>
- /// 浜戠杩斿洖鐨勪富閿甀D
- /// </summary>
- public List<GetIdResult> PageData = new List<GetIdResult>();
- }
-
- /// <summary>
- /// 鎺ユ敹浜戠ID鐨勭粨鏋�
- /// </summary>
- private class GetIdResult
- {
- /// <summary>
- /// 浜戠杩斿洖鐨勪富閿甀D
- /// </summary>
- public string Id = string.Empty;
- }
-
- #endregion
- }
-}
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shared.Phone.UserCenter
+{
+ /// <summary>
+ /// 闂ㄩ攣鍘嗗彶璁板綍鐨勯�昏緫
+ /// </summary>
+ public class HdlDeviceDoorLockLogic
+ {
+ #region 鈻� 鍙橀噺澹版槑___________________________
+
+ /// <summary>
+ /// 闂ㄩ攣鍘嗗彶璁板綍鐨勯�昏緫
+ /// </summary>
+ private static HdlDeviceDoorLockLogic m_Current = null;
+ /// <summary>
+ /// 闂ㄩ攣鍘嗗彶璁板綍鐨勯�昏緫
+ /// </summary>
+ public static HdlDeviceDoorLockLogic Current
+ {
+ get
+ {
+ if (m_Current == null)
+ {
+ m_Current = new HdlDeviceDoorLockLogic();
+ }
+ return m_Current;
+ }
+ }
+
+ #endregion
+
+ #region 鈻� 娣诲姞鍘嗗彶璁板綍_______________________
+
+ /// <summary>
+ /// 娣诲姞鍘嗗彶璁板綍
+ /// </summary>
+ /// <param name="i_doorLock">闂ㄩ攣瀵硅薄</param>
+ /// <param name="OtherOpenLockMode">鍏朵粬寮�閿佹柟寮� 9001:甯稿紑鎵撳紑 9002:甯稿紑鍙栨秷 9003:甯稿紑鎸佺画 9004:甯稿紑鑷姩鍖栨墜鍔ㄥ彇娑�</param>
+ /// <param name="NormallyOpenContinuedTime">甯稿紑鎸佺画鏃堕棿(1~72灏忔椂 OtherOpenLockMode=9003鐨勬椂鍊欐湁鏁�)</param>
+ public void AddDoorHistoryLog(ZigBee.Device.DoorLock i_doorLock, int OtherOpenLockMode, string NormallyOpenContinuedTime)
+ {
+ HdlThreadLogic.Current.RunThread(() =>
+ {
+ //鑾峰彇闂ㄩ攣鐨勪富閿甀D
+ var DoorLockId = this.GetDoorHistoryDoorLockId(i_doorLock);
+ if (string.IsNullOrEmpty(DoorLockId) == true)
+ {
+ //缃戠粶涓嶉��
+ return;
+ }
+
+ var pra = new AddDoorHistoryLogPra();
+ pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
+ pra.DoorLockId = DoorLockId;
+ pra.OtherOpenLockMode = OtherOpenLockMode;
+ pra.NormallyOpenContinuedTime = NormallyOpenContinuedTime;
+
+ //涓嶆娴嬮敊璇爜
+ var listCheck = new List<string>() { "NotCheck" };
+ var result = UserCenterLogic.GetResultStatuByRequestHttps("DoorLock/AddDoorLockHistory", true, pra, listCheck);
+ if (result == false)
+ {
+ }
+ });
+ }
+
+ /// <summary>
+ /// 鑾峰彇娣诲姞闂ㄩ攣鍘嗗彶璁板綍鐨凞oorLockId
+ /// </summary>
+ /// <param name="i_doorLock">闂ㄩ攣瀵硅薄</param>
+ /// <returns></returns>
+ private string GetDoorHistoryDoorLockId(ZigBee.Device.DoorLock i_doorLock)
+ {
+ var pra = new GetDoorIdPra();
+ pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
+ pra.DoorLockId = i_doorLock.DeviceAddr + "_" + i_doorLock.DeviceEpoint;
+ //涓嶆娴嬮敊璇爜
+ var listCheck = new List<string>() { "NotCheck" };
+ var result = UserCenterLogic.GetResponseDataByRequestHttps("DoorLock/GetDoorLockPager", true, pra, listCheck);
+ if (string.IsNullOrEmpty(result) == true) { return null; }
+
+ //濡傛灉宸茬粡鍒涘缓浜�,鍒欎笉鍐嶅垱寤�
+ var myData = Newtonsoft.Json.JsonConvert.DeserializeObject<GetListIdResult>(result);
+ if (myData.PageData.Count > 0)
+ {
+ return myData.PageData[0].Id;
+ }
+
+ //濡傛灉杩樻病鏈夊垱寤�,鍒欒櫄鎷熶竴涓壒娈婄殑涓滆タ鍑烘潵
+ var pra2 = new AddDoorPra();
+ pra2.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
+ pra2.DoorLockId = i_doorLock.DeviceAddr + "_" + i_doorLock.DeviceEpoint;
+ var result2 = UserCenterLogic.GetResponseDataByRequestHttps("DoorLock/AddDoorLock", true, pra2, listCheck);
+ //浜戠鏄洿鎺ヨ繑鍥炲垱寤虹殑涓婚敭瀛楃涓�
+ return result2;
+ }
+
+ /// <summary>
+ /// 娣诲姞鍘嗗彶璁板綍鐨勫弬鏁�
+ /// </summary>
+ private class AddDoorHistoryLogPra : IfacePraCommon
+ {
+ /// <summary>
+ /// RequestVersion
+ /// </summary>
+ public string RequestVersion = Common.CommonPage.RequestVersion;
+ /// <summary>
+ /// LoginAccessToken
+ /// </summary>
+ public string LoginAccessToken = string.Empty;
+ /// <summary>
+ /// ZigbeeHomeId
+ /// </summary>
+ public string HomeId = Common.Config.Instance.Home.Id;
+ /// <summary>
+ /// 闂ㄩ攣浜戠涓婚敭(鍦�(鑾峰彇鏌愪釜浣忓畢闂ㄩ攣鍒嗛〉)鎺ュ彛鍝嶅簲涓殑Id鍊�)
+ /// </summary>
+ public string DoorLockId = string.Empty;
+ /// <summary>
+ /// 鍏朵粬寮�閿佹柟寮� 9001:甯稿紑鎵撳紑 9002:甯稿紑鍙栨秷 9003:甯稿紑鎸佺画
+ /// </summary>
+ public int OtherOpenLockMode = -1;
+ /// <summary>
+ /// 甯稿紑鎸佺画鏃堕棿(1~72灏忔椂 OtherOpenLockMode=9003鐨勬椂鍊欐湁鏁�)
+ /// </summary>
+ public string NormallyOpenContinuedTime = string.Empty;
+ /// <summary>
+ /// 寮�閿佹椂闂�(鍘嗗彶璁板綍鐨勬椂闂碏rom-To妫�绱㈢殑瀵硅薄)
+ /// </summary>
+ public string UnlockTime = DateTime.UtcNow.ToString();
+ }
+
+ /// <summary>
+ /// 鑾峰彇娣诲姞闂ㄩ攣鍘嗗彶璁板綍鐨凞oorLockId鐨勫弬鏁�
+ /// </summary>
+ private class GetDoorIdPra : IfacePraCommon
+ {
+ /// <summary>
+ /// RequestVersion
+ /// </summary>
+ public string RequestVersion = Common.CommonPage.RequestVersion;
+ /// <summary>
+ /// LoginAccessToken
+ /// </summary>
+ public string LoginAccessToken = string.Empty;
+ /// <summary>
+ /// ZigbeeHomeId
+ /// </summary>
+ public string HomeId = Common.Config.Instance.Home.Id;
+ /// <summary>
+ /// 濉獹UID
+ /// </summary>
+ public string CloudAccountId = Common.Config.Instance.Guid;
+ /// <summary>
+ /// 杩欎釜鏄棬閿佺殑 Mac_绔偣
+ /// </summary>
+ public string DoorLockId = string.Empty;
+ /// <summary>
+ /// 寮�閿佹柟寮�:鍥哄畾9000
+ /// </summary>
+ public int OpenLockMode = 9000;
+ }
+
+ /// <summary>
+ /// 娣诲姞闂ㄩ攣鐨勫弬鏁�
+ /// </summary>
+ private class AddDoorPra : IfacePraCommon
+ {
+ /// <summary>
+ /// RequestVersion
+ /// </summary>
+ public string RequestVersion = Common.CommonPage.RequestVersion;
+ /// <summary>
+ /// LoginAccessToken
+ /// </summary>
+ public string LoginAccessToken = string.Empty;
+ /// <summary>
+ /// ZigbeeHomeId
+ /// </summary>
+ public string HomeId = Common.Config.Instance.Home.Id;
+ /// <summary>
+ /// 濉獹UID
+ /// </summary>
+ public string CloudAccountId = Common.Config.Instance.Guid;
+ /// <summary>
+ /// 杩欎釜鏄棬閿佺殑 Mac_绔偣
+ /// </summary>
+ public string DoorLockId = string.Empty;
+ /// <summary>
+ /// 鍏朵粬寮�閿佹柟寮� 鍥哄畾9000
+ /// </summary>
+ public int OpenLockMode = 9000;
+ /// <summary>
+ /// 褰曞叆鏃堕棿
+ /// </summary>
+ public string EntryTime = DateTime.Now.ToString();
+ }
+
+ /// <summary>
+ /// 鎺ユ敹浜戠ID鐨勭粨鏋�
+ /// </summary>
+ private class GetListIdResult
+ {
+ /// <summary>
+ /// 浜戠杩斿洖鐨勪富閿甀D
+ /// </summary>
+ public List<GetIdResult> PageData = new List<GetIdResult>();
+ }
+
+ /// <summary>
+ /// 鎺ユ敹浜戠ID鐨勭粨鏋�
+ /// </summary>
+ private class GetIdResult
+ {
+ /// <summary>
+ /// 浜戠杩斿洖鐨勪富閿甀D
+ /// </summary>
+ public string Id = string.Empty;
+ }
+
+ #endregion
+ }
+}
--
Gitblit v1.8.0