From 22fcd0d263770c8371bd03ca53f097a6ec1678f7 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 24 十二月 2020 12:06:26 +0800
Subject: [PATCH] 20201224-2

---
 HDL_ON/Common/ApiUtlis.cs |   30 ++++++++++++++++++------------
 1 files changed, 18 insertions(+), 12 deletions(-)

diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs
index c023d17..8b144ce 100644
--- a/HDL_ON/Common/ApiUtlis.cs
+++ b/HDL_ON/Common/ApiUtlis.cs
@@ -217,8 +217,6 @@
                         if (sceneList == null)
                         {
                             sceneList = new List<Scene>();
-                        }
-                        {
                             for (int i = 0; i < FunctionList.List.scenes.Count;)
                             {
                                 var localScene = FunctionList.List.scenes[i];
@@ -256,20 +254,28 @@
                         //濡傛灉鏄竴绔彛闇�瑕佹彁鍓嶄笅杞藉満鏅暟鎹紝鍚﹀垯鎺у埗涓嶄簡涓�绔彛鍦烘櫙
                         if (DB_ResidenceData.Instance.GatewayType == 0)
                         {
+                            var sceneIds = new List<string>();
                             foreach (var tempScene in FunctionList.List.scenes)
                             {
-                                var pcak = HttpRequest.GetSceneInfo(tempScene.userSceneId);
-                                if (pack.Code == StateCode.SUCCESS)
+                                sceneIds.Add(tempScene.userSceneId);
+                            }
+                            var packInfo = HttpRequest.GetSceneListInfo(sceneIds);
+                            if (packInfo.Code == StateCode.SUCCESS)
+                            {
+                                var serverTempList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(packInfo.Data.ToString());
+                                foreach (var localScene in FunctionList.List.scenes)
                                 {
-                                    var serverTempList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(pack.Data.ToString());
-                                    var serverTemp = serverTempList.Find((obj) => obj.userSceneId == tempScene.userSceneId);
-                                    tempScene.functions = serverTemp.functions;
-                                    tempScene.SaveSceneFile();
+                                    var serverTemp = serverTempList.Find((obj) => obj.userSceneId == localScene.userSceneId);
+                                    if (serverTemp != null)
+                                    {
+                                        localScene.functions = serverTemp.functions;
+                                        localScene.SaveSceneFile();
+                                    }
                                 }
-                                else
-                                {
-                                    IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
-                                }
+                            }
+                            else
+                            {
+                                IMessageCommon.Current.ShowErrorInfoAlter(packInfo.Code);
                             }
                         }
                         endTime = DateTime.Now.AddSeconds(5);

--
Gitblit v1.8.0