From 2e7e5f9af5b32cfe1fc3c6ba40bf7eb984bbd0a4 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期一, 11 五月 2020 17:52:06 +0800 Subject: [PATCH] ??????? --- ZigbeeApp/Shared/Phone/ZigBee/Device/Panel.cs | 274 +++++++++++++++++++----------------------------------- 1 files changed, 95 insertions(+), 179 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/Panel.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/Panel.cs index 4de23e1..360323a 100755 --- a/ZigbeeApp/Shared/Phone/ZigBee/Device/Panel.cs +++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/Panel.cs @@ -18,57 +18,23 @@ /// 鎸夐敭妯″紡锛堢鏈夊姛鑳斤級 /// </summary> public int panelMode = 65535; - /// <summary> - ///鎸夐敭寮�鐘舵�侊紙鎸囩ず锛変寒搴� - /// </summary> - public int panelDirectionsLevel = -1; - - /// <summary> - /// 鎸夐敭鍏崇姸鎬侊紙鑳屽厜锛変寒搴� - /// </summary> - public int panelBacklightLevel = -1; /// <summary> /// 褰撳墠閫夋嫨妯″紡 /// </summary> + [Newtonsoft.Json.JsonIgnore] public string currentKeySelectModeText = ""; /// <summary> /// 褰撳墠閫夋嫨鐨勬ゼ灞侷D /// </summary> + [Newtonsoft.Json.JsonIgnore] public string currentSelectFloorId = string.Empty; /// <summary> - /// 褰撳墠寮�鍏虫ā寮� + /// 褰撳墠閫夋嫨鐨勬埧闂碔D銆愭柊椋庨潰鏉裤�� /// </summary> - public string CurrentSwitchMode = ""; - /// <summary> - /// 褰撳墠灞炴�фā寮� - /// </summary> - public int currentClusterID; + [Newtonsoft.Json.JsonIgnore] + public string currentSelectRoomId = string.Empty; - /// <summary> - /// 褰撳墠璋冨厜妯″紡 - /// </summary> - public string CurrentDimmerMode = ""; - - /// <summary> - /// 褰撳墠閬槼妯″紡 - /// </summary> - public string CurrentCurtainMode = ""; - - /// <summary> - /// 褰撳墠鎴块棿ID - /// </summary> - public string RoomId = ""; - - /// <summary> - /// 褰撳墠閫変腑鐨勫満鏅疘D - /// </summary> - public string curSelectSceneID = ""; - - /// <summary> - /// 鏈湴妤煎眰鎴块棿缁戝畾鍒楄〃 - /// </summary> - public Dictionary<int, FloorRoomBindObj> FloorRoomBindObjList = new Dictionary<int, FloorRoomBindObj> { }; /// <summary> /// 缁戝畾鐨勬ゼ灞傛埧闂翠俊鎭� /// </summary> @@ -109,12 +75,8 @@ // <summary> /// 鎸夐敭涓缁戝畾鐨勭洰鏍囧垪琛� /// </summary> - public System.Collections.Generic.List<BindListResponseObj> bindList = new System.Collections.Generic.List<BindListResponseObj> { }; - - /// <summary> - /// 鎸夐敭鏀寔鐨勭鏈夋ā寮忓垪琛� - /// </summary> - public System.Collections.Generic.Dictionary<int, string> priDeviceModeFunList = new System.Collections.Generic.Dictionary<int, string> { }; + [Newtonsoft.Json.JsonIgnore] + public List<BindListResponseObj> bindList = new List<BindListResponseObj>(); /// <summary> /// 绉佹湁鍔熻兘绫� @@ -155,6 +117,7 @@ /// <para>304:CurtainDownstop,绐楀笜涓嬮檷鍋�</para> /// </summary> public List<int> privateFuncThirdLevelList = new List<int>(); + #region 鑾峰彇闈㈡澘鐨勭鏈変俊鎭�. /// <summary> ///鑾峰彇闈㈡澘鐨勭鏈変俊鎭� @@ -188,8 +151,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -204,18 +166,17 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new PanelPrivateFunctionsResponseAllInfo { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length > 12) { @@ -311,7 +272,6 @@ } break; } - panelPrivateFunctionsResponseInfo = tempD; result = new PanelPrivateFunctionsResponseAllInfo { panelPrivateFunctionsResponseInfo = tempD }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_command:0003_{topic}"); } @@ -358,17 +318,8 @@ /// PIR閰嶇疆鍙傛暟鍥炲 /// </summary> [System.Serializable] - public class PanelPrivateFunctionsResponseAllInfo + public class PanelPrivateFunctionsResponseAllInfo:ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 鍏夋劅绛夌骇涓暟锛圠ux鑳藉姏锛� /// <para>鏈夊嚑涓瓑绾у氨鏄剧ず鍑犱釜鍒诲害</para> @@ -379,7 +330,6 @@ /// <summary> /// 閰嶇疆鍙傛暟鍥炲 /// </summary> - public PanelPrivateFunctionsResponseInfo panelPrivateFunctionsResponseInfo; [System.Serializable] public class PanelPrivateFunctionsResponseInfo { @@ -712,8 +662,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -728,18 +677,17 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new ResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 16) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -891,8 +839,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -906,18 +853,17 @@ } if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new ResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 16) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -1118,10 +1064,6 @@ return data; } - /// <summary> - /// 鎸夐敭鎸囩ず鐏鑹蹭俊鎭� - /// </summary> - public KeyColorData keyColorData; // <summary> /// 鎸夐敭鎸囩ず鐏鑹蹭俊鎭� /// </summary> @@ -1269,8 +1211,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1284,18 +1225,17 @@ } if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new ResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 16) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -1402,7 +1342,7 @@ ///<summary > /// 閰嶇疆鎸夐敭鎸囩ず鐏潰鏉胯妭鑳芥ā寮� /// <para>modeEnable:鑺傝兘妯″紡浣胯兘</para> - /// <para>modeTime:鏃犳搷浣滆繘鍏ヨ妭鑳芥ā寮忔椂闂� 0-ff</para> + /// <para>modeTime:鏃犳搷浣滆繘鍏ヨ妭鑳芥ā寮忔椂闂� 0-ffff</para> /// <para>鑺傝兘妯″紡浜害:0-100</para> /// </summary> public async System.Threading.Tasks.Task<ResponseAllData> SetKeyModeAsync(bool modeEnable, int modeTime, int level) @@ -1422,8 +1362,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1438,18 +1377,17 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new ResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 16) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -1509,11 +1447,11 @@ string SetPanelModeModeData(bool modeEnable, int modeTime, int modelevel) { string data = ""; - string dataLength = "07"; + string dataLength = "08"; string dataComand1 = "03"; string dataComand2 = "04"; string dataSerialNum = "01"; - string addDataLength = "03"; + string addDataLength = "04"; string mode = ""; string time = ""; string level = ""; @@ -1527,17 +1465,30 @@ { mode = "00"; } - var sbString1 = new System.Text.StringBuilder(); - string temp = Convert.ToString(modeTime, 16); - switch (temp.Length) + + if (modeTime == -1) { - case 1: - time = "0" + temp; - break; - case 2: - time = temp; - break; + //褰撹妭鑳芥ā寮忔病鏈夌粰鏃堕棿锛岄粯璁ょ粰60绉� + modeTime = 60; } + + var tempBytes = new byte[2]; + for (int i = 0; i < 2; i++) + { + tempBytes[i] = (byte)(modeTime >> (i * 8) & 0xff); + } + var time1 = Convert.ToString(tempBytes[0], 16); + var time2 = Convert.ToString(tempBytes[1], 16); + if (time1.Length == 1) + { + time1 = "0" + time1; + } + if (time2.Length == 1) + { + time2 = "0" + time2; + } + + time = (time1 + time2).ToUpper(); var sbString2 = new System.Text.StringBuilder(); string temp2 = Convert.ToString(modelevel, 16); @@ -1551,10 +1502,9 @@ break; } - sbString1.Append(time.ToUpper()); sbString2.Append(level.ToUpper()); data = dataLength + dataComand1 + dataComand2 + dataSerialNum + addDataLength + - mode + sbString1 + sbString2; + mode + time + sbString2; } catch { }; @@ -1584,8 +1534,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1600,18 +1549,17 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new ResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 16) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -1721,8 +1669,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1737,18 +1684,17 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new KeyColorDataResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 24) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -1812,7 +1758,6 @@ tempR.keyNum = KeyNum.Key15; break; } - keyColorData = tempR; result = new KeyColorDataResponseAllData { keyColorData = tempR }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_command:0404_{ topic}"); } @@ -1974,8 +1919,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1990,18 +1934,17 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new PanelSwitchLevelInfo { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 14) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -2009,8 +1952,6 @@ { var level1 = Convert.ToInt32(data[10].ToString() + data[11].ToString(), 16); var level2 = Convert.ToInt32(data[12].ToString() + data[13].ToString(), 16); - panelDirectionsLevel = level1; - panelBacklightLevel = level2; result = new PanelSwitchLevelInfo { panelDirectionsLevel = level1, panelBacklightLevel = level2 }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_command:0406_{ topic}"); } @@ -2125,8 +2066,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -2141,19 +2081,18 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new PanelSwitchLevelResponInfo { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; - if (data.Length == 16) + var data = clientDataPassthroughResponseData.PassData; + if (data.Length == 18) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); if (command == "0409") @@ -2167,9 +2106,8 @@ { tempR.enable = false; } - tempR.time = Convert.ToInt32(data[12].ToString() + data[13].ToString(), 16); - tempR.level = Convert.ToInt32(data[14].ToString() + data[15].ToString(), 16); - panelSaveEnergyModeInfo = tempR; + tempR.time = Convert.ToInt32(data[14].ToString() + data[15].ToString() + data[12].ToString() + data[13].ToString(), 16); + tempR.level = Convert.ToInt32(data[16].ToString() + data[17].ToString(), 16); result = new PanelSwitchLevelResponInfo { panelSaveEnergyModeInfo = tempR }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_command:0408_{ topic}"); } @@ -2258,10 +2196,6 @@ } /// <summary> - /// 鎸夐敭鑺傝兘妯″紡淇℃伅 - /// </summary> - public PanelSaveEnergyModeInfo panelSaveEnergyModeInfo; - /// <summary> /// 鑾峰彇鎸夐敭鑺傝兘妯″紡閰嶇疆鐘舵�佹暟鎹� /// </summary> [System.Serializable] @@ -2304,8 +2238,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -2320,18 +2253,17 @@ if (topic == gatewayID + "/" + "ZbDataPassthrough") { - var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - if (gatewayTemp.clientDataPassthroughResponseData == null) + if (clientDataPassthroughResponseData == null) { result = new PanelProximitySensorResponInfo { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + if (clientDataPassthroughResponseData?.PassData != null) { - var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + var data = clientDataPassthroughResponseData.PassData; if (data.Length == 20) { var command = data[4].ToString() + data[5].ToString() + data[2].ToString() + data[3].ToString(); @@ -2348,7 +2280,6 @@ } tempR.sensorDistance = Convert.ToInt32(data[14].ToString() + data[15].ToString() + data[12].ToString() + data[13].ToString(), 16); tempR.sensorDelayTime = Convert.ToInt32(data[18].ToString() + data[19].ToString() + data[16].ToString() + data[17].ToString(), 16); - panelProximitySensorInfo = tempR; result = new PanelProximitySensorResponInfo { panelProximitySensorInfo = tempR }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_command:0408_{ topic}"); } @@ -2436,10 +2367,6 @@ } /// <summary> - /// 鑾峰彇鎺ヨ繎浼犳劅閰嶇疆 - /// </summary> - public PanelProximitySensorInfo panelProximitySensorInfo; - /// <summary> /// 鑾峰彇鎺ヨ繎浼犳劅閰嶇疆鏁版嵁 /// </summary> [System.Serializable] @@ -2485,8 +2412,7 @@ // if (topic == gatewayID + "/" + "Error_Respon") // { - // var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - // var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + // var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); // if (temp == null) // { @@ -2500,18 +2426,17 @@ // } // if (topic == gatewayID + "/" + "ZbDataPassthrough") // { - // var gatewayTemp = new ZbGateway() { DataID = jobject.Value<int>("Data_ID") }; - // gatewayTemp.clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); + // var clientDataPassthroughResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<ClientDataPassthroughResponseData>(jobject["Data"].ToString()); - // if (gatewayTemp.clientDataPassthroughResponseData == null) + // if (clientDataPassthroughResponseData == null) // { // result = new PanelSleepGroupResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; // } // else // { - // if (gatewayTemp.clientDataPassthroughResponseData?.PassData != null) + // if (clientDataPassthroughResponseData?.PassData != null) // { - // var data = gatewayTemp.clientDataPassthroughResponseData.PassData; + // var data = clientDataPassthroughResponseData.PassData; // if (data.Length == 14) // { // var tempR = new PanelSleepGroupResponseData(); @@ -2876,8 +2801,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -2891,7 +2815,6 @@ if (topic == gatewayID + "/" + "SetWritableValue_Respon") { - var gatewayTemp = new ZbGateway() { DeviceID = jobject.Value<int>("Device_ID"), DeviceAddr = jobject.Value<string>("DeviceAddr"), DeviceEpoint = jobject.Value<int>("Epoint"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; var tempData = Newtonsoft.Json.JsonConvert.DeserializeObject<SetWritableValueResponData>(jobject["Data"].ToString()); if (tempData == null) @@ -3047,8 +2970,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = Gateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ZbGateway.ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -3066,8 +2988,6 @@ var tempEpoint = jobject.Value<int>("Epoint"); var dataId = jobject.Value<int>("Data_ID"); - var lightSwitch = new Panel { DeviceID = deviceID, DeviceAddr = deviceAddr, DeviceEpoint = tempEpoint, DataID = dataId }; - lightSwitch.DeviceStatusReport = Newtonsoft.Json.JsonConvert.DeserializeObject<Panel.DeviceStatusReportData>(jobject["Data"].ToString()); if ((DeviceType)(deviceID) == DeviceType.OnOffSwitch) { var tempData = Newtonsoft.Json.JsonConvert.DeserializeObject<Panel.DeviceStatusReportData>(jobject["Data"].ToString()); @@ -3237,10 +3157,6 @@ public GetSceneInfo getSceneInfo; } - /// <summary> - /// 鑾峰彇鍦烘櫙淇℃伅 - /// </summary> - public GetSceneInfo sceneGetInfo; /// <summary> /// 鑾峰彇鍦烘櫙淇℃伅 /// </summary> -- Gitblit v1.8.0