From 673a93f4ed742a10a879a67b616e6646b03ef0fb Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 15 九月 2020 17:14:27 +0800
Subject: [PATCH] 202009151

---
 HDL_ON/Entity/Function/Light.cs |  139 +++++++++++++++++++--------------------------
 1 files changed, 59 insertions(+), 80 deletions(-)

diff --git a/HDL_ON/Entity/Function/Light.cs b/HDL_ON/Entity/Function/Light.cs
index 86e7065..0a95c65 100644
--- a/HDL_ON/Entity/Function/Light.cs
+++ b/HDL_ON/Entity/Function/Light.cs
@@ -21,7 +21,7 @@
         }
 
         [Newtonsoft.Json.JsonIgnore]
-        public Trait trait_brightness;
+        Trait trait_brightness;
         /// <summary>
         /// 浜害鍊�
         /// </summary>
@@ -74,6 +74,64 @@
                 catch
                 {
                     MainPage.Log("brightness 鏁版嵁鍒锋柊澶辫触.");
+                }
+            }
+        }
+
+        [Newtonsoft.Json.JsonIgnore]
+        Trait trait_fadeTime;
+        /// <summary>
+        /// 浜害鍊�
+        /// </summary>
+        [Newtonsoft.Json.JsonIgnore]
+        public int fadeTime
+        {
+            get
+            {
+                if (trait_fadeTime == null)
+                {
+                    trait_fadeTime = function.Find((obj) => obj.name == "fade_time");
+                    //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
+                    if (trait_fadeTime == null)
+                    {
+                        trait_fadeTime = new Trait()
+                        {
+                            name = "fade_time",
+                            value_key = new List<string> { "up", "down" },
+                            max = 10,
+                            min = 0,
+                        };
+                        trait_fadeTime.value = 0;
+                        function.Add(trait_fadeTime);
+                    }
+                }
+                return Convert.ToInt32(trait_fadeTime.value);
+            }
+            set
+            {
+                try
+                {
+                    if (trait_fadeTime == null)
+                    {
+                        trait_fadeTime = function.Find((obj) => obj.name == "fade_time");
+                        //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
+                        if (trait_fadeTime == null)
+                        {
+                            trait_fadeTime = new Trait()
+                            {
+                                name = "fade_time",
+                                value_key = new List<string> { "up", "down" },
+                                max = 100,
+                                min = 0,
+                            };
+                            trait_fadeTime.value = 0;
+                            function.Add(trait_fadeTime);
+                        }
+                    }
+                    trait_fadeTime.value = value;
+                }
+                catch
+                {
                 }
             }
         }
@@ -201,84 +259,5 @@
                 }
             }
         }
-
-
-        /// <summary>
-        /// 鎷兼帴銆佽幏鍙朅鍗忚鎿嶄綔鏁版嵁
-        /// </summary>
-        public override JObject GetSendJObject(CommandType_A command )
-        {
-            var sendJob = new JObject();
-            if (command == CommandType_A.write)
-            {
-                sendJob = new JObject { { "vendor_code", vendor_code }, { "command", command.ToString() }, { "type", "device" } };
-                JObject data = new JObject { { "sid", sid } };
-                sendJob.Add("objects", data);
-                List<ControlData> controlData = new List<ControlData>();
-                switch (functionType)
-                {
-                    case FunctionType.Relay:
-                        controlData.Add(new ControlData()
-                        {
-                            name = "on_off",
-                            data_type = "Bool",
-                            value = trait_on_off.value.ToString()
-                        });
-                        break;
-                    case FunctionType.Dimmer:
-                        controlData.Add(new ControlData()
-                        {
-                            name = "on_off",
-                            data_type = "Bool",
-                            value = trait_on_off.value.ToString()
-                        });
-                        controlData.Add(new ControlData()
-                        {
-                            name = "brightness",
-                            data_type = "int",
-                            value = brightness.ToString(),
-                        });
-                        break;
-                    case FunctionType.RGB:
-                        controlData.Add(new ControlData()
-                        {
-                            name = "on_off",
-                            data_type = "Bool",
-                            value = trait_on_off.value.ToString()
-                        });
-                        controlData.Add(new ControlData()
-                        {
-                            name = "brightness",
-                            data_type = "int",
-                            value = brightness.ToString(),
-                        });
-                        controlData.Add(new ControlData()
-                        {
-                            name = "color",
-                            data_type = "int",
-                            value = color.ToString(),
-                        });
-                        break;
-                }
-
-                AProtocolEntity ape = new AProtocolEntity()
-                {
-                    command = command.ToString(),
-                    vendor_code = vendor_code,
-                    type = "device_sid",
-                };
-                ape.ControlFunction(sid, controlData);
-                sendJob = JObject.FromObject(ape);
-
-            }
-            else if (command == CommandType_A.read)
-            {
-                sendJob = new JObject { { "vendor_code", vendor_code }, { "command", command.ToString() }, { "type", "device" } };
-                var data = new JObject {{ "sid", sid } };
-                sendJob.Add("objects", data);
-            }
-            return sendJob;
-        }
     }
-
 }

--
Gitblit v1.8.0