From 068c68295cad1967f7aafb4e5e951260ef03d4ce Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期五, 09 七月 2021 09:16:43 +0800
Subject: [PATCH] 状态属性更改,不要轻易合并

---
 HDL_ON/Entity/Function/Function.cs |   54 ++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 38 insertions(+), 16 deletions(-)

diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index 38ecf24..d918442 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -134,7 +134,6 @@
             else
             {
                 attr.state = value.ToString();
-                attr.curValue = value.ToString();
             }
             return true;
         }
@@ -271,12 +270,12 @@
                             max = 1,
                             min = 0,
                         };
-                        _trait_on_off.curValue = "off";
+                        _trait_on_off.state = "off";
                     }
                 }
-                if(_trait_on_off.curValue.ToString() != "on"&& _trait_on_off.curValue.ToString() != "off" && _trait_on_off.curValue.ToString() != "stop")
+                if(_trait_on_off.state.ToString() != "on"&& _trait_on_off.state.ToString() != "off" && _trait_on_off.state.ToString() != "stop")
                 {
-                    _trait_on_off.curValue = "off";
+                    _trait_on_off.state = "off";
                 }
                 return _trait_on_off;
             }
@@ -427,6 +426,19 @@
             var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this));
             FileUtlis.Files.WriteFileByBytes(savePath, ssd);
         }
+
+        /// <summary>
+        /// 閫氳繃鐘舵�佸垪琛ㄧ粍瑁呭睘鎬ч噷闈㈢殑鐘舵��
+        /// </summary>
+        public void AssembleStatus()
+        {
+            foreach(var sta in status)
+            {
+                SetAttrState(sta.key, sta.value);
+            }
+        }
+
+
         /// <summary>
         /// 淇濆瓨鎴块棿缁戝畾淇℃伅
         /// </summary>
@@ -506,39 +518,39 @@
                     case FunctionAttributeKey.FanSpeed:
                     case FunctionAttributeKey.Percent:
                     //case FunctionAttributeKey.FadeTime:
-                        if (attr.curValue.ToString() == "{}")
+                        if (attr.state.ToString() == "{}")
                         {
                             if (attr.key == FunctionAttributeKey.OnOff)
                             {
-                                attr.curValue = "off";
+                                attr.state = "off";
                             }
                             else if (attr.key == FunctionAttributeKey.Mode )
                             {
                                 if (DB_ResidenceData.Instance.GatewayType == 0)
                                 {
-                                    attr.curValue = "0";
+                                    attr.state = "0";
                                 }
                                 else
                                 {
                                     if (SPK.AcSpkList().Contains(spk))
                                     {
-                                        attr.curValue = "cool";
+                                        attr.state = "cool";
                                     }
                                     else if (SPK.FhSpkList().Contains(spk))
                                     {
-                                        attr.curValue = "day";
+                                        attr.state = "day";
                                     }
                                 }
                             }
                             else 
                             {
-                                attr.curValue = "0";
+                                attr.state = "0";
                             }
                         }
                         if (attr.key == FunctionAttributeKey.SetTemp)
                         {
                             double vv = 16;
-                            Double.TryParse(attr.curValue.ToString(), out vv);
+                            Double.TryParse(attr.state.ToString(), out vv);
                             if (vv == 0)
                             {
                                 vv = 26;
@@ -547,7 +559,7 @@
                         }
                         else
                         {
-                            sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = attr.curValue.ToString() });
+                            sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = attr.state.ToString() });
                         }
                         break;
                 }
@@ -681,6 +693,20 @@
         public string value = "";
     }
 
+    public class attttttt
+    {
+        /// <summary>
+        /// 褰撳墠鐘舵��
+        /// </summary>
+        public string state = "";
+        /// <summary>
+        /// 褰撳墠鍊�
+        /// </summary>
+        public object curValue = new object();
+
+    }
+
+
     /// <summary>
     /// 鍔熻兘灞炴��
     /// 灞炴�у瓧娈佃В鏋愶細attri :灞炴�у唴瀹癸紝value 灞炴�х殑鍊硷紝max 鏈�澶у�� min 鏈�灏忓��
@@ -712,10 +738,6 @@
         /// 褰撳墠鐘舵��
         /// </summary>
         public string state = "";
-        /// <summary>
-        /// 褰撳墠鍊�
-        /// </summary>
-        public object curValue = new object();
     }
 
     /// <summary>

--
Gitblit v1.8.0