From f16fd06aa226e9f97a27858624d4ea7cf8975d25 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 07 五月 2024 17:24:38 +0800
Subject: [PATCH] 增加了萤石摄像头

---
 HDL_ON/DAL/DriverLayer/Control_Udp.cs |  108 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 107 insertions(+), 1 deletions(-)

diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
index b715e44..7fd1e36 100644
--- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs
+++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
@@ -302,7 +302,8 @@
                             break;
                         case SPK.LightRGB:
                             break;
-                        case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:
+                        case SPK.HvacFloorHeat:
+                        case SPK.FloorHeatStandard:
                             if (f.status.Find((obj)=>obj.key ==FunctionAttributeKey.Mode) == null)
                             {
                                 foreach (var dic in f.status)
@@ -391,6 +392,27 @@
                                     break;
                                 }
                             }
+                            break;
+                        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;
                     }
                 }
@@ -803,6 +825,86 @@
                     case SPK.PanelSocket:
                         ControlBytesSend(Command.SetSingleLight, subnetId, deviceId, new byte[] { function.bus.LoopId, function.trait_on_off.curValue.ToString() == "on" ? (byte)100 : (byte)0 });
                         break;
+                    case SPK.AirFreshJinmao:case SPK.HvacAirFreshJinmao:
+                        #region AirFresh
+                        //1   鏂伴缂栧彿    1~200
+                        //2   绫诲瀷 绗笁鏂圭被鍨�  0锛氶噾鑼傛柊椋�
+
+                        //3   寮�鍏�  0 - 鍏虫満锛�1 - 寮�鏈�
+                        byte switchValue = 0;
+                        if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff) == true
+                            && commandDictionary[FunctionAttributeKey.OnOff] == "on")
+                        {
+                            switchValue = 1;
+                        }
+
+                        //4   杩愯妯″紡    1 - 閫氶锛�2 - 鍔犳箍
+                        byte airFreshMode = 1;
+                        if (commandDictionary.ContainsKey(FunctionAttributeKey.Mode) == true
+                            && commandDictionary[FunctionAttributeKey.Mode] == "humidification")
+                        {
+                            airFreshMode = 2;
+                        }
+                        //5   鑺傝兘鑸掗�傞�夋嫨  1 - 鑸掗�傦紝2 - 鑺傝兘
+                        byte airFreshEnergy = 1;
+                        if (commandDictionary.ContainsKey(FunctionAttributeKey.Energy) == true
+                           && commandDictionary[FunctionAttributeKey.Energy] == "true")
+                        {
+                            airFreshEnergy = 2;
+                        }
+                        //6   椋庨�熸。浣�    0 - 鑷姩锛�1 - 1妗o紝2 - 2妗o紝3 - 3妗�
+                        byte airFreshFan = 0;
+                        if (commandDictionary.ContainsKey(FunctionAttributeKey.FanSpeed) == true)
+                        {
+                            switch (commandDictionary[FunctionAttributeKey.FanSpeed])
+                            {
+                                case "auto":
+                                    airFreshFan = 0;
+                                    break;
+                                case "level_1":
+                                    airFreshFan = 1;
+                                    break;
+                                case "level_2":
+                                    airFreshFan = 2;
+                                    break;
+                                case "level_3":
+                                    airFreshFan = 3;
+                                    break;
+                            }
+                        }
+                        //7   婀垮害璁惧畾 %
+                        byte hum = 0;
+                        if (commandDictionary.ContainsKey(FunctionAttributeKey.Humidity) == true)
+                        {
+                            hum = Convert.ToByte(commandDictionary[FunctionAttributeKey.Humidity]);
+                        }
+                        //8   瀹ゅ唴娓╁害鍊�   鈩�
+                        byte indoorTemp_airFrsh = 0;
+                        if (commandDictionary.ContainsKey(FunctionAttributeKey.IndoorTemp) == true)
+                        {
+                            indoorTemp_airFrsh = Convert.ToByte(commandDictionary[FunctionAttributeKey.IndoorTemp]);
+                        }
+                        byte indoorHumidity_airFrsh = 0;
+                        if (commandDictionary.ContainsKey(FunctionAttributeKey.IndoorHumidity) == true)
+                        {
+                            indoorHumidity_airFrsh = Convert.ToByte(commandDictionary[FunctionAttributeKey.IndoorHumidity]);
+                        }
+                        //9   瀹ゅ唴婀垮害鍊�   鈩�
+                        //10  杩囨护缃戝墿浣� %
+                        //11  杩囨护缃戜娇鐢ㄨ秴鏃� 1 瓒呮椂 0 鏃�    
+                        ControlBytesSend(Command.FreshAirControl_JinMao, subnetId, deviceId, new byte[] {
+                                    function.bus.LoopId,0, switchValue ,
+                                    airFreshMode,airFreshEnergy,
+                                    airFreshFan,
+                                    hum,
+                                    indoorTemp_airFrsh,
+                                    indoorHumidity_airFrsh,
+                                    //Convert.ToByte( function.GetAttrState(FunctionAttributeKey.FilterRemain)),
+                                    //function.GetAttrState(FunctionAttributeKey.FilterTimeout) =="true"?1:0,
+                                    0,0
+                                });
+                        #endregion
+                        break;
                 }
                 #region 鍙戦�佸懡浠ょ珛鍗虫洿鏂癠I
                 //HomePage.UpdataFunctionStates(function);
@@ -875,6 +977,10 @@
                     case SPK.SensorCO2:
                         ControlBytesSend(Command.ReadDeviceLoopInfo, subnetId, deviceId, new byte[] { 5, 7, function.bus.LoopId });
                         break;
+                    case SPK.AirFreshJinmao:
+                    case SPK.HvacAirFreshJinmao:
+                        ControlBytesSend(Command.FreshAirRead_JinMao, subnetId, deviceId, new byte[] { function.bus.LoopId });
+                        break;
                 }
             }
             catch (Exception ex)

--
Gitblit v1.8.0