From 680d96f157e4609af3e7af6f8d01ee0bf3f55063 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 11 十二月 2020 21:11:04 +0800
Subject: [PATCH] 20201210

---
 HDL_ON/Entity/FunctionList.cs |   22 +++++++++++++++++++++-
 1 files changed, 21 insertions(+), 1 deletions(-)

diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs
index 751fa49..23f7b2e 100644
--- a/HDL_ON/Entity/FunctionList.cs
+++ b/HDL_ON/Entity/FunctionList.cs
@@ -97,7 +97,7 @@
         /// <summary>
         /// 鍔熻兘鍒楄〃
         /// </summary>
-        List<Function> deviceFunctionList;
+        List<Function> deviceFunctionList = new List<Function>();
 
 
         /// <summary>
@@ -131,19 +131,23 @@
                         case SPK.LightRGBW:
                         case SPK.LightCCT:
                             _FunctionList.lights.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Light>(functionDataString));
                             break;
                         case SPK.CurtainRoller:
                         case SPK.CurtainShades:
                         case SPK.CurtainSwitch:
                         case SPK.CurtainTrietex:
                             _FunctionList.curtains.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Curtain>(functionDataString));
                             break;
                         case SPK.AcStandard:
                             _FunctionList.aCs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<AC>(functionDataString));
                             break;
                         case SPK.FloorHeatStandard:
                             //鎭㈠鍦扮儹鏁版嵁
                             _FunctionList.floorHeatings.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<FloorHeating>(functionDataString));
                             break;
                         case SPK.SensorPm25:
                         case SPK.SensorCO2:
@@ -152,18 +156,22 @@
                         case SPK.SensorHumidity:
                             //鎭㈠鐜鏁版嵁
                             _FunctionList.sensorsEnvironmentalScience.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Sensor>(functionDataString));
                             break;
                         case SPK.ElectricSocket:
                             //鎭㈠鎻掑骇鏁版嵁
                             _FunctionList.switchSockets.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<SwitchSocket>(functionDataString));
                             break;
                         case SPK.ElectricTV:
                             //鎭㈠鐢佃鏁版嵁
                             _FunctionList.tVs.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<TV>(functionDataString));
                             break;
                         case SPK.ElectricFan:
                             //鎭㈠椋庢墖鏁版嵁
                             _FunctionList.fans.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(functionDataString));
+                            deviceFunctionList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Fan>(functionDataString));
                             break;
                     }
                 }
@@ -187,6 +195,8 @@
             fs.AddRange(GetAllDeviceFunctionList());
             return fs;
         }
+
+        //public void 
 
         /// <summary>
         /// 鑾峰彇璁惧鍔熻兘鍒楄〃
@@ -380,6 +390,11 @@
                     var deviceList = Newtonsoft.Json.JsonConvert.DeserializeObject<DevcieApiPack>(pack.Data.ToString());
                     if (deviceList != null)
                     {
+                        foreach(var serverFunction in deviceList.list)
+                        {
+                            MainPage.Log($"deviceId:{serverFunction.deviceId}");
+                        }
+
                         ////灏嗕笅杞藉埌鍒版暟鎹叏閮ㄤ繚瀛�
                         //new Thread(() => {
                         //    foreach (var temp in deviceList.list)
@@ -573,6 +588,11 @@
                     _FunctionList.fans.Remove(_FunctionList.fans.Find((obj) => obj.deviceId == delTemp.deviceId));
                     break;
             }
+            var removeTemp = deviceFunctionList.Find((obj) => obj.deviceId == delTemp.deviceId);
+            if(removeTemp!= null)
+            {
+                deviceFunctionList.Remove(removeTemp);
+            }
             Common.FileUtlis.Files.DeleteFile(delTemp.savePath);
         }
 

--
Gitblit v1.8.0