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/Light.cs | 92 ++++++++++++++++++++++++++++++++++------------ 1 files changed, 68 insertions(+), 24 deletions(-) diff --git a/HDL_ON/Entity/Function/Light.cs b/HDL_ON/Entity/Function/Light.cs index de3fcc2..86e7065 100644 --- a/HDL_ON/Entity/Function/Light.cs +++ b/HDL_ON/Entity/Function/Light.cs @@ -32,21 +32,21 @@ { if (trait_brightness == null) { - trait_brightness = propertList.Find((obj) => obj.attri == "brightness"); + trait_brightness = function.Find((obj) => obj.name == "brightness"); //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� if (trait_brightness == null) { trait_brightness = new Trait() { - attri = "brightness", - value = new List<string> { "up", "down" }, + name = "brightness", + value_key = new List<string> { "up", "down" }, max = 100, min = 0, }; } - trait_brightness.curValues = trait_brightness.min; + trait_brightness.value = trait_brightness.min; } - return Convert.ToInt32(trait_brightness.curValues); + return Convert.ToInt32(trait_brightness.value); } set { @@ -54,21 +54,21 @@ { if (trait_brightness == null) { - trait_brightness = propertList.Find((obj) => obj.attri == "brightness"); + trait_brightness = function.Find((obj) => obj.name == "brightness"); //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� if (trait_brightness == null) { trait_brightness = new Trait() { - attri = "brightness", - value = new List<string> { "up", "down" }, + name = "brightness", + value_key = new List<string> { "up", "down" }, max = 100, min = 0, }; } - trait_brightness.curValues = trait_brightness.min; + trait_brightness.value = trait_brightness.min; } - trait_brightness.curValues = value; + trait_brightness.value = value; MainPage.Log($"brightness 鏁版嵁鍒锋柊{value}."); } catch @@ -91,27 +91,27 @@ { if (trait_color == null) { - trait_color = propertList.Find((obj) => obj.attri == "color"); + trait_color = function.Find((obj) => obj.name == "color"); //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂�� if (trait_color == null) { trait_color = new Trait() { - attri = "color", - value = new List<string> { "FFFFFF" }, + name = "color", + value_key = new List<string> { "FFFFFF" }, max = 0xFFFFFF, min = 0x000000, }; } - trait_color.curValues = trait_color.min; + trait_color.value = trait_color.min; } - return Convert.ToInt32(trait_color.curValues); + return Convert.ToInt32(trait_color.value); } set { try { - trait_color.curValues = value; + trait_color.value = value; } catch { @@ -211,30 +211,74 @@ var sendJob = new JObject(); if (command == CommandType_A.write) { - - sendJob = new JObject { { "vendor_code", vendor_code }, { "Command", command.ToString() }, { "Type", "device" } }; - JObject data = null; + 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: - data = new JObject { { "sid", sid }, { "switch", on_off } }; + controlData.Add(new ControlData() + { + name = "on_off", + data_type = "Bool", + value = trait_on_off.value.ToString() + }); break; case FunctionType.Dimmer: - data = new JObject { { "sid", sid }, { "brightness", brightness } }; + 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: - data = new JObject { { "sid", sid }, { "brightness", brightness }, { "color", color } }; + 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; } - sendJob.Add("objects", data); + + 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" } }; + 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