From a9d1161b1df96e7ddad566335989a1444e433ef5 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期二, 28 三月 2023 11:54:45 +0800
Subject: [PATCH] 2023年03月28日11:52:02

---
 HDL_ON/Entity/DB_ResidenceData.cs |   67 ++++++++++++++++++++-------------
 1 files changed, 40 insertions(+), 27 deletions(-)

diff --git a/HDL_ON/Entity/DB_ResidenceData.cs b/HDL_ON/Entity/DB_ResidenceData.cs
index cd346ad..3a0e4ee 100644
--- a/HDL_ON/Entity/DB_ResidenceData.cs
+++ b/HDL_ON/Entity/DB_ResidenceData.cs
@@ -54,11 +54,33 @@
             }
         }
 
+        private List<ShowFunction> dddd;
+
         /// <summary>
         /// 鍔熻兘绫诲瀷鍒楄〃
         /// </summary>
         [Newtonsoft.Json.JsonIgnore]
-        public List<ShowFunction> functionTypeList = new List<ShowFunction>();
+        public List<ShowFunction> ShowFunctionTypeList
+        {
+            get
+            {
+                if (dddd == null)
+                {
+                    dddd = new List<ShowFunction>(){
+                                    ShowFunction.Light,ShowFunction.AC,ShowFunction.Curtain,
+                                    ShowFunction.FloorHeating,ShowFunction.Music,
+                                    ShowFunction.Electric,ShowFunction.Environmental,
+                                    ShowFunction.EnergyMonitoring,ShowFunction.IpCam,
+                                    ShowFunction.FreshAir,ShowFunction.DoorLock,
+                                    ShowFunction.Panel,
+                                    ShowFunction.Sensor,ShowFunction.VideoIntercom,
+                                    ShowFunction.SecurityCenter,ShowFunction.Acst,
+                                    ShowFunction.MechanicalArm ,
+                                    ShowFunction.SecurityMonitoring,};
+                }
+                return dddd;
+            }
+        }
 
         static DB_ResidenceData instance;
         public static DB_ResidenceData Instance
@@ -70,16 +92,6 @@
                     if(MainPage.NoLoginMode)
                     {
                         instance = new DB_ResidenceData();
-                        instance.functionTypeList.AddRange(new List<ShowFunction> {
-                                    ShowFunction.Light,ShowFunction.AC,ShowFunction.Curtain,
-                                    ShowFunction.FloorHeating,ShowFunction.Music,
-                                    ShowFunction.Electric,ShowFunction.Environmental,
-                                    ShowFunction.EnergyMonitoring,
-                                    ShowFunction.FreshAir,ShowFunction.DoorLock,
-                                    ShowFunction.Panel,ShowFunction.SecurityMonitoring,
-                                    ShowFunction.Sensor,ShowFunction.VideoIntercom,
-                                    ShowFunction.SecurityCenter,ShowFunction.Acst,
-                                });
                         instance.SaveResidenceData();
                         instance.residenceImage = "Classification/Room/Roombg.png";
                         instance.HomeGateway = new HomeGatewayInfo()
@@ -111,16 +123,6 @@
                         {
                             instance = temp;
                         }
-                        instance.functionTypeList.AddRange(new List<ShowFunction> {
-                                    ShowFunction.Light,ShowFunction.AC,ShowFunction.Curtain,
-                                    ShowFunction.FloorHeating,ShowFunction.Music,
-                                    ShowFunction.Electric,ShowFunction.Environmental,
-                                    ShowFunction.EnergyMonitoring,
-                                    ShowFunction.FreshAir,ShowFunction.DoorLock,
-                                    ShowFunction.Panel,ShowFunction.SecurityMonitoring,
-                                    ShowFunction.Sensor,ShowFunction.VideoIntercom,
-                                    ShowFunction.SecurityCenter,ShowFunction.Acst,
-                                });
                         instance.SupportFacePass = false;
                         instance.SaveResidenceData();
                     }
@@ -150,7 +152,7 @@
             DriverLayer.Control.Ins.GatewayOnline_Cloud = false;
             DriverLayer.Control.Ins.GatewayOnline_Local = false;
             SpatialInfo.CurrentSpatial.Clear();
-            FunctionList.List.Clear();
+            FunctionList.List.ClearDatas();
 
             ///鍒囨崲浣忓畢娓呯┖鍓嶄綇瀹呯紦瀛樿嚜鍔ㄥ寲鍒楄〃锛�
             HDL_ON.UI.UI2.Intelligence.Automation.Logic.LogicList.Clear();
@@ -296,16 +298,27 @@
             var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this));
             WirteResidenceInfo(ssd);
         }
-        /// <summary>
-        /// 褰撳墠閫夋嫨鐨勬ゼ灞�
-        /// </summary>
-        public string CurFoor = Language.StringByID(StringId.All);
 
+
+        SpatialInfo _CurFloor;
         /// <summary>
         /// 褰撳墠閫夋嫨鐨勬ゼ灞�
         /// </summary>
         [Newtonsoft.Json.JsonIgnore]
-        public SpatialInfo CurFloor = new SpatialInfo() { roomId = "", roomName = Language.StringByID(StringId.All)};
+        public SpatialInfo CurFloor {
+            get
+            {
+                if(_CurFloor == null || _CurFloor.roomName == "")
+                {
+                    _CurFloor = new SpatialInfo() { roomId = "", roomName = Language.StringByID(StringId.All) };
+                }
+                return _CurFloor;
+            }
+            set
+            {
+                _CurFloor = value;
+            }
+        } 
         /// <summary>
         /// 鍒嗙被鐣岄潰鏄剧ず鐨勬ゼ灞�
         /// </summary>

--
Gitblit v1.8.0