From de311ae5df40e514ff8d1cea3de60bff66b07c18 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期三, 23 十二月 2020 14:24:20 +0800
Subject: [PATCH] 111

---
 HDL_ON/DAL/DriverLayer/Control.cs |   28 +++++++++++++++++++++++-----
 1 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/HDL_ON/DAL/DriverLayer/Control.cs b/HDL_ON/DAL/DriverLayer/Control.cs
index 3ef6d42..8546d1d 100644
--- a/HDL_ON/DAL/DriverLayer/Control.cs
+++ b/HDL_ON/DAL/DriverLayer/Control.cs
@@ -241,7 +241,11 @@
         {
             if (Ins.IsRemote || DB_ResidenceData.Instance.GatewayType == 1)
             {
-                ControlAProtocolScene(scene);
+                new System.Threading.Thread(() =>
+                {
+                    ControlAProtocolScene(scene);
+                })
+                { IsBackground = true }.Start();
             }
             else
             {
@@ -262,7 +266,7 @@
         /// <returns></returns>
         public void SendWriteCommand(Function function, Dictionary<string, string> commandDictionary)
         {
-            function.usageCount++;
+            function.controlCounter++;
             function.refreshTime = DateTime.Now;
 
             //濡傛灉鏄帶鍒惰皟鍏夌殑寮�鏃讹紝浜害鍊间笉鑳戒负0
@@ -275,6 +279,13 @@
                         if (commandDictionary[FunctionAttributeKey.Brightness] == "0")
                         {
                             commandDictionary[FunctionAttributeKey.Brightness] = "100";
+                        }
+                    }
+                    if (commandDictionary[FunctionAttributeKey.OnOff] == "off")
+                    {
+                        if (commandDictionary[FunctionAttributeKey.Brightness] != "0")
+                        {
+                            commandDictionary[FunctionAttributeKey.Brightness] = "0";
                         }
                     }
                 }
@@ -313,6 +324,7 @@
                     var functionControlDataJson = Newtonsoft.Json.JsonConvert.SerializeObject(functionControlDataObj);
                     var sendBytes = Ins.ConvertSendBodyData(CommunicationTopic.ct.ControlFunctionTopic, functionControlDataJson);
                     new Control_Udp().SendLocalHdlLinkData(sendBytes, functionControlDataObj.id);
+                    MainPage.Log($"鍙戦�丠DL-Link鏁版嵁:{functionControlDataJson}");
                 }
             }
         }
@@ -364,6 +376,7 @@
                     };
                     var functionControlDataJson = Newtonsoft.Json.JsonConvert.SerializeObject(readDataObj);
                     var sendBytes = Ins.ConvertSendBodyData(CommunicationTopic.ct.ReadStatus, functionControlDataJson);
+                    MainPage.Log($"鍙戦�丠DL-Link鏁版嵁:{functionControlDataJson}");
                     new Control_Udp().SendLocalHdlLinkData(sendBytes, readDataObj.id);
                 }
             }
@@ -424,7 +437,7 @@
 
             string sendDataString = topicString + lengthString + bodyDataString;
             byte[] sendDataBytes = Encoding.ASCII.GetBytes(sendDataString);
-            MainPage.Log($"杞崲HDL-Link鏁版嵁\r\n{sendDataString}\r\n");
+            //MainPage.Log($"杞崲HDL-Link鏁版嵁\r\n{sendDataString}\r\n");
 
             return sendDataBytes;
         }
@@ -464,6 +477,10 @@
                             break;
                     }
                 }
+
+                MainPage.Log($"time 1 :{receiveObj.Topic}");
+
+
                 //楠岃瘉鏈夋晥鏁版嵁闀垮害
                 //if (res[1].Length != receiveObj.Length)
                 //{
@@ -498,6 +515,7 @@
                     }
                 }
                 else if (receiveObj.Topic == CommunicationTopic.ct.ReadStatus + "_reply" ||
+                    receiveObj.Topic == CommunicationTopic.ct.ControlFunctionTopic + "_reply" ||
                     receiveObj.Topic == CommunicationTopic.ct.GatewayUpStatus)
                 {
                     //TODO 鏆傛椂涓嶄紶姝g‘鐨勬暟鎹笂鍘伙紝濡傛灉鍚庨潰瑕佷紭鍖栧墠闈㈣繖浜涗唬鐮�
@@ -553,7 +571,7 @@
                                                 localAttr.curValue = attr.value;
                                             }
                                         }
-                                        MainPage.Log($"{localSwitch.trait_on_off.curValue}: ");
+                                        //rgb.lastState = Language.StringByID(StringId.Brightness) + " : " + rgb.brightness + "%";
                                         RelayPage.UpdataState(localSwitch);
                                     }
                                     break;
@@ -624,7 +642,7 @@
                                             }
                                         }
                                         lightCCT.lastState = Language.StringByID(StringId.Brightness) + " : " + lightCCT.brightness + "%";
-                                        DimmerPage.UpdataStates(lightCCT);
+                                        ColorTureLampPage.UpdataStates(lightCCT);
                                     }
                                     break;
                                 case SPK.CurtainSwitch:

--
Gitblit v1.8.0