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/Device/DoorLock/DoorLockHistoryLogForm.cs |  325 ++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 242 insertions(+), 83 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs
index 620df26..e295e6d 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs
@@ -1,7 +1,6 @@
 锘縰sing System;
 using System.Collections.Generic;
 using System.Text;
-using System.Threading.Tasks;
 using ZigBee.Device;
 
 namespace Shared.Phone.UserCenter.DeviceDoorLock
@@ -49,10 +48,6 @@
         /// 鍏朵粬娑堟伅鐨勪富閿�,瀹冨瓨鍦ㄥ彟澶栫殑涓�寮犳暟鎹簱琛ㄤ腑
         /// </summary>
         private List<string> listOtherMsgId = new List<string>();
-        /// <summary>
-        /// 鏃犳硶璇嗗埆鐨勫紑閿佽褰曠殑鐢ㄦ埛ID(鍥犱负閭d釜瀵嗙爜鏈夊彲鑳芥病鏈夊垎閰嶇粰鎴愬憳)
-        /// </summary>
-        private List<string> listOtherUserId = new List<string>();
 
         #endregion
 
@@ -69,33 +64,37 @@
             //璁剧疆澶撮儴淇℃伅
             base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uHistoryLog));
 
-            //鍒犻櫎
-            var btnDelete = new MostRightIconControl(69, 69);
-            btnDelete.UnSelectedImagePath = "Item/DeleteIcon2Selected.png";
-            topFrameLayout.AddChidren(btnDelete);
-            btnDelete.InitControl();
-            btnDelete.ButtonClickEvent += (sender, e) =>
+            //鎴愬憳涓嶅厑璁告竻绌鸿褰�
+            if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
             {
-                var form = new TopRightMenuControl(1, 2);
-                //娓呯┖璁板綍
-                form.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uClearLog), "Item/DeleteIcon2.png", "Item/DeleteIcon2Selected.png", () =>
+                //鍒犻櫎
+                var btnDelete = new MostRightIconControl(69, 69);
+                btnDelete.UnSelectedImagePath = "Item/DeleteIcon2Selected.png";
+                topFrameLayout.AddChidren(btnDelete);
+                btnDelete.InitControl();
+                btnDelete.ButtonClickEvent += (sender, e) =>
                 {
-                    if (this.listView.frameTable.ChildrenCount == 0)
+                    var form = new TopRightMenuControl(1, 2);
+                    //娓呯┖璁板綍
+                    form.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uClearLog), "Item/DeleteIcon2.png", "Item/DeleteIcon2Selected.png", () =>
                     {
-                        //鏃犳暟鎹彲鍒�
-                        return;
-                    }
-                    //纭娓呯┖褰撳墠璁板綍锛�
-                    this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uConfirmClearNowLog), () =>
-                    {
-                        HdlThreadLogic.Current.RunThread(() =>
+                        if (this.listView.frameTable.ChildrenCount == 0)
                         {
-                            //娓呯┖鎵�鏈夎褰�
-                            this.ClearAllHistoryLog();
+                            //鏃犳暟鎹彲鍒�
+                            return;
+                        }
+                        //纭娓呯┖褰撳墠璁板綍锛�
+                        this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uConfirmClearNowLog), () =>
+                        {
+                            HdlThreadLogic.Current.RunThread(() =>
+                            {
+                                //娓呯┖鎵�鏈夎褰�
+                                this.ClearAllHistoryLog();
+                            });
                         });
                     });
-                });
-            };
+                };
+            }
 
             //鍒濆鍖栦腑閮ㄤ俊鎭�
             this.InitMiddleFrame();
@@ -223,12 +222,12 @@
                 this.listHistoryInfo = null;
             }
 
-            HdlThreadLogic.Current.RunThread(async () =>
+            HdlThreadLogic.Current.RunThread(() =>
             {
                 //鎵撳紑杩涘害鏉�
                 this.ShowProgressBar();
                 //鎴愬憳鍒楄〃
-                var result = await this.GetMemberListInfo();
+                var result = this.GetMemberListInfo();
                 if (result == false)
                 {
                     //鍏抽棴杩涘害鏉�
@@ -242,7 +241,7 @@
                     dicMemberName.Add(listMenberInfo[i].SubAccountDistributedMark, string.IsNullOrEmpty(listMenberInfo[i].UserName) == false ? listMenberInfo[i].UserName : listMenberInfo[i].Account);
                 }
                 //鍘嗗彶璁板綍
-                var historyLog = await this.GetHistoryLogInfo(dicMemberName);
+                var historyLog = this.GetHistoryLogInfo(dicMemberName);
                 if (historyLog == null)
                 {
                     //鍏抽棴杩涘害鏉�
@@ -276,7 +275,7 @@
         /// 鑾峰彇鎴愬憳鍒楄〃淇℃伅
         /// </summary>
         /// <returns></returns>
-        private async Task<bool> GetMemberListInfo()
+        private bool GetMemberListInfo()
         {
             if (listMenberInfo != null)
             {
@@ -299,8 +298,8 @@
             }
 
             var pra = new MemberListInfoPra();
-            string result = await UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra);
-            if (result == null)
+            string result = UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra);
+            if (string.IsNullOrEmpty(result) == true)
             {
                 return false;
             }
@@ -332,7 +331,7 @@
         {
             var frameTable = new FrameRowControl(listView.rowSpace / 2);
             frameTable.UseClickStatu = false;
-            this.listView.AddChidrenFrame2(frameTable);
+            this.listView.AddChidren2(frameTable);
             //鍥炬爣
             var btnIcon = frameTable.AddLeftIcon();
             //淇℃伅
@@ -395,6 +394,11 @@
                     //甯稿紑妯″紡鍚敤{0}灏忔椂
                     btnMsg.Text = Language.StringByID(R.MyInternationalizationString.uNormallyOpenModeOpenSomeTime).Replace("{0}", historyInfo.NormallyOpenContinuedTime);
                 }
+                else if (historyInfo.OtherOpenLockMode == 9004)
+                {
+                    //甯稿紑鑷姩鍖栨墜鍔ㄥ彇娑�
+                    btnMsg.Text = Language.StringByID(R.MyInternationalizationString.uNormallyOpenLogicManualClose);
+                }
                 else
                 {
                     //涓婇潰鏄疉pp鎵嬪姩鎺ㄩ��,杩欓噷鏄綉鍏虫垨鑰呴棬閿佽嚜宸辨帹閫�
@@ -417,6 +421,16 @@
                     //IC鍗″紑閿佹垚鍔�
                     btnMsg.TextID = R.MyInternationalizationString.uUnlockByICcardSuccess;
                 }
+                else if (historyInfo.OpenLockMode == 13)
+                {
+                    //闈欒剦绾瑰紑閿佹垚鍔�
+                    btnMsg.TextID = R.MyInternationalizationString.uStriaVenosusUnLockSuccess;
+                }
+                else if (historyInfo.OpenLockMode == 14)
+                {
+                    //浜鸿劯璇嗗埆寮�閿佹垚鍔�
+                    btnMsg.TextID = R.MyInternationalizationString.uFaceRecognitionUnLockSuccess;
+                }
                 else if (historyInfo.OpenLockMode == 15)
                 {
                     //鎸囩汗寮�閿佹垚鍔�
@@ -438,6 +452,16 @@
                 {
                     //IC鍗″紑閿佸け璐�
                     btnMsg.TextID = R.MyInternationalizationString.uUnlockByICcardFail;
+                }
+                else if (historyInfo.OpenLockMode == 13)
+                {
+                    //闈欒剦绾瑰紑閿佸け璐�
+                    btnMsg.TextID = R.MyInternationalizationString.uStriaVenosusUnLockFail;
+                }
+                else if (historyInfo.OpenLockMode == 14)
+                {
+                    //浜鸿劯璇嗗埆寮�閿佸け璐�
+                    btnMsg.TextID = R.MyInternationalizationString.uFaceRecognitionUnLockFail;
                 }
                 else if (historyInfo.OpenLockMode == 15)
                 {
@@ -488,7 +512,6 @@
             //鍘嗗彶璁板綍澶夯鐑︿簡,瀛樺湪涓嶅悓鐨勬暟鎹簱琛ㄩ噷,骞朵笖鏁版嵁杩樹笉涓�鏍�,鍙兘杩欐牱涓�涓釜鍒ゆ柇浜�
             var listScreeningData = new List<HistoryInfo>();
             //娓呴櫎鎺変箣鍓嶇殑璁板綍
-            this.listOtherUserId = new List<string>();
             this.listOtherMsgId = new List<string>();
 
             //鏄惁閫夋嫨鍏ㄩ�夌敤鎴�
@@ -569,25 +592,19 @@
                     this.listOtherMsgId.Add(info.MsgKeyId);
                 }
             }
-            if (info.CloudAccountId != string.Empty && dicMemberName.ContainsKey(info.CloudAccountId) == false
-                && this.listOtherUserId.Contains(info.CloudAccountId) == false)
-            {
-                //鏃犳硶璇嗗埆鐨勫紑閿佽褰曠殑鐢ㄦ埛ID(鍥犱负閭d釜瀵嗙爜鏈夊彲鑳芥病鏈夊垎閰嶇粰鎴愬憳)
-                this.listOtherUserId.Add(info.CloudAccountId);
-            }
 
             return true;
         }
 
         #endregion
 
-        #region 鈻� 鑾峰彇璁板綍___________________________
+        #region 鈻� 鑾峰彇闂ㄩ攣鎵撳紑璁板綍___________________
 
         /// <summary>
         /// 鑾峰彇鍘嗗彶璁板綍
         /// </summary>
         /// <returns></returns>
-        private async Task<List<HistoryInfo>> GetHistoryLogInfo(Dictionary<string, string> dicMemberName)
+        private List<HistoryInfo> GetHistoryLogInfo(Dictionary<string, string> dicMemberName)
         {
             if (this.listHistoryInfo != null)
             {
@@ -598,9 +615,9 @@
             var pra = this.GetReadHistoryPra();
 
             //鑾峰彇闂ㄩ攣鐨勬墦寮�鍜屽叧闂褰�
-            var listAllLog = await this.GetDoorOpenHistoryLog(pra);
+            var listAllLog = this.GetDoorOpenHistoryLog(pra);
             //鑾峰彇闂ㄩ攣鐨勫叾浠栬褰�
-            var listOtherLog = await this.GetDoorOtherHistoryLog(pra.UnlockTimeBegin, pra.UnlockTimeEnd);
+            var listOtherLog = this.GetDoorOtherHistoryLog(pra.UnlockTimeBegin, pra.UnlockTimeEnd);
             listAllLog.AddRange(listOtherLog);
 
             //鎺掑簭涓�涓�
@@ -634,7 +651,7 @@
         /// </summary>
         /// <param name="i_pra"></param>
         /// <returns></returns>
-        private async Task<List<HistoryInfo>> GetDoorOpenHistoryLog(GetHistoryDataPra i_pra)
+        private List<HistoryInfo> GetDoorOpenHistoryLog(GetHistoryDataPra i_pra)
         {
             var listLog = new List<HistoryInfo>();
 
@@ -642,13 +659,25 @@
             while (true)
             {
                 //璁块棶浜戠
-                var result = await UserCenterLogic.GetResponseDataByRequestHttps("DoorLock/GetDoorLockHistoryPager", true, i_pra);
-                if (result == null)
+                var result = UserCenterLogic.GetResponseDataByRequestHttps("DoorLock/GetDoorLockHistoryPager", true, i_pra);
+                if (string.IsNullOrEmpty(result) == true)
                 {
                     return null;
                 }
                 var dataInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetHistoryDataResult>(result);
-                listLog.AddRange(dataInfo.PageData);
+                foreach (var data in dataInfo.PageData)
+                {
+                    //涓嶇煡閬撲负浠�涔堜細鏈変笂鎶ヤ簡铏氭嫙9000鐨勯偅涓壒娈婄殑涓滆タ
+                    if (data.OpenLockMode == 9000 && data.OtherOpenLockMode <= 9000)
+                    {
+                        continue;
+                    }
+                    if (data.CloudAccountId == null)
+                    {
+                        data.CloudAccountId = string.Empty;
+                    }
+                    listLog.Add(data);
+                }
 
                 if (dataInfo.HasNextPage == false)
                 {
@@ -662,25 +691,59 @@
             return listLog;
         }
 
+        #endregion
+
+        #region 鈻� 鑾峰彇闂ㄩ攣鍏朵粬璁板綍___________________
+
         /// <summary>
         /// 鑾峰彇闂ㄩ攣鐨勫叾浠栬褰�
         /// </summary>
         /// <returns></returns>
-        private async Task<List<HistoryInfo>> GetDoorOtherHistoryLog(string beginTime, string endTime)
+        private List<HistoryInfo> GetDoorOtherHistoryLog(string beginTime, string endTime)
         {
             var listLog = new List<HistoryInfo>();
 
-            //鍘昏幏鍙栧叾浠栦俊鎭�
+            //鑾峰彇闂ㄩ攣鍏朵粬绫讳俊鎭笂鎶�
             var pra2 = new MessageInfoPra();
             pra2.BeginTime = beginTime;
             pra2.EndTime = endTime;
             pra2.Topic = "/Alarms/SendAlarmInform";
             pra2.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
-            var result = await UserCenterLogic.GetResponseDataByRequestHttps("MessageCenter/GetMessageCenterPagger", true, pra2);
-            if (result == null)
+            var result = UserCenterLogic.GetResponseDataByRequestHttps("MessageCenter/GetMessageCenterPagger", true, pra2);
+            if (string.IsNullOrEmpty(result) == true)
             {
                 return null;
             }
+            this.AdjustDoorOtherAlarmData(ref listLog, result);
+
+            //浠庤嚜鍔ㄥ寲涓�,鑾峰彇甯稿紑妯″紡璁板綍
+            pra2.Topic = "/Logic/Execute_Respon";
+            result = UserCenterLogic.GetResponseDataByRequestHttps("MessageCenter/GetMessageCenterPagger", true, pra2);
+            if (string.IsNullOrEmpty(result) == true)
+            {
+                return null;
+            }
+            this.AdjustDoorNormallyOpenData(ref listLog, result);
+
+            //鑾峰彇闂ㄩ攣涓存椂瀵嗙爜寮�閿佽褰�
+            pra2.Topic = "/DoorLock/DoorLockOperatingEventNotificationCommand";
+            result = UserCenterLogic.GetResponseDataByRequestHttps("MessageCenter/GetMessageCenterPagger", true, pra2);
+            if (string.IsNullOrEmpty(result) == true)
+            {
+                return null;
+            }
+            this.AdjustDoorTemporaryPasswordData(ref listLog, result);
+
+            return listLog;
+        }
+
+        /// <summary>
+        /// 澶勭悊闂ㄩ攣甯稿紑妯″紡璁板綍淇℃伅
+        /// </summary>
+        /// <param name="listLog"></param>
+        /// <param name="result"></param>
+        private void AdjustDoorOtherAlarmData(ref List<HistoryInfo> listLog, string result)
+        {
             var dataInfo2 = Newtonsoft.Json.JsonConvert.DeserializeObject<MessageCentetInfo>(result);
             string doorKey = this.DeviceDoor.DeviceAddr + "_" + this.DeviceDoor.DeviceEpoint;
             foreach (var myInfo in dataInfo2.PageData)
@@ -712,8 +775,109 @@
                 }
                 listLog.Add(data);
             }
+        }
 
-            return listLog;
+        /// <summary>
+        /// 澶勭悊闂ㄩ攣甯稿紑妯″紡淇℃伅涓婃姤
+        /// </summary>
+        /// <param name="listLog"></param>
+        /// <param name="result"></param>
+        private void AdjustDoorNormallyOpenData(ref List<HistoryInfo> listLog, string result)
+        {
+            var dataInfo2 = Newtonsoft.Json.JsonConvert.DeserializeObject<MessageCentetInfo>(result);
+            string doorKey = this.DeviceDoor.DeviceAddr + "_" + this.DeviceDoor.DeviceEpoint;
+            foreach (var myInfo in dataInfo2.PageData)
+            {
+                var jobject = Newtonsoft.Json.Linq.JObject.Parse(myInfo.PayloadJson);
+                var myActionData = Newtonsoft.Json.JsonConvert.DeserializeObject<LogicPushResult>(jobject["Data"].ToString());
+                if (myActionData.ActionData == null || myActionData.ActionData.Actiontype != 8)
+                {
+                    //涓嶆槸甯稿紑妯″紡鐨勮嚜鍔ㄥ寲
+                    continue;
+                }
+                string deviceAddr = myActionData.ActionData.MacStr;
+                int deviceEpoint = myActionData.ActionData.Epoint;
+                if (doorKey != deviceAddr + "_" + deviceEpoint)
+                {
+                    //涓嶆槸鍚屼竴涓棬閿佺殑璁板綍
+                    continue;
+                }
+
+                var data = new HistoryInfo();
+                data.DeviceMac = deviceAddr;
+                data.DeviceEpoint = deviceEpoint;
+                //娑堟伅
+                if (myActionData.ActionData.PassDataString == "055704010112")
+                {
+                    //甯稿紑妯″紡寮�鍚�(鑷姩鍖栬Е鍙�)
+                    data.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg11);
+                }
+                else if (myActionData.ActionData.PassDataString == "055704010113")
+                {
+                    //甯稿紑妯″紡缁撴潫(鑷姩鍖栬Е鍙�)
+                    data.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg12);
+                }
+                else
+                {
+                    continue;
+                }
+                //鏃堕棿
+                data.UnlockTime = myInfo.CreatedOnUtc;
+                //涓婚敭
+                data.MsgKeyId = myInfo.Id;
+                //娑堟伅鍖哄垎
+                data.OpenLockMode = 9000;
+
+                listLog.Add(data);
+            }
+        }
+
+        /// <summary>
+        /// 澶勭悊闂ㄩ攣涓存椂瀵嗙爜涓婃姤
+        /// </summary>
+        /// <param name="listLog"></param>
+        /// <param name="result"></param>
+        private void AdjustDoorTemporaryPasswordData(ref List<HistoryInfo> listLog, string result)
+        {
+            var dataInfo2 = Newtonsoft.Json.JsonConvert.DeserializeObject<MessageCentetInfo>(result);
+            string doorKey = this.DeviceDoor.DeviceAddr + "_" + this.DeviceDoor.DeviceEpoint;
+            foreach (var myInfo in dataInfo2.PageData)
+            {
+                var jobject = Newtonsoft.Json.Linq.JObject.Parse(myInfo.PayloadJson);
+                string deviceAddr = jobject.Value<string>("DeviceAddr");
+                int deviceEpoint = jobject.Value<int>("Epoint");
+                if (doorKey != deviceAddr + "_" + deviceEpoint)
+                {
+                    //涓嶆槸鍚屼竴涓棬閿佺殑璁板綍
+                    continue;
+                }
+                var myActionData = Newtonsoft.Json.JsonConvert.DeserializeObject<PasswordOperationData>(jobject["Data"].ToString());
+                if (myActionData.UserID != 246)
+                {
+                    //涓嶆槸涓存椂瀵嗙爜
+                    continue;
+                }
+                var data = new HistoryInfo();
+                data.DeviceMac = deviceAddr;
+                data.DeviceEpoint = deviceEpoint;
+                //娑堟伅
+                if (myActionData.OperationEventCode == 2)
+                {
+                    //涓存椂瀵嗙爜寮�閿佹垚鍔�
+                    data.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg13);
+                }
+                else
+                {
+                    //涓存椂瀵嗙爜寮�閿佸け璐�
+                    data.AlarmMsg = Language.StringByID(R.MyInternationalizationString.uDoorLockAlarmMsg14);
+                }
+                //鏃堕棿
+                data.UnlockTime = myInfo.CreatedOnUtc;
+                //涓婚敭
+                data.MsgKeyId = myInfo.Id;
+
+                listLog.Add(data);
+            }
         }
 
         #endregion
@@ -723,14 +887,14 @@
         /// <summary>
         /// 娓呯┖鎵�鏈夎褰�
         /// </summary>
-        private async void ClearAllHistoryLog()
+        private void ClearAllHistoryLog()
         {
-            //鑾峰彇璁块棶浜戠鎺ュ彛鐨勫惎鍔ㄥ弬鏁�
+            //鑾峰彇璁块棶浜戠鎺ュ彛鐨勫惎鍔ㄥ弬鏁�(2020.05.08:鍏ㄩ儴娓呯┖)
             var pra = this.GetDeleteDataPra();
 
             //鎵撳紑杩涘害鏉�
             this.ShowProgressBar();
-            var result = await UserCenterLogic.GetResultStatuByRequestHttps("DoorLock/ClearDoorLockHistory", true, pra);
+            var result = UserCenterLogic.GetResultStatuByRequestHttps("DoorLock/ClearDoorLockHistory", true, pra);
             if (result == false)
             {
                 return;
@@ -744,7 +908,7 @@
                 for (int i = 0; i < listOtherMsgId.Count; i++)
                 {
                     pra2.Id = listOtherMsgId[i];
-                    result = await UserCenterLogic.GetResultStatuByRequestHttps("MessageCenter/DelMessageCenterItem", true, pra2);
+                    result = UserCenterLogic.GetResultStatuByRequestHttps("MessageCenter/DelMessageCenterItem", true, pra2);
                     if (result == false)
                     {
                         return;
@@ -760,7 +924,6 @@
 
             //娓呯┖
             this.listOtherMsgId = new List<string>();
-            this.listOtherUserId = new List<string>();
             this.listHistoryInfo = null;
 
             HdlThreadLogic.Current.RunMain(() =>
@@ -802,34 +965,11 @@
             DateTime dateFrom = new DateTime(dateFromControl.Year, dateFromControl.Month, dateFromControl.Day, 0, 0, 0);
             DateTime dateTo = new DateTime(dateToControl.Year, dateToControl.Month, dateToControl.Day, 23, 59, 59);
 
-            List<string> listUser = null;
-            //鎸囧畾鐢ㄦ埛
-            if (listSearchUserId.Contains("-1") == false)
-            {
-                listUser = new List<string>();
-                listUser.AddRange(listSearchUserId);
-                //濡傛灉鎸囧畾鏈夊叾浠�
-                if (listSearchUserId.Contains("-9999") == true)
-                {
-                    listUser.AddRange(this.listOtherUserId);
-                }
-            }
-
-            //鍏ㄩ�夊垯涓簄ull
-            List<int> listLock = null;
-            if (listSearchLockId.Contains(-1) == false)
-            {
-                listLock = new List<int>();
-                listLock.AddRange(listSearchLockId);
-            }
-
             var pra = new DeleteHistoryDataPra();
             pra.UnlockTimeBegin = dateFrom.ToUniversalTime().ToString();
             pra.UnlockTimeEnd = dateTo.ToUniversalTime().ToString();
             pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
             pra.DoorLockId = this.DeviceDoor.DeviceAddr + "_" + this.DeviceDoor.DeviceEpoint;
-            pra.CloudAccountIds = listUser;
-            pra.OpenLockModes = listLock;
 
             return pra;
         }
@@ -945,7 +1085,7 @@
         private class HistoryInfo
         {
             /// <summary>
-            /// 寮�閿佹柟寮� 0:瀵嗙爜  15:鎸囩汗  3:IC鍗�  9000:甯稿紑妯″紡(鑷畾涔夌殑)
+            /// 寮�閿佹柟寮� 0:瀵嗙爜 13:闈欒剦绾� 14:浜鸿劯璇嗗埆 15:鎸囩汗  3:IC鍗�  9000:甯稿紑妯″紡(鑷畾涔夌殑)
             /// </summary>
             public int OpenLockMode = -1;
             /// <summary>
@@ -961,7 +1101,7 @@
             /// </summary>
             public string CloudAccountId = string.Empty;
             /// <summary>
-            /// 鍏朵粬寮�閿佹柟寮�(OpenLockMode=9000鏃舵湁鏁�) 9001:甯稿紑鎵撳紑 9002:甯稿紑鍙栨秷 9003:甯稿紑鎸佺画 
+            /// 鍏朵粬寮�閿佹柟寮�(OpenLockMode=9000鏃舵湁鏁�) 9001:甯稿紑鎵撳紑 9002:甯稿紑鍙栨秷 9003:甯稿紑鎸佺画 9004:甯稿紑鑷姩鍖栨墜鍔ㄥ彇娑�
             /// </summary>
             public int? OtherOpenLockMode = -1;
             /// <summary>
@@ -986,6 +1126,25 @@
             public string MsgKeyId = string.Empty;
         }
 
+        /// <summary>
+        /// 涓存椂瀵嗙爜鏁版嵁
+        /// </summary>
+        private class PasswordOperationData
+        {
+            /// <summary>
+            /// 0:瀵嗙爜 15:鎸囩汗 3:IC鍗�
+            /// </summary>
+            public int OperationEventSoure = -1;
+            /// <summary>
+            /// 2:寮�閿佹垚鍔�
+            /// </summary>
+            public int OperationEventCode = -1;
+            /// <summary>
+            /// 246浠h〃涓存椂瀵嗙爜
+            /// </summary>
+            public int UserID = -1;
+        }
+
         #endregion
     }
 }

--
Gitblit v1.8.0