From 439d05654176664111063362ac5c98c772910faa Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期四, 12 九月 2024 12:05:01 +0800
Subject: [PATCH] 异常信息优化
---
HDL_ON/DAL/DriverLayer/Control_Udp.cs | 104 +++++++++++++++++++++++++++++++++-------------------
1 files changed, 66 insertions(+), 38 deletions(-)
diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
index a98ad05..6ad5775 100644
--- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs
+++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
@@ -302,7 +302,7 @@
break;
case SPK.LightRGB:
break;
- case SPK.HvacFloorHeat:
+ case SPK.HvacFloorHeat:case SPK.HvacFloorHeatPanel:
case SPK.FloorHeatStandard:
if (f.status.Find((obj)=>obj.key ==FunctionAttributeKey.Mode) == null)
{
@@ -393,8 +393,26 @@
}
}
break;
- case SPK.OtherCommon:
-
+ case SPK.OtherCommon://2024-02-01 15:19:28
+ foreach (var attr in f.status)
+ {
+ if (attr.key == FunctionAttributeKey.OnOff)
+ {
+ byte onOffValue = 0;
+ switch (attr.value)
+ {
+ case "on":
+ onOffValue = 0;
+ break;
+ case "off":
+ onOffValue = 255;
+ break;
+ }
+ ControlBytesSend(Command.SetCommonSwitch, f.localFunction.bus.SubnetID, f.localFunction.bus.DeviceID,
+ new byte[] { f.localFunction.bus.LoopId, onOffValue });
+ break;
+ }
+ }
break;
}
}
@@ -446,21 +464,24 @@
{
case SPK.LightCCT:
#region cct light
- byte b0 = 100;
- if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
+ byte b0 = Convert.ToByte(function.lastBrightness);
+ if (commandDictionary.ContainsKey(FunctionAttributeKey.Brightness))
{
- if (function.trait_on_off.curValue.ToString() == "off")
- {
- b0 = 0;
- }
- else
- {
- b0 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
- }
+ b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
}
else
{
- b0 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
+ if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
+ {
+ if (function.trait_on_off.curValue.ToString() == "off")
+ {
+ b0 = 0;
+ }
+ else
+ {
+ b0 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
+ }
+ }
}
var bytes0 = new byte[] { function.bus.LoopId,
b0,
@@ -474,21 +495,24 @@
break;
case SPK.LightRGB:
#region rgb light
- byte b = 100;
- if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
+ byte b = Convert.ToByte(function.lastBrightness);
+ if (commandDictionary.ContainsKey(FunctionAttributeKey.Brightness))
{
- if (function.trait_on_off.curValue.ToString() == "off")
- {
- b = 0;
- }
- else
- {
- b = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
- }
+ b = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
}
else
{
- b = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
+ if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
+ {
+ if (function.trait_on_off.curValue.ToString() == "off")
+ {
+ b = 0;
+ }
+ else
+ {
+ b = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
+ }
+ }
}
var tempLight = new Light();
var bytes = new byte[] { function.bus.LoopId,
@@ -503,21 +527,24 @@
break;
case SPK.LightDimming:
#region dimming light
- byte b1 = 100;
- if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
+ byte b1 = Convert.ToByte(function.lastBrightness);
+ if (commandDictionary.ContainsKey(FunctionAttributeKey.Brightness))
{
- if (function.trait_on_off.curValue.ToString() == "off")
- {
- b1 = 0;
- }
- else
- {
- b1 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
- }
+ b1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
}
else
{
- b1 = Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Brightness));
+ if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff))
+ {
+ if (function.trait_on_off.curValue.ToString() == "off")
+ {
+ b1 = 0;
+ }
+ else
+ {
+ b1 = function.lastBrightness == 0 ? (byte)100 : Convert.ToByte(function.lastBrightness);
+ }
+ }
}
ControlBytesSend(Command.SetSingleLight, subnetId, deviceId, new byte[] {
function.bus.LoopId,
@@ -708,7 +735,7 @@
0,0,0,0,0,0,0,onoff,mode,fan,temp,sanfan});
break;
- case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:
+ case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:case SPK.HvacFloorHeatPanel:
var fhTemp = new FloorHeating();
if (function.Fh_Mode_Temp.Count == 4)
{
@@ -933,7 +960,7 @@
case SPK.HvacAC:
ControlBytesSend(Command.ReadACMode, subnetId, deviceId, new byte[] { function.bus.LoopId });
break;
- case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:
+ case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:case SPK.HvacFloorHeatPanel:
ControlBytesSend(Command.ReadFloorHeat, subnetId, deviceId, new byte[] { function.bus.LoopId });
break;
case SPK.HvacFan:
@@ -1191,6 +1218,7 @@
/// </summary>
public void SearchLocalGateway(bool broadcast = false)
{
+ //MainPage.Log("SearchLocalGateway");
try
{
var sendJob = new JObject { { "id", Control.Ins.msg_id.ToString() }, { "time_stamp", Utlis.GetTimestamp ()} };
--
Gitblit v1.8.0