From e13a9980ce617db1394a76944186c5d5bd595d5d Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期三, 02 六月 2021 14:37:12 +0800
Subject: [PATCH] 5月需求bug修复

---
 HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs |   96 ++++++++++++++++++++++++++++++++++-------------
 1 files changed, 69 insertions(+), 27 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
index 494a69d..65ad0e0 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
@@ -4,35 +4,31 @@
 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(鑾峰彇鍢変箰缃戝叧ID)
+        /// 璋冪敤鑾峰彇浣忓畢瀛愯处鍙峰垪琛�
         /// </summary>
-        public static string GatewayId
+        public static List<ResidenceMemberInfo> GetResidenceMemberAccount()
         {
-            get
+
+            var responePack = new HttpServerRequest().GetResidenceMemberAccount();
+            if (responePack.Code == StateCode.SUCCESS)
             {
-                if (Entity.DB_ResidenceData.Instance.HomeGateway == null)
-                {
-                    return DriverLayer.Control.Ins.GatewayId;
-                }
-                return Entity.DB_ResidenceData.Instance.HomeGateway.gatewayId;
+                return Newtonsoft.Json.JsonConvert.DeserializeObject<List<ResidenceMemberInfo>>(responePack.Data.ToString());
             }
-        }
-         
-        /// <summary>
-        /// 浣忓畢ID
-        /// </summary>
-        public static string HomeId
-        {
-            get
+            //澶辫触
+            else
             {
-                return Entity.DB_ResidenceData.Instance.CurrentRegion.RegionID; 
+                //鎻愮ず
+                IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code);
             }
+            return new List<ResidenceMemberInfo>();
         }
 
         /// <summary>
@@ -41,7 +37,7 @@
         /// <returns></returns>
         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)
@@ -131,18 +127,43 @@
                     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 } };
+                var jObject = new JObject { { "homeId", LogicMethod.HomeId }, { "logics", logicjArray } };
                 responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Add);
                 //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken
                 if (responsePackNew.Code == StateCode.TOKEN_EXPIRED)
@@ -150,14 +171,12 @@
                     RefreshToken();
                     AddLogic(logic);
                 }
-
+                Console.WriteLine("娣诲姞閫昏緫===" + logicjArray);
             }
             catch (Exception e)
             {
                 var dd = e.Message;
             }
-
-
             return responsePackNew;
         }
         /// <summary>
@@ -218,19 +237,44 @@
                     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 } };
+                var jObject = new JObject { { "homeId", LogicMethod.HomeId }, { "logics", logicjArray } };
                 responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Update);
                 //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken
                 if (responsePackNew.Code == StateCode.TOKEN_EXPIRED)
@@ -243,8 +287,6 @@
             {
                 var dd = e.Message;
             }
-
-
             return responsePackNew;
         } 
         /// <summary>

--
Gitblit v1.8.0