From 7d005a7618e3d7a80d8ede3baf6ecc4bf8019cd5 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 01 九月 2020 15:22:09 +0800
Subject: [PATCH] 2020-09-01

---
 HDL_ON/Entity/Function/Curtain.cs |   27 +++++++++++++++++++++------
 1 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/HDL_ON/Entity/Function/Curtain.cs b/HDL_ON/Entity/Function/Curtain.cs
index 3edf564..d8302a4 100644
--- a/HDL_ON/Entity/Function/Curtain.cs
+++ b/HDL_ON/Entity/Function/Curtain.cs
@@ -1,4 +1,5 @@
 锘縰sing System;
+using System.Collections.Generic;
 using Newtonsoft.Json.Linq;
 
 namespace HDL_ON.Entity
@@ -15,6 +16,8 @@
         public Curtain()
         {
         }
+        [Newtonsoft.Json.JsonIgnore]
+        public Trait trait_openLevel;
         /// <summary>
         /// 寮�鍏崇櫨鍒嗘瘮
         /// 0-100
@@ -26,9 +29,22 @@
             {
                 try
                 {
-                    string o = "0";
-                    dicPropert.TryGetValue("openLevel", out o);
-                    return o == "" ? 0 : Convert.ToInt32(o);
+                    if(trait_openLevel==null)
+                    {
+                        trait_openLevel = function.Find((obj) => obj.name == "openLevel");
+                        if (trait_openLevel == null)
+                        {
+                            trait_openLevel = new Trait()
+                            {
+                                name = "openLevel",
+                                value_key = new List<string> { "up", "down" },
+                                max = 100,
+                                min = 0,
+                            };
+                        }
+                        trait_openLevel.value = trait_openLevel.min;
+                    }
+                    return Convert.ToInt32( trait_openLevel.value);
                 }
                 catch
                 {
@@ -40,7 +56,7 @@
             {
                 try
                 {
-                    dicPropert["openLevel"] = value.ToString();
+                    trait_openLevel.value = value;
                 }
                 catch
                 {
@@ -57,13 +73,12 @@
             var sendJob = new JObject();
             if (command == CommandType_A.write)
             {
-
                 sendJob = new JObject { { "vendor_code", vendor_code }, { "Command", command.ToString() }, { "Type", "device" } };
                 JObject data = null;
                 switch (functionType)
                 {
                     case FunctionType.Curtain:
-                        data = new JObject { { "on_off", on_off }, { "sid", sid } };
+                        data = new JObject { { "on_off", trait_on_off.value.ToString() }, { "sid", sid } };
                         break;
                     case FunctionType.MotorCurtain:
                     case FunctionType.RollingShutter:

--
Gitblit v1.8.0