From 505effa88b17ce8c3c7ac5403b76d9e5d0cfc2a5 Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期一, 28 十月 2024 11:58:31 +0800
Subject: [PATCH] 谷歌版本问题修复

---
 HDL_ON/Entity/Function/Function.cs |  160 ++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 109 insertions(+), 51 deletions(-)

diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index 2ef2075..15480d4 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -108,6 +108,7 @@
         /// 鑾峰彇灞炴�у綋鍓嶇姸鎬�
         /// </summary>
         /// <param name="key"></param>
+        /// <param name="defaultValue">榛樿鍊�</param>
         /// <returns></returns>
         public string GetAttrState(string key, string defaultValue = "0")
         {
@@ -120,7 +121,7 @@
             if (string.IsNullOrEmpty(attrState.state))
             {
                 //浜岀骇鏌ヨkeyValue鍊�
-                return GetOriginalState(key);
+                return GetOriginalState(key, defaultValue);
             }
             return attrState.state;
         }
@@ -130,13 +131,14 @@
         /// 榛樿鍊硷細0
         /// </summary>
         /// <param name="key">璇泙瀹氫箟鐨勫睘鎬у��</param>
+        /// <param name="defaultValue">榛樿鍊�</param>
         /// <returns></returns>
-        public string GetOriginalState(string key)
+        public string GetOriginalState(string key, string defaultValue)
         {
             var originalState = status.Find((s) => s.key == key.ToString());
             if (originalState == null || string.IsNullOrEmpty(originalState.value))
             {
-                return "0";
+                return defaultValue;
             }
             return originalState.value;
         }
@@ -171,6 +173,13 @@
                 string iconPath = spk.Replace(".", "");
                 switch (spk)
                 {
+                    case SPK.SensorDryContact2:
+                    case SPK.OtherCommon:
+                        iconPath = "sensordryContact";
+                        break;
+                    //case SPK.SensorLight:
+                    //    iconPath = "lightswitch";
+                    //    break;
                     case SPK.AirSwitchP3:
                         iconPath = "electricalbreaker";
                         break;
@@ -189,13 +198,13 @@
                     case SPK.HvacAirFreshJinmao:
                         iconPath = "airFreshjinmao";
                         break;
-                    case SPK.HvacAC:
+                    case SPK.HvacAC:case SPK.HvacAcPanel:
                         iconPath = "acstandard";
                         break;
                     case SPK.HvacFan:
                         iconPath = "electricalfan";
                         break;
-                    case SPK.HvacFloorHeat:
+                    case SPK.HvacFloorHeat:case SPK.HvacFloorHeatPanel:
                         iconPath = "floorHeatstandard";
                         break;
                     case SPK.ElectricTuyaFan2:
@@ -287,6 +296,11 @@
         /// 璁惧spk
         /// </summary>
         public string spk = "";
+        /// <summary>
+        /// 鎵╁睍淇℃伅
+        /// 瀛楃涓�
+        /// </summary>
+        public string extend = "";
 
         private string _SpkCategory = string.Empty;
         /// <summary>
@@ -663,10 +677,12 @@
                         collect = !collect;
                         IMessageCommon.Current.ShowErrorInfoAlter(result);
                     });
-                } else
+                }
+                else
                 {
                     Application.RunOnMainThread(() =>
                     {
+                        this.SaveFunctionFile();
                         UI.HomePage.RefreshFunctionView();
                     });
                 }
@@ -879,24 +895,24 @@
                 });
 
             }
-            else if (spk == SPK.ElectricalTvHisense)
-            {
-                list.Add(new FunctionAttributes
-                {
-                    key = FunctionAttributeKey.OnOff,
-                    curValue = string.Empty,
-                });
-                list.Add(new FunctionAttributes
-                {
-                    key = FunctionAttributeKey.SetVolume,
-                    curValue = string.Empty,
-                });
-                list.Add(new FunctionAttributes
-                {
-                    key = FunctionAttributeKey.Signal,
-                    curValue = string.Empty,
-                });
-            }
+            //else if (spk == SPK.ElectricalTvHisense)
+            //{
+            //    list.Add(new FunctionAttributes
+            //    {
+            //        key = FunctionAttributeKey.OnOff,
+            //        curValue = string.Empty,
+            //    });
+            //    list.Add(new FunctionAttributes
+            //    {
+            //        key = FunctionAttributeKey.SetVolume,
+            //        curValue = string.Empty,
+            //    });
+            //    list.Add(new FunctionAttributes
+            //    {
+            //        key = FunctionAttributeKey.Signal,
+            //        curValue = string.Empty,
+            //    });
+            //}
             else
             {
                 list.AddRange(attributes);
@@ -1058,6 +1074,11 @@
         /// 鏇存柊鏃堕棿
         /// </summary>
         public DateTime refreshTime = DateTime.MinValue;
+        /// <summary>
+        /// 鏈�鍚庢洿鏂扮姸鎬佺殑鏃堕棿
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public DateTime updateTime = DateTime.MinValue;
 
         /// <summary>
         /// 鑾峰彇鏈湴鎺у埗鏁版嵁
@@ -1480,7 +1501,12 @@
         public const string Temperature = "temperature";
         public const string Hcho = "hcho";
         public const string Humidity = "humidity";
+        /// <summary>
+        /// 鐓у害
+        /// </summary>
+        public const string Illuminance = "illuminance";
         public const string Pm25 = "pm25";
+        public const string Pm10 = "pm10";
         public const string Tvoc = "tvoc";
         /// <summary>
         /// 鐘舵��,浼犳劅鍣�
@@ -1703,6 +1729,16 @@
     public static class SPK
     {
         /// <summary>
+        /// 鏈煡SPK
+        /// (鑷畾涔�)
+        /// </summary>
+        public const string NULL = "NULL";
+        /// <summary>
+        /// 瑗垮ⅷ鍙瀵硅闂ㄥ彛鏈�
+        /// (鑷畾涔�)
+        /// </summary>
+        public const string LinphoneXiMo = "door.gate";
+        /// <summary>
         /// 缇ゆ帶锛堣嚜瀹氫箟锛�
         /// </summary>
         public const string GroupControl = "groupControl";
@@ -1732,6 +1768,16 @@
         /// 瀛愭帶
         /// </summary>
         public const string AcstSub = "acst.sub";
+        /// <summary>
+        /// 鐑按鍣�
+        /// 閲戣寕
+        /// </summary>
+        public const string WaterHeaterJinmao = "electrical.water_heater.jinmao";
+        /// <summary>
+        /// 閫嗗彉鍣�/鏂拌兘婧�
+        /// 閲戣寕
+        /// </summary>
+        public const string InverterJinmao = "energy.inverter.jinmao";
 
         /// <summary>
         /// 闂ㄩ攣
@@ -1762,51 +1808,51 @@
         /// <summary>
         /// 钀ょ煶瑙嗛闂ㄩ攣
         /// </summary>
-        public const string VideoDoorLock="security.door.ezviz";
+        //public const string VideoDoorLock="security.door.ezviz";
         /// <summary>
         /// 钀ょ煶鎽勫儚澶�
         /// </summary>
-        public const string Ev_Ipcam = "security.ipcam.ez";
+        //public const string Ev_Ipcam = "security.ipcam.ez";
         /// <summary>
         /// 褰遍煶涓帶
         /// </summary>
-        public const string AvZkAiks = "av.zk.aiks";
+        //public const string AvZkAiks = "av.zk.aiks";
        
         /// <summary>
         /// 钀ょ煶瑙嗛闂ㄩ攣spk鍒楄〃
         /// </summary>
         /// <returns></returns>
-        public static List<string> GetVideoDoorLockSPKList()
-        {
-            var list = new List<string>();
-            list.Add(VideoDoorLock);
-            return list;
-        }
+        //public static List<string> GetVideoDoorLockSPKList()
+        //{
+        //    var list = new List<string>();
+        //    list.Add(VideoDoorLock);
+        //    return list;
+        //}
 
       
         /// <summary>
         /// 褰遍煶涓帶spk鍒楄〃
         /// </summary>
         /// <returns></returns>
-        public static List<string> GetVideoControlsSPKList()
-        {
-            var list = new List<string>
-            {
-                AvZkAiks
-            };
-            return list;
-        }
+        //public static List<string> GetVideoControlsSPKList()
+        //{
+        //    var list = new List<string>
+        //    {
+        //        AvZkAiks
+        //    };
+        //    return list;
+        //}
 
         /// <summary>
         /// 钀ょ煶鎽勫儚澶磗pk鍒楄〃
         /// </summary>
         /// <returns></returns>
-        public static List<string> GetEvIpcamSPKList()
-        {
-            var list = new List<string>();
-            list.Add(Ev_Ipcam);
-            return list;
-        }
+        //public static List<string> GetEvIpcamSPKList()
+        //{
+        //    var list = new List<string>();
+        //    list.Add(Ev_Ipcam);
+        //    return list;
+        //}
 
         #region 鐏厜
         /// <summary>
@@ -1898,6 +1944,10 @@
         /// </summary>
         public const string HvacAC = "hvac.ac";
         /// <summary>
+        /// 闈㈡澘绌鸿皟
+        /// </summary>
+        public const string HvacAcPanel = "hvac.ac_panel";
+        /// <summary>
         /// 姣涚粏绠$┖璋�
         /// </summaryc
         public const string HvacCac = "hvac.cac";
@@ -1911,6 +1961,7 @@
             var spkList = new List<string>();
             spkList.Add(AcStandard);
             spkList.Add(HvacAC);
+            spkList.Add(HvacAcPanel);
             spkList.Add(AcIr);
             spkList.Add(HvacCac);
             return spkList;
@@ -1926,6 +1977,10 @@
         /// 鍦版殩
         /// </summary>
         public const string HvacFloorHeat = "hvac.floorHeat";
+        /// <summary>
+        /// 闈㈡澘鍦版殩
+        /// </summary>
+        public const string HvacFloorHeatPanel = "hvac.floorHeat_panel";
 
         /// <summary>
         /// 鍦扮儹spk鍒楄〃
@@ -1935,7 +1990,7 @@
         {
             var spkList = new List<string>();
             spkList.Add(FloorHeatStandard);
-            spkList.Add(HvacFloorHeat);
+            spkList.Add(HvacFloorHeat); spkList.Add(HvacFloorHeatPanel);
             return spkList;
         }
         #endregion
@@ -2192,6 +2247,7 @@
             spkList.Add(SensorEnvironment2);
             spkList.Add(SensorEnvironment3);
             spkList.Add(SensorHcho);
+            spkList.Add(SensorLight);
             return spkList;
         }
         /// <summary>
@@ -2208,6 +2264,7 @@
             spkList.Add(SensorTVOC);
             spkList.Add(SensorHumidity);
             spkList.Add(SensorHcho);
+            spkList.Add(SensorLight);
             return spkList;
         }
 
@@ -2221,6 +2278,7 @@
             spkList.Add(SensorEnvironment); spkList.Add(SensorEnvironmentHailin);
             spkList.Add(SensorEnvironment2);
             spkList.Add(SensorEnvironment3);
+         
             return spkList;
         }
 
@@ -2231,7 +2289,7 @@
         /// <summary>
         /// 娴蜂俊鐢佃
         /// </summary>
-        public const string ElectricalTvHisense = "electrical.tv.hisense";
+        //public const string ElectricalTvHisense = "electrical.tv.hisense";
         /// <summary>
         /// 瀹剁數銆佹彃搴�
         /// </summary>
@@ -2284,7 +2342,7 @@
         /// <summary>
         /// 绾㈠鐑按鍣�
         /// </summary>
-        public const string HeaterIr = " ir.water_heater";
+        public const string HeaterIr = "ir.water_heater";
         /// <summary>
         /// 绾㈠椋庢墖
         /// </summary>
@@ -2350,7 +2408,7 @@
             spkList.Add(ElectricTuyaWaterValve);
             spkList.Add(ElectricTuyaWaterValve2);
             spkList.Add(AirSwitch);
-            spkList.Add(ElectricalTvHisense);
+            //spkList.Add(ElectricalTvHisense);
             return spkList;
         }
 

--
Gitblit v1.8.0