wxr
2020-09-09 c3e1b733fc45bd9f0b88bfb560cfa87a270b079b
HDL_ON/Entity/Function/Light.cs
@@ -21,7 +21,7 @@
        }
        [Newtonsoft.Json.JsonIgnore]
        public Trait trait_brightness;
        Trait trait_brightness;
        /// <summary>
        /// 亮度值
        /// </summary>
@@ -201,84 +201,5 @@
                }
            }
        }
        /// <summary>
        /// 拼接、获取A协议操作数据
        /// </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;
        }
    }
}