From ba275a7b58e56c61820ffccc86571447b2997e52 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期四, 05 八月 2021 16:18:00 +0800
Subject: [PATCH] 2021-08-05 1.更新

---
 HDL_ON/DAL/DriverLayer/Packet.cs |   50 ++++++++++++++++++++++++++++++++++----------------
 1 files changed, 34 insertions(+), 16 deletions(-)

diff --git a/HDL_ON/DAL/DriverLayer/Packet.cs b/HDL_ON/DAL/DriverLayer/Packet.cs
index ad530d3..5994565 100644
--- a/HDL_ON/DAL/DriverLayer/Packet.cs
+++ b/HDL_ON/DAL/DriverLayer/Packet.cs
@@ -97,7 +97,8 @@
                 {
                     ddd += bb + ",";
                 }
-                MainPage.Log(ddd);
+                MainPage.Log($"bus鍛戒护:" + ((int)command).ToString("X").PadLeft(4, '0') + " : 鏁版嵁:" + ddd);
+                //MainPage.Log($"bus鍛戒护:"+ ((int)command) + " : 鏁版嵁:" + ddd);
 #endif
                 //澶勭悊鏄惁瑕侀噸鍙戞暟鎹�
                 ManagerReceive(subnetID, deviceID, command, usefulBytes);
@@ -179,7 +180,7 @@
                                     light.trait_on_off.curValue = receiveBytes[light.bus.LoopId] == 0 ? "off" : "on";
                                     if (light.trait_on_off.curValue.ToString() == "on")
                                     {
-                                        light.SetAttrState(FunctionAttributeKey.Brightness, receiveBytes[2].ToString());
+                                        light.SetAttrState(FunctionAttributeKey.Brightness, receiveBytes[i+1].ToString());
                                         light.lastState = Language.StringByID(StringId.Brightness) + " : " + receiveBytes[2] + "%";
                                     }
                                     HomePage.UpdataFunctionStates(light);
@@ -227,25 +228,40 @@
                         break;
                     case Command.SetLogicLoopColorACK:
                     case Command.ReadLogicLoopColorACK:
-                        foreach (var rgb in FunctionList.List.GetLightList())
+                        foreach (var lightTeme in FunctionList.List.GetLightList())
                         {
-                            if (rgb.GetBusId() == subnetID + "_" + deviceID + "_" + receiveBytes[0])
+                            if (lightTeme.GetBusId() == subnetID + "_" + deviceID + "_" + receiveBytes[0])
                             {
-                                if (rgb.spk == SPK.LightRGB)
+                                if (lightTeme.spk == SPK.LightRGB)
                                 {
-                                    rgb.trait_on_off.curValue = receiveBytes[1] > 0 ? "on" : "off";
+                                    lightTeme.trait_on_off.curValue = receiveBytes[1] > 0 ? "on" : "off";
                                     if (receiveBytes[1] > 0)
                                     {
-                                        rgb.SetAttrState(FunctionAttributeKey.Brightness, receiveBytes[1].ToString());
-                                        rgb.lastState = Language.StringByID(StringId.Brightness) + " : " + receiveBytes[1] + "%";
+                                        lightTeme.SetAttrState(FunctionAttributeKey.Brightness, receiveBytes[1].ToString());
+                                        lightTeme.lastState = Language.StringByID(StringId.Brightness) + " : " + receiveBytes[1] + "%";
                                     }
-                                    new Light().SetRGBcolor(new byte[] { receiveBytes[6], receiveBytes[7], receiveBytes[8] }, rgb);
+                                    new Light().SetRGBcolor(new byte[] { receiveBytes[6], receiveBytes[7], receiveBytes[8] }, lightTeme);
 
-                                    HomePage.UpdataFunctionStates(rgb);
-                                    RoomPage.UpdataStates(rgb);
-                                    FunctionPage.UpdataStates(rgb);
-                                    ClassificationPage.UpdataInfo(rgb);
-                                    RGBPage.UpdataStates(rgb);
+                                    HomePage.UpdataFunctionStates(lightTeme);
+                                    RoomPage.UpdataStates(lightTeme);
+                                    FunctionPage.UpdataStates(lightTeme);
+                                    ClassificationPage.UpdataInfo(lightTeme);
+                                    RGBPage.UpdataStates(lightTeme);
+                                }else if(lightTeme.spk == SPK.LightCCT)
+                                {
+                                    lightTeme.trait_on_off.curValue = receiveBytes[1] > 0 ? "on" : "off";
+                                    if (receiveBytes[1] > 0)
+                                    {
+                                        lightTeme.SetAttrState(FunctionAttributeKey.Brightness, receiveBytes[1].ToString());
+                                        lightTeme.lastState = Language.StringByID(StringId.Brightness) + " : " + receiveBytes[1] + "%";
+                                    }
+                                    new Light().SetCCT(new byte[] { receiveBytes[6], receiveBytes[7] }, lightTeme);
+
+                                    HomePage.UpdataFunctionStates(lightTeme);
+                                    RoomPage.UpdataStates(lightTeme);
+                                    FunctionPage.UpdataStates(lightTeme);
+                                    ClassificationPage.UpdataInfo(lightTeme);
+                                    ColorTureLampPage.UpdataStatus(lightTeme);
                                 }
                             }
                         }
@@ -666,8 +682,8 @@
                             /// 10	杩囨护缃戝墿浣�	%
                             /// 11	杩囨护缃戜娇鐢ㄨ秴鏃�	1 瓒呮椂 0 鏃� true/false
                             airFresh.SetAttrState(FunctionAttributeKey.OnOff, receiveBytes[2] == 0 ? "off" : "on");
-                            airFresh.SetAttrState(FunctionAttributeKey.Mode, receiveBytes[3] == 1 ? "humidification" : "fan");
-                            airFresh.SetAttrState(FunctionAttributeKey.Energy, receiveBytes[4] == 1 ? "true" : "false");
+                            airFresh.SetAttrState(FunctionAttributeKey.Mode, receiveBytes[3] == 1 ? "fan" : "humidification");
+                            airFresh.SetAttrState(FunctionAttributeKey.Energy, receiveBytes[4] == 1 ? "false" : "true");
                             switch (receiveBytes[5])
                             {
                                 case 0:
@@ -688,6 +704,8 @@
                             airFresh.SetAttrState(FunctionAttributeKey.IndoorHumidity, receiveBytes[8].ToString());
                             airFresh.SetAttrState(FunctionAttributeKey.FilterRemain, receiveBytes[9].ToString());
                             airFresh.SetAttrState(FunctionAttributeKey.FilterTimeout, receiveBytes[10] == 1 ? "true" : "false");
+                            //璁惧鐘舵�佹帹閫�
+                            Stan.HdlFormLogic.Current.DeviceStatuPush(airFresh, true);
                         }
                         break;
                 }

--
Gitblit v1.8.0