From bb6ad792b598927a5459a5fb6f6c27fb1aa9e94e Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期四, 17 十二月 2020 14:06:36 +0800 Subject: [PATCH] 20201217-1 --- HDL_ON/Entity/Function/Curtain.cs | 71 ++++++++++++++--------------------- 1 files changed, 28 insertions(+), 43 deletions(-) diff --git a/HDL_ON/Entity/Function/Curtain.cs b/HDL_ON/Entity/Function/Curtain.cs index 3edf564..51d2a25 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 @@ -6,33 +7,50 @@ public class Curtain : Function { /* - 绐楀笜灞炴�у垪琛細trait: [switch,openLevel,lock] + 绐楀笜灞炴�у垪琛細trait: [switch,percent,lock] 灞炴�� 鎻忚堪 on_off on/off/stop; - openLevel 0-100; + percent 0-100; lock boolean (Lock閿佸畾鎺у埗) */ public Curtain() { - } + }//percent + [Newtonsoft.Json.JsonIgnore] + public FunctionAttributes trait_percent; /// <summary> /// 寮�鍏崇櫨鍒嗘瘮 /// 0-100 /// </summary> [Newtonsoft.Json.JsonIgnore] - public int openLevel + public int percent { get { try { - string o = "0"; - dicPropert.TryGetValue("openLevel", out o); - return o == "" ? 0 : Convert.ToInt32(o); + if(trait_percent==null) + { + trait_percent = attributes.Find((obj) => obj.key == "percent"); + if (trait_percent == null) + { + trait_percent = new FunctionAttributes() + { + key = "percent", + value = new List<string> { "up", "down" }, + max = 100, + min = 0, + curValue = 0 + }; + } + if (trait_percent.curValue.ToString() == "{}") + trait_percent.curValue = 0; + } + return Convert.ToInt32( trait_percent.curValue); } catch { - MainPage.Log("openLevel 鏁版嵁鑾峰彇澶辫触."); + MainPage.Log("percent 鏁版嵁鑾峰彇澶辫触."); return 0; } } @@ -40,47 +58,14 @@ { try { - dicPropert["openLevel"] = value.ToString(); + trait_percent.curValue = value; } catch { - MainPage.Log("openLevel 鏁版嵁鍒锋柊澶辫触."); + MainPage.Log("percent 鏁版嵁鍒锋柊澶辫触."); } } } - - /// <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 = null; - switch (functionType) - { - case FunctionType.Curtain: - data = new JObject { { "on_off", on_off }, { "sid", sid } }; - break; - case FunctionType.MotorCurtain: - case FunctionType.RollingShutter: - data = new JObject { { "openLevel", openLevel}, { "sid", sid } }; - break; - } - sendJob.Add("objects", data); - } - 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