wxr
2020-12-22 a56a485926a8927f904d7f4795c371c25b35753a
HDL_ON/DAL/DriverLayer/Control.cs
@@ -262,7 +262,7 @@
        /// <returns></returns>
        public void SendWriteCommand(Function function, Dictionary<string, string> commandDictionary)
        {
            function.usageCount++;
            function.controlCounter++;
            function.refreshTime = DateTime.Now;
            //如果是控制调光的开时,亮度值不能为0
@@ -275,6 +275,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 +320,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($"发送HDL-Link数据:{functionControlDataJson}");
                }
            }
        }
@@ -364,6 +372,7 @@
                    };
                    var functionControlDataJson = Newtonsoft.Json.JsonConvert.SerializeObject(readDataObj);
                    var sendBytes = Ins.ConvertSendBodyData(CommunicationTopic.ct.ReadStatus, functionControlDataJson);
                    MainPage.Log($"发送HDL-Link数据:{functionControlDataJson}");
                    new Control_Udp().SendLocalHdlLinkData(sendBytes, readDataObj.id);
                }
            }
@@ -424,7 +433,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 +473,10 @@
                            break;
                    }
                }
                MainPage.Log($"time 1 :{receiveObj.Topic}");
                //验证有效数据长度
                //if (res[1].Length != receiveObj.Length)
                //{
@@ -498,6 +511,7 @@
                    }
                }
                else if (receiveObj.Topic == CommunicationTopic.ct.ReadStatus + "_reply" ||
                    receiveObj.Topic == CommunicationTopic.ct.ControlFunctionTopic + "_reply" ||
                    receiveObj.Topic == CommunicationTopic.ct.GatewayUpStatus)
                {
                    //TODO 暂时不传正确的数据上去,如果后面要优化前面这些代码
@@ -553,7 +567,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 +638,7 @@
                                            }
                                        }
                                        lightCCT.lastState = Language.StringByID(StringId.Brightness) + " : " + lightCCT.brightness + "%";
                                        DimmerPage.UpdataStates(lightCCT);
                                        ColorTureLampPage.UpdataStates(lightCCT);
                                    }
                                    break;
                                case SPK.CurtainSwitch: