From f9181a9c8125136f597add7c30cb2ff508d54ba7 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 25 七月 2024 17:34:32 +0800 Subject: [PATCH] 2024年07月25日17:33:40 --- HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs | 101 +++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 91 insertions(+), 10 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs index fbf8818..8bf6a94 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs @@ -23,6 +23,7 @@ } } public List<Face> faceList = new List<Face>(); + public List<Face> VideoDoorLockUserListInfo = new List<Face>(); /// <summary> /// 璋冪敤鑾峰彇浣忓畢瀛愯处鍙峰垪琛� /// </summary> @@ -46,7 +47,7 @@ /// 鑾峰彇閫昏緫ID鍒楄〃 /// </summary> /// <returns></returns> - public ResponsePackNew GetLogicIdList(bool isTip = false) + public List<LogicIdData> GetLogicIdList(bool isTip = false) { var jObject = new JObject { { "homeId", LogicMethod.Current.HomeId } }; var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_List, "鑾峰彇閫昏緫ID鍒楄〃"); @@ -60,14 +61,22 @@ { return null; } - return responsePackNew; + List<LogicIdData> dateList = new List<LogicIdData>(); + try + { + dateList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<LogicIdData>>(responsePackNew.Data.ToString()); + }catch (Exception ex) + { + MainPage.Log($"鑾峰彇閫昏緫ID鍒楄〃寮傚父锛歿ex.Message}"); + } + return dateList; } /// <summary> /// 鑾峰彇鑷姩鍖栬鎯� /// </summary> /// <param name="listIdList">鑷姩鍖朓D鍒楄〃</param> /// <returns></returns> - public ResponsePackNew GetLogic(List<string> listIdList, bool isTip = false) + public ResponsePackNew GetLogic1(List<string> listIdList, bool isTip = false) { var jArray = new JArray { }; for (int i = 0; i < listIdList.Count; i++) @@ -88,6 +97,35 @@ } return responsePackNew; } + + /// <summary> + /// 鑾峰彇鑷姩鍖栬鎯� + /// </summary> + /// <param name="listIdList">鑷姩鍖朓D鍒楄〃</param> + /// <returns></returns> + public List<Logic> GetLogic(List<string> listIdList, bool isTip = false) + { + var jArray = new JArray { }; + for (int i = 0; i < listIdList.Count; i++) + { + jArray.Add(listIdList[i]); + } + var jObject = new JObject { { "userLogicIds", jArray } }; + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Info, "鑾峰彇鑷姩鍖栬鎯�"); + //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken + if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) + { + RefreshToken(); + GetLogic(listIdList, isTip); + } + if (Check(responsePackNew, isTip) == false) + { + return null; + } + var logicList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Logic>>(responsePackNew.Data.ToString()); + return logicList; + } + /// <summary> /// 娣诲姞鑷姩鍖栧懡浠� /// </summary> @@ -113,6 +151,14 @@ { var inputTypeJOb = new JObject { }; inputTypeJOb.Add("sid", dictionary.sid); + if (!string.IsNullOrEmpty(dictionary.hold_time)) + { + inputTypeJOb.Add("hold_time", dictionary.hold_time); + } + if (!string.IsNullOrEmpty(dictionary.detect_type)) + { + inputTypeJOb.Add("detect_type", dictionary.detect_type); + } inputTypeJOb.Add("condition_type", dictionary.condition_type); if (dictionary.condition_type=="9") { inputTypeJOb.Add("identifier", dictionary.identifier); @@ -240,6 +286,14 @@ { var inputTypeJOb = new JObject { }; inputTypeJOb.Add("sid", dictionary.sid); + if (!string.IsNullOrEmpty(dictionary.hold_time)) + { + inputTypeJOb.Add("hold_time", dictionary.hold_time); + } + if (!string.IsNullOrEmpty(dictionary.detect_type)) + { + inputTypeJOb.Add("detect_type", dictionary.detect_type); + } inputTypeJOb.Add("condition_type", dictionary.condition_type); if (dictionary.condition_type == "9") { @@ -494,6 +548,30 @@ } + /// <summary> + /// 鑾峰彇闂ㄩ攣鐢ㄦ埛鍒楄〃(钀ょ煶瑙嗛闂ㄩ攣) + /// </summary> + /// <param name="deviceId">璁惧</param> + /// <returns></returns> + public List<Face> GetVideoDoorLockUserListInfo(Function device) + { + var userList = FuntionControlView.VideoDoorLock.VideDoorLockSend.Current.GetVideoDoorLockUserListInfo(device); + List<Face> faceIdList = new List<Face>(); + for (int i = 0; i < userList.Count; i++) + { + Face face = new Face(); + var user = userList[i]; + face.userId = user.extUserId; + face.userName = user.extUserName; + faceIdList.Add(face); + } + VideoDoorLockUserListInfo.Clear(); + VideoDoorLockUserListInfo.AddRange(faceIdList); + return faceIdList; + } + + + /// <summary> ///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛� /// </summary> @@ -501,7 +579,7 @@ /// <param name="api_Url">璇锋眰鍦板潃(涓嶆槸缁濆鍦板潃)</param> /// <param name="tag">鏍囪->鎻忚堪鎺ュ彛(鑷畾涔�)</param> /// <returns></returns> - public ResponsePackNew RequestServerhomeId(object o, string api_Url, string tag,int mTimeout = 3) + public ResponsePackNew RequestServerhomeId(object o, string api_Url, string tag,int mTimeout = 8) { Log($"{DateTime.Now}->鍙戦��->{tag}", api_Url,o.ToString()); var requestJson = HttpUtil.GetSignRequestJson(o); @@ -540,20 +618,23 @@ /// <returns></returns> public bool Check(ResponsePackNew r, bool isTip) { + if (r == null) + { + r = new ResponsePackNew { message = "娌″洖澶�,璇风‘璁ょ綉缁滄槸鍚︽甯�.", Code = "-1", }; + } if (r.Code == "0" && r.Data != null && r.Data.ToString() != "") { return true; } - if (r.Code != "0") + //澶辫触鏃舵槸鍚﹁鎻愮ず + if (isTip) { - //澶辫触鏃舵槸鍚﹁鎻愮ず - if (isTip) - { - new LogicView.TipPopView().FlashingBox(r.message + $"({r.Code})"); - } + new LogicView.TipPopView().FlashingBox(r.message + $"({r.Code})"); } return false; } + + /// <summary> /// 鎵撳嵃鏃ュ織 /// </summary> -- Gitblit v1.8.0