From cbc156bc38d8b8eae7aef60cb186ab2b52fa701f Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期二, 16 七月 2024 13:59:56 +0800 Subject: [PATCH] 增加全部挂断 --- HDL_ON/UI/UI2/FuntionControlView/Aks/SendMethod.cs | 118 ++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 96 insertions(+), 22 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/SendMethod.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/SendMethod.cs index cc599f9..0b0e43a 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/SendMethod.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/SendMethod.cs @@ -7,6 +7,7 @@ using HDL_ON.Entity; using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity; using Newtonsoft.Json.Linq; +using RestSharp; namespace HDL_ON.UI.UI2.FuntionControlView.Aks { @@ -34,7 +35,7 @@ } } - + public const int pageSize=20; #region ------鏃跺簭鍣�------- /// <summary> @@ -95,7 +96,7 @@ /// <param name="deviceId">璁惧id</param> /// <param name="tipType">鏄惁闇�瑕佹彁绀�,榛樿鎻愮ず</param> /// <returns>杩斿洖缁撴灉涓嶄細涓簄ull</returns> - public List<RemoteControlEntity> GetRemoteControlLits(string deviceId,TipType tipType = TipType.flicker) + public List<RemoteControlEntity> GetRemoteControlLits(string deviceId, TipType tipType = TipType.flicker) { Dictionary<string, object> d = new Dictionary<string, object>(); d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id); @@ -105,12 +106,21 @@ { return new List<RemoteControlEntity>(); } - var RemoteControlEntityList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<RemoteControlEntity>>(responsePackNew.Data.ToString()); - if (RemoteControlEntityList == null) - { + var list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<RemoteControlEntity>>(responsePackNew.Data.ToString()); + if (list == null) + { return new List<RemoteControlEntity>(); } - return RemoteControlEntityList; + if (list.Count > 0) + { + for (int i = 0; i < list.Count; i++) + { + var remoteControl = list[i]; + remoteControl.deviceId = deviceId; + } + } + + return list; } /// <summary> @@ -119,16 +129,23 @@ /// <param name="deviceId">璁惧id</param> /// <param name="rcId">閬ユ帶鍣╥d</param> /// <param name="keypad"><鎸夐敭鏍囪瘑/param> + /// <param name="keyName"><鎸夐敭鍚嶇О(鎵撳嵃鐢ㄧ殑)/param> + /// <param name="isSupport"><鏄惁鏀寔鎺у埗/param> /// <param name="tipType">鏄惁闇�瑕佹彁绀�,榛樿鎻愮ず</param> - public bool KeypadExecute(string deviceId, string rcId, string keypad, TipType tipType = TipType.flicker) + public bool KeypadExecute(string deviceId, string rcId, string keypad, string keyName, bool isSupport, TipType tipType = TipType.flicker) { + + //if (!isSupport) { + // CommonMethod.Current.ShowTip("鎸夐敭涓嶆敮鎸�.", 3); + // return false; + //} Dictionary<string, object> d = new Dictionary<string, object>(); d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id); d.Add("deviceId", deviceId);//璁惧id d.Add("rcId", rcId);//閬ユ帶鍣╥d d.Add("keypad", keypad);//鎸夐敭鏍囪瘑 //d.Add("zoneType", deviceId);//鍖哄煙 - var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(d,NewAPI.Api_Post_Aks_KeypadExecute, "閬ユ帶鍣ㄦ寜閿墽琛�"); + var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(d,NewAPI.Api_Post_Aks_KeypadExecute, $"閬ユ帶鍣ㄣ�恵keyName}銆戞寜閿墽琛�"); if (!this.DataChecking(responsePackNew, tipType)) { return false; @@ -161,7 +178,18 @@ if (list == null) { return new List<FilterCategoryEntity>(); - } + } + if (list.Count > 0) + { + for (int i = 0; i < list.Count; i++) + { + var filterCategory = list[i]; + foreach (var o in filterCategory.filters) + { + o.category = filterCategory.category; + } + } + } return list; } @@ -174,27 +202,32 @@ /// <param name="pageNo">褰撳墠椤�</param> /// <param name="pageSize">椤垫暟</param> /// <param name="tipType">鏄惁闇�瑕佹彁绀�,榛樿鎻愮ず</param> - public List<MovieLibrary> GetMovieLibraryPage(string deviceId, string rcId, List<FilterCategorys> filterCategorys, int pageNo, int pageSize, TipType tipType = TipType.flicker) + /// <returns>杩斿洖缁撴灉涓嶄細涓簄ull</returns> + public List<MovieLibrary> GetMovieLibraryPage(string deviceId, string rcId, List<Filters> filterCategorys, int pageNo, int pageSize, TipType tipType = TipType.flicker) { JObject jObject = new JObject(); - JArray jArray = new JArray(); + jObject.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id); jObject.Add("deviceId", deviceId);//璁惧id jObject.Add("rcId", rcId);//閬ユ帶鍣╥d - - foreach (var filter in filterCategorys) + if (filterCategorys != null && filterCategorys.Count != 0) { - JObject obj = new JObject(); - obj.Add("category", filter.category); - obj.Add("filterValue", filter.filterValue); - jArray.Add(obj); + //杩囨护鍒嗙被鏁版嵁 + JArray jArray = new JArray(); + foreach (var filter in filterCategorys) + { + JObject obj = new JObject(); + obj.Add("category", filter.category); + obj.Add("filterValue", filter.filterValue); + jArray.Add(obj); + } + jObject.Add("filterCategorys", jArray);//鎸夐敭鏍囪瘑 } - jObject.Add("filterCategorys", jArray);//鎸夐敭鏍囪瘑 jObject.Add("pageNo", pageNo);//褰撳墠椤� jObject.Add("pageSize", pageSize);//椤垫暟 //d.Add("zoneType", deviceId);//鍖哄煙 - var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject.ToString(), NewAPI.Api_Post_Aks_MovieLibraryPage, "褰辩墖鍒嗛〉鑾峰彇"); + var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject, NewAPI.Api_Post_Aks_MovieLibraryPage, "褰辩墖鍒嗛〉鑾峰彇"); if (!this.DataChecking(responsePackNew, tipType)) { return new List<MovieLibrary>(); @@ -216,6 +249,7 @@ /// <param name="rcId">閬ユ帶鍣╥d</param> /// <param name="movieId">褰辩墖id</param> /// <param name="tipType">鏄惁闇�瑕佹彁绀�,榛樿鎻愮ず</param> + /// <returns>杩斿洖缁撴灉涓嶄細涓簄ull</returns> public MovieLibraryInfoEntity GetMovieLibraryInfo(string deviceId, string rcId, string movieId, TipType tipType = TipType.flicker) { @@ -226,7 +260,7 @@ jObject.Add("movieId", movieId);//褰辩墖id //d.Add("zoneType", deviceId);//鍖哄煙 - var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject.ToString(), NewAPI.Api_Post_Aks_MovieLibraryInfo, "褰辩墖璇︽儏鑾峰彇"); + var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject, NewAPI.Api_Post_Aks_MovieLibraryInfo, "褰辩墖璇︽儏鑾峰彇"); if (!this.DataChecking(responsePackNew, tipType)) { return new MovieLibraryInfoEntity(); @@ -236,6 +270,8 @@ { return new MovieLibraryInfoEntity(); } + movieLibraryEntity.rcId = rcId; + movieLibraryEntity.deviceId = deviceId; return movieLibraryEntity; } @@ -260,7 +296,7 @@ jObject.Add("collect", collect);//褰辩墖id //d.Add("zoneType", deviceId);//鍖哄煙 - var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject.ToString(), NewAPI.Api_Post_Aks_MovieLibraryCollect, "褰辩墖鏀惰棌"); + var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject, NewAPI.Api_Post_Aks_MovieLibraryCollect, "褰辩墖鏀惰棌"); if (!this.DataChecking(responsePackNew, tipType)) { return false; @@ -290,7 +326,7 @@ jObject.Add("pageNo", pageNo);//褰撳墠椤� jObject.Add("pageSize", pageSize);//椤垫暟 //d.Add("zoneType", deviceId);//鍖哄煙 - var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject.ToString(), NewAPI.Api_Post_Aks_Controlist, "鏀惰棌褰辩墖鍒嗛〉鑾峰彇"); + var responsePackNew = UI.Music.SendMethod.Current.RequestServerhomeId(jObject, NewAPI.Api_Post_Aks_MovieLibraryCollectPage, "鏀惰棌褰辩墖鍒嗛〉鑾峰彇"); if (!this.DataChecking(responsePackNew, tipType)) { return new List<MovieLibrary>(); @@ -328,7 +364,44 @@ return true; } + /// <summary> + /// 鑾峰彇褰辩墖鍥剧墖 + /// </summary> + /// <param name="imageUrl">鍥剧墖鍦板潃</param> + public byte[] GetImage(string imageUrl, int mTimeout = 3) + { + return RequestHttpsBase(imageUrl, mTimeout); + } + #endregion + + + /// <summary> + /// 缃戠粶璇锋眰 + /// </summary> + /// <param name="mTimeout"></param> + /// <returns></returns> + private byte[] RequestHttpsBase(string imageUrl, int mTimeout = 3) + { + + try + { + Log($"{DateTime.Now}->鍙戦��->鑾峰彇褰辩墖璧勬簮", imageUrl, ""); + RestClient client = new RestClient(imageUrl); + RestRequest request = new RestRequest(Method.GET); + request.Timeout = mTimeout * 1000; + //request.AddHeader("content-type", "application/json"); + IRestResponse response = client.Execute(request); + return response.RawBytes; + + } + catch (Exception ex) + { + return null; + } + + + } /// <summary> ///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛� @@ -347,6 +420,7 @@ } + /// <summary> /// <summary> /// 妫�楠屾暟鎹洖澶嶆垚鍔熸垨鑰呭け璐� -- Gitblit v1.8.0