From a16dbea60b9fd0550dcdefd34c94ff6711af2cbc Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期五, 25 十一月 2022 09:13:29 +0800
Subject: [PATCH] 功能完成备份

---
 HDL_ON/Entity/FunctionList.cs |   94 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 87 insertions(+), 7 deletions(-)

diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs
index 9dce20e..93616b8 100644
--- a/HDL_ON/Entity/FunctionList.cs
+++ b/HDL_ON/Entity/FunctionList.cs
@@ -13,6 +13,21 @@
     public class FunctionList
     {
         static FunctionList _FunctionList;
+
+        public static void ClearData()
+        {
+            try
+            {
+                _FunctionList.Clear();
+                _FunctionList = null;
+            }
+            catch (Exception ex)
+            {
+                MainPage.Log($"娓呯悊FunctionList寮傚父:{ex.Message}");
+                _FunctionList = null;
+            }
+        }
+
         public static FunctionList List
         {
             get
@@ -39,6 +54,48 @@
         /// 鍔熻兘鍒楄〃
         /// </summary>
         public List<Function> Functions = new List<Function>();
+        /// <summary>
+        /// 鏈烘鑷傚垪琛�
+        /// </summary>
+        /// <returns></returns>
+        public List<Function> GetMechanicalArmList()
+        {
+            return Functions.FindAll((obj) => obj.spk == SPK.MechanicalArm);
+        }
+
+        List<Function> _IpCamImou;
+        /// <summary>
+        /// 鑾峰彇鎽勫儚澶村垪琛�
+        /// </summary>
+        /// <returns></returns>
+        public List<Function> GetIpCamImouList()
+        {
+            if (_IpCamImou == null)
+            {
+                _IpCamImou = Functions.FindAll((obj) => obj.spk == SPK.IpCam_Imou);
+            }
+            return _IpCamImou;
+        }
+
+        /// <summary>
+        /// 缁垮缓绉戞妧绯荤粺
+        /// 鎬绘帶鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<Function> GetAcstParentList()
+        {
+            return Functions.FindAll((obj) => obj.spk == SPK.AcstParent);
+        }
+
+        /// <summary>
+        /// 缁垮缓绉戞妧绯荤粺
+        /// 瀛愭帶鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public List<Function> GetAcstSubList()
+        {
+            return Functions.FindAll((obj) => obj.spk == SPK.AcstSub);
+        }
 
         /// <summary>
         /// 绌鸿皟鍒楄〃
@@ -102,6 +159,22 @@
             return Functions.FindAll((obj) => spkList.Contains(obj.spk));
         }
 
+        List<InverterInfo> _inverterList = new List<InverterInfo>();
+        /// <summary>
+        /// 鍏変紡鍒楄〃
+        /// </summary>
+        public List<Function> InverterList()
+        {
+            //get
+            //{
+            //    return _inverterList;
+            //}
+            //set
+            //{
+            //    _inverterList = value;
+            //}
+            return Functions.FindAll((obj) => obj.spk == SPK.Inverter);
+        }
         #region 瀹剁數鍒楄〃 electricals
         /// <summary>
         /// 瀹剁數鍒楄〃
@@ -316,25 +389,33 @@
                 switch (brandType)
                 {
                     case SPK.BrandType.Hdl:
-                        foreach (var function in Functions)
+                        try
                         {
-                            if (!SPK.Get3tySpk(SPK.BrandType.All3tyBrand).Contains(function.spk))
+                            foreach (var function in Functions)
                             {
-                                resultFunctions.Add(function);
+                                if (!SPK.Get3tySpk(SPK.BrandType.All3tyBrand).Contains(function.spk))
+                                {
+                                    resultFunctions.Add(function);
+                                }
                             }
                         }
+                        catch { }
                         break;
 
                     case SPK.BrandType.Tuya:
                         lock (Functions)
                         {
-                            foreach (var function in Functions)
+                            try
                             {
-                                if (SPK.Get3tySpk(SPK.BrandType.Tuya).Contains(function.spk))
+                                foreach (var function in Functions)
                                 {
-                                    resultFunctions.Add(function);
+                                    if (SPK.Get3tySpk(SPK.BrandType.Tuya).Contains(function.spk))
+                                    {
+                                        resultFunctions.Add(function);
+                                    }
                                 }
                             }
+                            catch { }
                         }
                         break;
                 }
@@ -376,7 +457,6 @@
 
         /// <summary>
         /// 鍒犻櫎鍦烘櫙
-        /// todo
         /// </summary>
         public void DeleteScene(Scene scene,bool upSevser)
         {

--
Gitblit v1.8.0