From 48ba446936b51fffafa7c3600c0dadc6ac0e8c20 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 10 七月 2020 10:52:13 +0800
Subject: [PATCH] 2020-07-10-01

---
 ZigbeeApp/Shared/Phone/Device/Logic/Send.cs |   66 +++++++++++++++++++++++++++++---
 1 files changed, 59 insertions(+), 7 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/Send.cs b/ZigbeeApp/Shared/Phone/Device/Logic/Send.cs
index cc681d2..35b7328 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/Send.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/Send.cs
@@ -22,6 +22,7 @@
             return await System.Threading.Tasks.Task.Run(async () =>
             {
                 List<int> logicIdList = new List<int>();
+                
                 Action<string, string> action = (topic, data) =>
                 {
                     var gatewayID = topic.Split('/')[0];
@@ -30,7 +31,7 @@
                     {
                         return;
                     }
-
+                    
                     if (topic == $"{gatewayID}/Logic/GetLogicList_Respon")
                     {
 
@@ -43,6 +44,7 @@
                         {
                             var logicId = int.Parse(listIfon["LogicId"].ToString());
                             logicIdList.Add(logicId);
+                           
                         }
 
                     }
@@ -180,7 +182,7 @@
             });
         }
         ///<summary>
-        /// 鍒犻櫎閫昏緫
+        /// 鍒犻櫎閫昏緫(0鎴愬姛,鍏跺畠鍊�:澶辫触)
         /// </summary>
         public static async System.Threading.Tasks.Task<int> DelLogic(int LogicId)
         {
@@ -297,6 +299,7 @@
                                     ["RemindTime"] = int.Parse(dictionary["RemindTime"]),
                                     ["EnDelay"] = int.Parse(dictionary["EnDelay"]),
                                     ["DelayTime"] = int.Parse(dictionary["DelayTime"]),
+                                    ["DoorLockOpenDelayTime"] = int.Parse(dictionary["DoorLockOpenDelayTime"]),
                                 };
                                 if (dictionary["DateType"].ToString() == "0")
                                 {
@@ -498,6 +501,15 @@
                                             ["AccountName"] = dictionary["AccountName"],
 
                                         };
+
+                                        if (dictionary.ContainsKey("Option4"))
+                                        {
+                                            accounts1.Add("Option4",dictionary["Option4"]);
+                                        }
+                                        if (dictionary.ContainsKey("Option2"))
+                                        {
+                                            accounts1.Add("Option2", int.Parse(dictionary["Option2"]));
+                                        }
                                         accounts.Add(accounts1);
                                     }
                                 }
@@ -514,6 +526,24 @@
 
                                     };
                                     accounts.Add(location);
+                                }
+                                break;
+                            case 8:
+                                {
+                                    var accounts1 = new JObject();
+                                    if (dictionary.ContainsKey("Type"))
+                                    {
+                                        accounts1.Add("Type", int.Parse(dictionary["Type"]));
+                                    }
+                                    if (dictionary.ContainsKey("Option4"))
+                                    {
+                                        accounts1.Add("Option4", dictionary["Option4"]);
+                                    }
+                                    if (dictionary.ContainsKey("Option2"))
+                                    {
+                                        accounts1.Add("Option2", int.Parse(dictionary["Option2"]));
+                                    }
+                                    accounts.Add(accounts1);
                                 }
                                 break;
                         }
@@ -714,7 +744,7 @@
                 }
                 catch { }
                 var dateTime = DateTime.Now;
-                while ((DateTime.Now - dateTime).TotalMilliseconds < 8 * 1000)
+                while ((DateTime.Now - dateTime).TotalMilliseconds < 5* 1000)
                 {
                     await System.Threading.Tasks.Task.Delay(100);
                     if (sum == listLogic.Count)
@@ -843,8 +873,18 @@
                     //鏈嶅姟杩斿洖鏉ユ病鏈夐棬閿佹垚鍛樹俊鎭紝娌℃湁蹇呰鍐嶅幓璇锋眰鎴愬憳鍒楄〃锛�
                     //鍘熷洜锛氳妭绾︽椂闂达紝浣撻獙鏁堟灉濂斤紱
                     result = await UserCenter.UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra);
+                }
+                if (string.IsNullOrEmpty(result))
+                {
+                    //闃叉涓虹┖鎶涘紓甯革紱
+                    return userlist;
                 }
-                var listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<UserCenter.MemberInfoRes>>(result);
+                var listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<UserCenter.MemberInfoRes>>(result);
+                if (listInfo == null)
+                {
+                    //闃叉涓虹┖鎶涘紓甯革紱
+                    return userlist;
+                }
                 for (int i = 0; i < listInfo.Count; i++)
                 {
 
@@ -1112,6 +1152,14 @@
         /// <param name="logic">閫昏緫瀵硅薄</param>
         public static void Zj(bool tag, Common.Logic logic)
         {
+
+            if (string.IsNullOrEmpty(logic.LogicCustomPushText))
+            {
+                ///榛樿鎺ㄩ�佽嚜瀹氫箟鍐呭
+                string str = logic.LogicName + Language.StringByID(R.MyInternationalizationString.defaulttext);
+                logic.LogicCustomPushText = str;
+            }
+
             new System.Threading.Thread(() =>
             {
                 if (logic.LogicId != 0)
@@ -1188,12 +1236,16 @@
         /// <param name="method">璇锋眰鏂瑰紡涓篜OST/GET</param>
         /// <param name="second">瓒呮椂鏃堕棿</param>
         /// <returns></returns>
-        public static async System.Threading.Tasks.Task<string> HttpWebRequest(string getUrl, string str, string method, int second = 3)
+        public static async System.Threading.Tasks.Task<string> HttpWebRequest(string getUrl, string str, string method, int second = 3, bool _bool = false)
         {
             HttpWebRequest request = WebRequest.Create(getUrl) as HttpWebRequest; //鍒涘缓璇锋眰
             request.Method = method; //璇锋眰鏂瑰紡涓篜OST/GET
-            request.ContentType = "application/json";
+            request.ContentType = "application/json"; 
             request.Timeout = second * 1000;//瓒呮椂鏃堕棿
+            if (_bool) {
+                //鐢ㄤ簬楂樿儨鍙瀵硅鎺ュ彛
+                request.Headers.Add("Authorization", Config.Instance.Token);
+            }
             if (method == "POST")
             {
                 byte[] jsonbyte = System.Text.Encoding.UTF8.GetBytes(str);
@@ -1312,6 +1364,6 @@
             deviceConditionsInfo.Add(Key, Value);
         }
 
-
+      
     }
 }

--
Gitblit v1.8.0