From 4f2dbd1f6a1ec2d9c3c39b4a37b0b7c9ddece4aa Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期四, 23 九月 2021 15:24:01 +0800 Subject: [PATCH] 主页刷新优化 --- HDL_ON/DAL/DriverLayer/Control_Udp.cs | 67 ++++++++++++++++++++------------- 1 files changed, 41 insertions(+), 26 deletions(-) diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs index 3c742c4..37ee1e3 100644 --- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs +++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs @@ -50,8 +50,17 @@ /// <summary> /// 鍙戦�佹暟鎹紝涓嶉渶瑕佺瓑寰呭洖澶� /// </summary> - public void ControlBytesSend(Command command, byte subnetID, byte deviceID, byte[] gatewayBytes, int sendCount = 3) + public void ControlBytesSend(Command command, byte subnetID, byte deviceID, byte[] gatewayBytes, int sendCount = 3,bool reSend = false) { +#if DEBUG + string ddd = ""; + foreach (var bb in gatewayBytes) + { + ddd += bb + ","; + } + MainPage.Log($"鍙戦�乥us鍛戒护:" + ((int)command).ToString("X").PadLeft(4,'0') + " : 鏁版嵁:" + ddd); +#endif + var control = new Control_Udp(); control.Send(new Target() { @@ -60,7 +69,8 @@ SubnetID = subnetID, DeviceID = deviceID, AddData = gatewayBytes, - }, sendCount, false); + }, 3, true); + //}, sendCount, reSend); } /// <summary> @@ -414,7 +424,7 @@ /// </summary> /// <param name="commandString"></param> /// <returns></returns> - public void WriteBusData(Function function, Dictionary<string, string> commandDictionary) + public void WriteBusData(Function function, Dictionary<string, string> commandDictionary,bool reSend = false) { try { @@ -428,14 +438,21 @@ switch (function.spk) { case SPK.LightCCT: - byte b0 = 100;//寮�鍏虫搷浣滀緷鎹畂n_off瀛楁锛屽疄闄呭紑鍏冲�间緷鎹産rightness锛屽綋on_off涓烘墦寮�锛宐rightness涓嶈兘涓�0 - if (function.trait_on_off.curValue.ToString() == "off") + byte b0 = 100; + if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) { - b0 = 0; + if (function.trait_on_off.curValue.ToString() == "off") + { + b0 = 0; + } + else + { + b0 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); + } } else { - b0 = Convert.ToByte( function.GetAttrState(FunctionAttributeKey.Brightness)) == 0 ? (byte)100 : Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); + b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); } var bytes0 = new byte[] { function.bus.LoopId, b0, @@ -447,22 +464,21 @@ ControlBytesSend(Command.SetLogicLoopColor, subnetId, deviceId, bytes0, 1); break; case SPK.LightRGB: - byte b = 100;//寮�鍏虫搷浣滀緷鎹畂n_off瀛楁锛屽疄闄呭紑鍏冲�间緷鎹産rightness锛屽綋on_off涓烘墦寮�锛宐rightness涓嶈兘涓�0 - if (function.trait_on_off.curValue.ToString() == "off") + byte b = 100; + if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) { - b = 0; - } - else - { - byte lightBri1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); - if (lightBri1 == 0) + if (function.trait_on_off.curValue.ToString() == "off") { - b = 100; + b = 0; } else { - b = lightBri1; + b = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); } + } + else + { + b = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); } var tempLight = new Light(); var bytes = new byte[] { function.bus.LoopId, @@ -476,22 +492,21 @@ break; case SPK.LightDimming: byte b1 = 100; - if (function.trait_on_off.curValue.ToString() == "off") + if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff)) { - b1 = 0; - } - else - { - byte lightBri = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); - if (lightBri == 0) + if (function.trait_on_off.curValue.ToString() == "off") { - b1 = 100; + b1 = 0; } else { - b1 = lightBri; + b1 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness); } } + else + { + b1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness)); + } ControlBytesSend(Command.SetSingleLight, subnetId, deviceId, new byte[] { function.bus.LoopId, b1, -- Gitblit v1.8.0