From 0f2e0147e8990e913d16d99bc1b94fb6bc53abd7 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期四, 03 十二月 2020 15:35:42 +0800 Subject: [PATCH] 2020-12-03-1 --- HDL_ON/Entity/Function/Light.cs | 183 ++++++++++++++++++++------------------------- 1 files changed, 82 insertions(+), 101 deletions(-) diff --git a/HDL_ON/Entity/Function/Light.cs b/HDL_ON/Entity/Function/Light.cs index 86e7065..5c89126 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; + FunctionAttributes trait_brightness; /// <summary> /// 浜害鍊� /// </summary> @@ -32,21 +32,21 @@ { if (trait_brightness == null) { - trait_brightness = function.Find((obj) => obj.name == "brightness"); + trait_brightness = attributes.Find((obj) => obj.key == "brightness"); //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� if (trait_brightness == null) { - trait_brightness = new Trait() + trait_brightness = new FunctionAttributes() { - name = "brightness", - value_key = new List<string> { "up", "down" }, + key = "brightness", + value = new List<string> { "up", "down" }, max = 100, min = 0, }; } - trait_brightness.value = trait_brightness.min; + trait_brightness.curValue = trait_brightness.min; } - return Convert.ToInt32(trait_brightness.value); + return Convert.ToInt32(trait_brightness.curValue); } set { @@ -54,21 +54,21 @@ { if (trait_brightness == null) { - trait_brightness = function.Find((obj) => obj.name == "brightness"); + trait_brightness = attributes.Find((obj) => obj.key == "brightness"); //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� if (trait_brightness == null) { - trait_brightness = new Trait() + trait_brightness = new FunctionAttributes() { - name = "brightness", - value_key = new List<string> { "up", "down" }, + key = "brightness", + value = new List<string> { "up", "down" }, max = 100, min = 0, }; } - trait_brightness.value = trait_brightness.min; + trait_brightness.curValue = trait_brightness.min; } - trait_brightness.value = value; + trait_brightness.curValue = value; MainPage.Log($"brightness 鏁版嵁鍒锋柊{value}."); } catch @@ -79,7 +79,67 @@ } [Newtonsoft.Json.JsonIgnore] - public Trait trait_color; + FunctionAttributes trait_fadeTime; + /// <summary> + /// 浜害鍊� + /// </summary> + [Newtonsoft.Json.JsonIgnore] + public int fadeTime + { + get + { + if (trait_fadeTime == null) + { + trait_fadeTime = attributes.Find((obj) => obj.key == "fade_time"); + //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� + if (trait_fadeTime == null) + { + trait_fadeTime = new FunctionAttributes() + { + key = "fade_time", + value = new List<string> { "up", "down" }, + max = 10, + min = 0, + }; + trait_fadeTime.curValue = 0; + attributes.Add(trait_fadeTime); + } + } + int result = 0; + int.TryParse(trait_fadeTime.curValue.ToString(), out result); + return result; + } + set + { + try + { + if (trait_fadeTime == null) + { + trait_fadeTime = attributes.Find((obj) => obj.key == "fade_time"); + //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� + if (trait_fadeTime == null) + { + trait_fadeTime = new FunctionAttributes() + { + key = "fade_time", + value = new List<string> { "up", "down" }, + max = 100, + min = 0, + }; + trait_fadeTime.curValue = 0; + attributes.Add(trait_fadeTime); + } + } + trait_fadeTime.curValue = value; + } + catch + { + } + } + } + + [Newtonsoft.Json.JsonIgnore] + public FunctionAttributes trait_color; /// <summary> /// RGB棰滆壊 /// 255255255 @@ -91,27 +151,27 @@ { if (trait_color == null) { - trait_color = function.Find((obj) => obj.name == "color"); + trait_color = attributes.Find((obj) => obj.key == "color"); //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� if (trait_color == null) { - trait_color = new Trait() + trait_color = new FunctionAttributes() { - name = "color", - value_key = new List<string> { "FFFFFF" }, + key = "color", + value = new List<string> { "FFFFFF" }, max = 0xFFFFFF, - min = 0x000000, + min = 0x00000F, }; } - trait_color.value = trait_color.min; + trait_color.curValue = trait_color.min; } - return Convert.ToInt32(trait_color.value); + return Convert.ToInt32(trait_color.curValue); } set { try { - trait_color.value = value; + trait_color.curValue = value; } catch { @@ -201,84 +261,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