From cda2410f9c29f2fadc16e9de38ccae95b75a89dd Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期三, 09 六月 2021 10:51:13 +0800 Subject: [PATCH] 1 --- HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs | 142 +++++++++++++++++++++++++++++------------------ 1 files changed, 87 insertions(+), 55 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs index 998734e..acc205b 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs @@ -4,56 +4,46 @@ using HDL_ON.DAL.Server; using Newtonsoft.Json.Linq; using System.Collections.Generic; +using HDL_ON.Entity; namespace HDL_ON.UI.UI2.Intelligence.Automation { public class Send { - ///// <summary> - ///// 浣忓畢ID - ///// </summary> - //public static string homeId = Entity.DB_ResidenceData.residenceData.CurReginID; - ///// <summary> - ///// 缃戝叧ID锛堢妗℃湁缃戝叧ID鍗磋繑鍥炴槸MAC锛� - ///// </summary> - //public static string gatewayId = DriverLayer.Control.Ins.GatewayId; - - //public static string homeId = UserInfo.Current.CurReginID; /// <summary> - /// 缃戝叧ID(鑾峰彇鍢変箰缃戝叧ID) + /// 璋冪敤鑾峰彇浣忓畢瀛愯处鍙峰垪琛� /// </summary> - public static string gatewayId + public static List<ResidenceMemberInfo> GetResidenceMemberAccount() { - get - { - if (Entity.DB_ResidenceData.Instance.HomeGateway == null) - { - return DriverLayer.Control.Ins.GatewayId; - } - return Entity.DB_ResidenceData.Instance.HomeGateway.gatewayId; - } - } - - /// <summary> - /// 浣忓畢ID - /// </summary> - public static string homeId = Entity.DB_ResidenceData.Instance.CurrentRegion.RegionID; + var responePack = new HttpServerRequest().GetResidenceMemberAccount(); + if (responePack.Code == StateCode.SUCCESS) + { + return Newtonsoft.Json.JsonConvert.DeserializeObject<List<ResidenceMemberInfo>>(responePack.Data.ToString()); + } + //澶辫触 + else + { + //鎻愮ず + IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code); + } + return new List<ResidenceMemberInfo>(); + } /// <summary> /// 鑾峰彇閫昏緫ID鍒楄〃 /// </summary> /// <returns></returns> - public static ResponsePackNew getLogicIdList() + public static ResponsePackNew GetLogicIdList() { - var jObject = new JObject { { "homeId", homeId } }; + var jObject = new JObject { { "homeId", LogicMethod.HomeId } }; var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_List); //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) { RefreshToken(); - getLogicIdList(); + GetLogicIdList(); } return responsePackNew; } @@ -62,7 +52,7 @@ /// </summary> /// <param name="listIdList">閫昏緫ID鍒楄〃</param> /// <returns></returns> - public static ResponsePackNew getLogic(List<string> listIdList) + public static ResponsePackNew GetLogic(List<string> listIdList) { var jArray = new JArray { }; for (int i = 0; i < listIdList.Count; i++) @@ -75,12 +65,12 @@ if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) { RefreshToken(); - getLogic(listIdList); + GetLogic(listIdList); } return responsePackNew; } /// <summary> - /// 娣诲姞鑷姩鍖栧懡浠� + /// 娣诲姞鑷姩鍖栧懡浠� /// </summary> /// <param name="logic"></param> /// <returns></returns> @@ -137,33 +127,55 @@ outputArray.Add(outputTypeJOb); } + + var noticeConfigJObject = new JObject(); + noticeConfigJObject.Add("enable", logic.noticeConfig.enable); + noticeConfigJObject.Add("noticeContent", logic.noticeConfig.noticeContent); + + var pushConfigsArray = new JArray { }; + if (logic.pushConfigs.Count > 0) + { //聽鎺ㄩ�佹枃鏈� + foreach (var pushConfig in logic.pushConfigs) + { + + var pushConfigJob = new JObject { }; + pushConfigJob.Add("pushMethod", pushConfig.pushMethod); + var accountArray = new JArray { }; + foreach (var account in pushConfig.pushTarget) + { + accountArray.Add(account); + } + pushConfigJob.Add("pushTarget", accountArray); + pushConfigsArray.Add(pushConfigJob); + } + } + var logicjArray = new JArray { }; var logicIfon = new JObject { }; logicIfon.Add("sid", logic.sid); - logicIfon.Add("gatewayId", gatewayId); + logicIfon.Add("gatewayId", LogicMethod.GatewayId); logicIfon.Add("name", logic.name); logicIfon.Add("relation", logic.relation); logicIfon.Add("enable", logic.enable); logicIfon.Add("cycle", cycleJObject); logicIfon.Add("input", inputArray); logicIfon.Add("output", outputArray); + logicIfon.Add("noticeConfig", noticeConfigJObject); + logicIfon.Add("pushConfigs", pushConfigsArray); logicjArray.Add(logicIfon); - var jObject = new JObject { { "homeId", homeId }, { "logics", logicjArray } }; - responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Add); + var jObject = new JObject { { "homeId", LogicMethod.HomeId }, { "logics", logicjArray } }; + responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Add,5); //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) { RefreshToken(); AddLogic(logic); } - } catch (Exception e) { var dd = e.Message; } - - return responsePackNew; } /// <summary> @@ -171,7 +183,7 @@ /// </summary> /// <param name="logic"></param> /// <returns></returns> - public static ResponsePackNew updateLogic(Logic logic) + public static ResponsePackNew UpdateLogic(Logic logic) { ResponsePackNew responsePackNew = null; try @@ -224,40 +236,63 @@ outputArray.Add(outputTypeJOb); } + var noticeConfigJObject = new JObject(); + noticeConfigJObject.Add("enable", logic.noticeConfig.enable); + noticeConfigJObject.Add("noticeContent", logic.noticeConfig.noticeContent); + + var pushConfigsArray = new JArray { }; + if (logic.pushConfigs.Count > 0) + { //聽鎺ㄩ�佹枃鏈� + foreach (var pushConfig in logic.pushConfigs) + { + + var pushConfigJob = new JObject { }; + pushConfigJob.Add("pushMethod", pushConfig.pushMethod); + var accountArray = new JArray { }; + foreach (var account in pushConfig.pushTarget) + { + accountArray.Add(account); + } + pushConfigJob.Add("pushTarget", accountArray); + pushConfigsArray.Add(pushConfigJob); + } + } + var logicjArray = new JArray { }; var logicIfon = new JObject { }; logicIfon.Add("userLogicId", logic.userLogicId); logicIfon.Add("sid", logic.sid); - logicIfon.Add("gatewayId", gatewayId); + logicIfon.Add("gatewayId", LogicMethod.GatewayId); logicIfon.Add("name", logic.name); logicIfon.Add("relation", logic.relation); logicIfon.Add("enable", logic.enable); logicIfon.Add("cycle", cycleJObject); logicIfon.Add("input", inputArray); logicIfon.Add("output", outputArray); + logicIfon.Add("noticeConfig", noticeConfigJObject); + logicIfon.Add("pushConfigs", pushConfigsArray); + logicjArray.Add(logicIfon); - var jObject = new JObject { { "homeId", homeId }, { "logics", logicjArray } }; - responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Update); + var jObject = new JObject { { "homeId", LogicMethod.HomeId }, { "logics", logicjArray } }; + responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Update,5); //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) { RefreshToken(); - updateLogic(logic); + UpdateLogic(logic); } } catch (Exception e) { var dd = e.Message; } - - return responsePackNew; - } + } /// <summary> /// 鍒犻櫎閫昏緫 /// </summary> /// <returns></returns> - public static ResponsePackNew delLogic(Logic logic) + public static ResponsePackNew DelLogic(Logic logic) { var jArray = new JArray { }; jArray.Add(logic.userLogicId); @@ -267,15 +302,15 @@ if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) { RefreshToken(); - delLogic(logic); + DelLogic(logic); } return responsePackNew; } - /// <summary> + /// <summary> /// 閫昏緫寮�鍏� /// </summary> /// <returns></returns> - public static ResponsePackNew switchLogic(Logic logic) + public static ResponsePackNew SwitchLogic(Logic logic) { var jArray = new JArray { }; var job = new JObject { { "userLogicId", logic.userLogicId } , { "enable", logic.enable } }; @@ -286,19 +321,16 @@ if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) { RefreshToken(); - switchLogic(logic); + SwitchLogic(logic); } return responsePackNew; } /// <summary> - ///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛� + ///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛� /// </summary> /// <returns></returns> public static ResponsePackNew RequestServerhomeId(object o, string api_Url, int mTimeout = 3) { - - - var requestJson = HttpUtil.GetSignRequestJson(o); return HttpUtil.RequestHttpsPostFroHome(api_Url, requestJson, mTimeout); -- Gitblit v1.8.0