From 463cf39019aa54e6c1226be4620766a035a0c490 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期二, 14 四月 2020 13:31:07 +0800 Subject: [PATCH] 上传个东西 --- ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs | 319 ++++++++++++++++++++++++++++------------------------ 1 files changed, 173 insertions(+), 146 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs index aeb1f8a..082f117 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DoorLock/DoorLockHistoryLogForm.cs @@ -335,9 +335,33 @@ this.listView.AddChidrenFrame2(frameTable); //鍥炬爣 var btnIcon = frameTable.AddLeftIcon(); + //淇℃伅 + var btnMsg = frameTable.AddTopView("", 600); + //浜虹墿 + string perName = dicName.ContainsKey(historyInfo.CloudAccountId) == true ? dicName[historyInfo.CloudAccountId] : Language.StringByID(R.MyInternationalizationString.uOther); + frameTable.AddBottomView(perName, 600); + //鏃堕棿 + if (this.dateFromControl.dateValue == this.dateToControl.dateValue) + { + //濡傛灉鏃ユ湡鑼冨洿涓�鏍�,鍒欎笉鏄剧ず骞存湀鏃� + frameTable.AddMostRightView(UserCenterLogic.ConvertUtcTimeToLocalTime(historyInfo.UnlockTime).ToString("HH:mm:ss"), 400); + } + else + { + //濡傛灉鏃ユ湡鑼冨洿涓嶄竴鏍�,鍒欐樉绀哄勾鏈堟棩 + frameTable.AddMostRightView(UserCenterLogic.ConvertUtcTimeToLocalTime(historyInfo.UnlockTime).ToString("yyyy/MM/dd HH:mm:ss"), 700); + } + //搴曠嚎 + if (addLine == true) + { + + frameTable.AddBottomLine(); + } + + //鍏朵粬娑堟伅 if (historyInfo.OpenLockMode == -1) { - //鍏朵粬娑堟伅 + //鍥剧墖 var device = Common.LocalDevice.Current.GetDevice(historyInfo.DeviceMac, historyInfo.DeviceEpoint); if (device == null) { @@ -347,29 +371,42 @@ { Common.LocalDevice.Current.SetDeviceIconToControl(btnIcon, device); } - } - else if (historyInfo.OpenLockMode == 9000) - { - btnIcon.UnSelectedImagePath = "Item/NormallyOpen.png"; - } - else if (historyInfo.UnlockIsSuccess == true) - { - btnIcon.UnSelectedImagePath = "Item/UnLockSuccess.png"; - } - else - { - btnIcon.UnSelectedImagePath = "Item/UnLockFail.png"; - } - - //淇℃伅 - var btnMsg = frameTable.AddTopView("", 600); - if (historyInfo.OpenLockMode == -1 || historyInfo.OpenLockMode == 9000) - { - //鍏朵粬娑堟伅 + //娑堟伅 btnMsg.Text = historyInfo.AlarmMsg; } + //闂ㄩ攣甯稿紑妯″紡 + else if (historyInfo.OpenLockMode == 9000) + { + //鍥剧墖 + btnIcon.UnSelectedImagePath = "Item/NormallyOpen.png"; + //娑堟伅 + if (historyInfo.OtherOpenLockMode == 9001) + { + //甯稿紑妯″紡鎵嬪姩寮�鍚� + btnMsg.TextID = R.MyInternationalizationString.uNormallyOpenModeManualOpen; + } + else if (historyInfo.OtherOpenLockMode == 9002) + { + //甯稿紑妯″紡鎵嬪姩鍙栨秷 + btnMsg.TextID = R.MyInternationalizationString.uNormallyOpenModeManualClose; + } + else if (historyInfo.OtherOpenLockMode == 9003) + { + //甯稿紑妯″紡鍚敤{0}灏忔椂 + btnMsg.Text = Language.StringByID(R.MyInternationalizationString.uNormallyOpenModeOpenSomeTime).Replace("{0}", historyInfo.NormallyOpenContinuedTime); + } + else + { + //涓婇潰鏄疉pp鎵嬪姩鎺ㄩ��,杩欓噷鏄綉鍏虫垨鑰呴棬閿佽嚜宸辨帹閫� + btnMsg.Text = historyInfo.AlarmMsg; + } + } + //寮�閿佹垚鍔� else if (historyInfo.UnlockIsSuccess == true) { + //鍥剧墖 + btnIcon.UnSelectedImagePath = "Item/UnLockSuccess.png"; + //娑堟伅 if (historyInfo.OpenLockMode == 0) { //瀵嗙爜寮�閿佹垚鍔� @@ -386,8 +423,12 @@ btnMsg.TextID = R.MyInternationalizationString.uUnlockByFingerPrintSuccess; } } + //寮�閿佸け璐� else { + //鍥剧墖 + btnIcon.UnSelectedImagePath = "Item/UnLockFail.png"; + //娑堟伅 if (historyInfo.OpenLockMode == 0) { //瀵嗙爜寮�閿佸け璐� @@ -403,28 +444,6 @@ //鎸囩汗寮�閿佸け璐� btnMsg.TextID = R.MyInternationalizationString.uUnlockByFingerPrintFail; } - } - - //浜虹墿 - string perName = dicName.ContainsKey(historyInfo.CloudAccountId) == true ? dicName[historyInfo.CloudAccountId] : Language.StringByID(R.MyInternationalizationString.uOther); - frameTable.AddBottomView(perName, 600); - - //鏃堕棿 - if (this.dateFromControl.dateValue == this.dateToControl.dateValue) - { - //濡傛灉鏃ユ湡鑼冨洿涓�鏍�,鍒欎笉鏄剧ず骞存湀鏃� - frameTable.AddMostRightView(UserCenterLogic.ConvertUtcTimeToLocalTime(historyInfo.UnlockTime).ToString("HH:mm:ss"), 400); - } - else - { - //濡傛灉鏃ユ湡鑼冨洿涓嶄竴鏍�,鍒欐樉绀哄勾鏈堟棩 - frameTable.AddMostRightView(UserCenterLogic.ConvertUtcTimeToLocalTime(historyInfo.UnlockTime).ToString("yyyy/MM/dd HH:mm:ss"), 700); - } - - if (addLine == true) - { - //搴曠嚎 - frameTable.AddBottomLine(); } } @@ -454,6 +473,110 @@ //鍒濆鍖栬褰曞垪琛� this.InitLogListInfo(false); }; + } + + #endregion + + #region 鈻� 绛涢�夎褰昣__________________________ + + /// <summary> + /// 绛涢�夊巻鍙茶褰� + /// </summary> + /// <returns></returns> + private List<HistoryInfo> ScreeningHistoryData(Dictionary<string, string> dicMemberName) + { + //鍘嗗彶璁板綍澶夯鐑︿簡,瀛樺湪涓嶅悓鐨勬暟鎹簱琛ㄩ噷,骞朵笖鏁版嵁杩樹笉涓�鏍�,鍙兘杩欐牱涓�涓釜鍒ゆ柇浜� + var listScreeningData = new List<HistoryInfo>(); + //娓呴櫎鎺変箣鍓嶇殑璁板綍 + this.listOtherUserId = new List<string>(); + this.listOtherMsgId = new List<string>(); + + //鏄惁閫夋嫨鍏ㄩ�夌敤鎴� + bool selectAllUser = this.listSearchUserId.Contains("-1"); + //鏄惁鍗曢�変簡鍏朵粬 + bool selectOtherUser = this.listSearchUserId.Contains("-9999"); + //鏄惁閫夋嫨鍏ㄩ�夊紑閿佹柟寮� + bool selectAllLockMode = this.listSearchLockId.Contains(-1); + + //涓�涓釜鍘婚亶鍘� + foreach (var data in this.listHistoryInfo) + { + //妫�娴嬭鍘嗗彶璁板綍鑳藉惁鏄剧ず + bool result = this.CheckHistoryDataCanShow(data, dicMemberName, selectAllUser, selectOtherUser, selectAllLockMode); + if (result == true) + { + listScreeningData.Add(data); + } + } + + return listScreeningData; + } + + /// <summary> + /// 妫�娴嬭鍘嗗彶璁板綍鑳藉惁鏄剧ず + /// </summary> + /// <param name="info">妫�娴嬪璞�</param> + /// <param name="dicMemberName">鎴愬憳淇℃伅</param> + /// <param name="selectAllUser">鏄惁閫夋嫨鍏ㄩ�夌敤鎴�</param> + /// <param name="selectOtherUser">鏄惁鍗曢�変簡鍏朵粬</param> + /// <param name="slectAllLockMode">鏄惁閫夋嫨鍏ㄩ�夊紑閿佹柟寮�</param> + private bool CheckHistoryDataCanShow(HistoryInfo info, Dictionary<string, string> dicMemberName, + bool selectAllUser, bool selectOtherUser, bool slectAllLockMode) + { + //濡傛灉娌℃湁閫夋嫨 鍏ㄩ�夌敤鎴� + if (selectAllUser == false) + { + //濡傛灉杩欎釜鐢ㄦ埛ID涓嶅寘鍚湪鎸囧畾閫夋嫨鐨勬垚鍛樺垪琛ㄩ噷闈� + if (this.listSearchUserId.Contains(info.CloudAccountId) == false) + { + if (dicMemberName.ContainsKey(info.CloudAccountId) == true) + { + //濡傛灉鑳藉璇嗗埆杩欎釜id鐨勮瘽,鍒欒〃绀哄畠涓嶅睘浜庡叾浠栫被,骞朵笖涔熶笉鍐嶉�夋嫨鐩爣鍐� + return false; + } + //濡傛灉娌℃湁閫夋嫨 鍏朵粬鐨勮瘽,涓嶆樉绀� + if (selectOtherUser == false) + { + return false; + } + } + } + //濡傛灉鏄垚鍛樿韩浠�,骞朵笖鐢ㄦ埛ID涓嶄负绌� + if (UserCenterResourse.UserInfo.AuthorityNo == 3 && info.CloudAccountId != string.Empty) + { + //鎴愬憳涓嶈兘鐪嬪埌 鍏朵粬浜虹殑璁板綍(鎴愬憳鐨勬椂鍊�,杩欎釜鍙橀噺閲岄潰鍙湁浠栬嚜宸变竴涓�) + if (dicMemberName.ContainsKey(info.CloudAccountId) == false) + { + return false; + } + } + //濡傛灉娌℃湁閫夋嫨 鍏ㄩ�夊紑閿佹柟寮� + if (slectAllLockMode == false) + { + //濡傛灉杩欎釜寮�閿佹柟寮忎笉鍦ㄩ�夋嫨鐨勫垪琛ㄩ噷闈㈢殑璇� + if (this.listSearchLockId.Contains(info.OpenLockMode) == false) + { + return false; + } + } + + //鍙︿竴寮犺〃鐨勬暟鎹富閿� + if (info.OpenLockMode == -1 || info.OpenLockMode == 9000) + { + if (info.MsgKeyId != string.Empty) + { + //鍏朵粬娑堟伅鐨勪富閿�,瀹冨瓨鍦ㄥ彟澶栫殑涓�寮犳暟鎹簱琛ㄤ腑 + 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 @@ -591,110 +714,6 @@ } return listLog; - } - - #endregion - - #region 鈻� 绛涢�夎褰昣__________________________ - - /// <summary> - /// 绛涢�夊巻鍙茶褰� - /// </summary> - /// <returns></returns> - private List<HistoryInfo> ScreeningHistoryData(Dictionary<string, string> dicMemberName) - { - //鍘嗗彶璁板綍澶夯鐑︿簡,瀛樺湪涓嶅悓鐨勬暟鎹簱琛ㄩ噷,骞朵笖鏁版嵁杩樹笉涓�鏍�,鍙兘杩欐牱涓�涓釜鍒ゆ柇浜� - var listScreeningData = new List<HistoryInfo>(); - //娓呴櫎鎺変箣鍓嶇殑璁板綍 - this.listOtherUserId = new List<string>(); - this.listOtherMsgId = new List<string>(); - - //鏄惁閫夋嫨鍏ㄩ�夌敤鎴� - bool selectAllUser = this.listSearchUserId.Contains("-1"); - //鏄惁鍗曢�変簡鍏朵粬 - bool selectOtherUser = this.listSearchUserId.Contains("-9999"); - //鏄惁閫夋嫨鍏ㄩ�夊紑閿佹柟寮� - bool selectAllLockMode = this.listSearchLockId.Contains(-1); - - //涓�涓釜鍘婚亶鍘� - foreach (var data in this.listHistoryInfo) - { - //妫�娴嬭鍘嗗彶璁板綍鑳藉惁鏄剧ず - bool result = this.CheckHistoryDataCanShow(data, dicMemberName, selectAllUser, selectOtherUser, selectAllLockMode); - if (result == true) - { - listScreeningData.Add(data); - } - } - - return listScreeningData; - } - - /// <summary> - /// 妫�娴嬭鍘嗗彶璁板綍鑳藉惁鏄剧ず - /// </summary> - /// <param name="info">妫�娴嬪璞�</param> - /// <param name="dicMemberName">鎴愬憳淇℃伅</param> - /// <param name="selectAllUser">鏄惁閫夋嫨鍏ㄩ�夌敤鎴�</param> - /// <param name="selectOtherUser">鏄惁鍗曢�変簡鍏朵粬</param> - /// <param name="slectAllLockMode">鏄惁閫夋嫨鍏ㄩ�夊紑閿佹柟寮�</param> - private bool CheckHistoryDataCanShow(HistoryInfo info, Dictionary<string, string> dicMemberName, - bool selectAllUser, bool selectOtherUser, bool slectAllLockMode) - { - //濡傛灉娌℃湁閫夋嫨 鍏ㄩ�夌敤鎴� - if (selectAllUser == false) - { - //濡傛灉杩欎釜鐢ㄦ埛ID涓嶅寘鍚湪鎸囧畾閫夋嫨鐨勬垚鍛樺垪琛ㄩ噷闈� - if (this.listSearchUserId.Contains(info.CloudAccountId) == false) - { - if (dicMemberName.ContainsKey(info.CloudAccountId) == true) - { - //濡傛灉鑳藉璇嗗埆杩欎釜id鐨勮瘽,鍒欒〃绀哄畠涓嶅睘浜庡叾浠栫被,骞朵笖涔熶笉鍐嶉�夋嫨鐩爣鍐� - return false; - } - //濡傛灉娌℃湁閫夋嫨 鍏朵粬鐨勮瘽,涓嶆樉绀� - if (selectOtherUser == false) - { - return false; - } - } - } - //濡傛灉鏄垚鍛樿韩浠�,骞朵笖鐢ㄦ埛ID涓嶄负绌� - if (UserCenterResourse.UserInfo.AuthorityNo == 3 && info.CloudAccountId != string.Empty) - { - //鎴愬憳涓嶈兘鐪嬪埌 鍏朵粬浜虹殑璁板綍(鎴愬憳鐨勬椂鍊�,杩欎釜鍙橀噺閲岄潰鍙湁浠栬嚜宸变竴涓�) - if (dicMemberName.ContainsKey(info.CloudAccountId) == false) - { - return false; - } - } - //濡傛灉娌℃湁閫夋嫨 鍏ㄩ�夊紑閿佹柟寮� - if (slectAllLockMode == false) - { - //濡傛灉杩欎釜寮�閿佹柟寮忎笉鍦ㄩ�夋嫨鐨勫垪琛ㄩ噷闈㈢殑璇� - if (this.listSearchLockId.Contains(info.OpenLockMode) == false) - { - return false; - } - } - - //鍙︿竴寮犺〃鐨勬暟鎹富閿� - if (info.OpenLockMode == -1 || info.OpenLockMode == 9000) - { - if (info.MsgKeyId != string.Empty) - { - //鍏朵粬娑堟伅鐨勪富閿�,瀹冨瓨鍦ㄥ彟澶栫殑涓�寮犳暟鎹簱琛ㄤ腑 - 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 @@ -942,6 +961,14 @@ /// </summary> public string CloudAccountId = string.Empty; /// <summary> + /// 鍏朵粬寮�閿佹柟寮�(OpenLockMode=9000鏃舵湁鏁�) 9001:甯稿紑鎵撳紑 9002:甯稿紑鍙栨秷 9003:甯稿紑鎸佺画 + /// </summary> + public int OtherOpenLockMode = -1; + /// <summary> + /// 甯稿紑鎸佺画鏃堕棿(1~72灏忔椂 OtherOpenLockMode=9003鐨勬椂鍊欐湁鏁�) + /// </summary> + public string NormallyOpenContinuedTime = string.Empty; + /// <summary> /// 褰撳紑閿佹柟寮忎负-1鏃朵娇鐢�,瀹冨睘浜庡叾浠栫被 /// </summary> public string AlarmMsg = string.Empty; -- Gitblit v1.8.0