From 0e0584b87851c56745bf73b1a961b80613dd0721 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期二, 19 五月 2020 16:35:16 +0800 Subject: [PATCH] 2020-05-19-4 --- ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs | 494 +++++------------------------------------------------- 1 files changed, 48 insertions(+), 446 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs b/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs index 7006480..baa735d 100755 --- a/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs +++ b/ZigbeeApp/Shared/Phone/ZigBee/Device/Scene.cs @@ -36,35 +36,6 @@ } /// <summary> - /// 缃戝叧涓満鏅澶囧垪琛� - /// </summary> - //[Newtonsoft.Json.JsonIgnore] - //public List<GetSceneDeviceListInfo> SceneDeviceList = new List<GetSceneDeviceListInfo>(); - - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - ErrorResponData errResponData; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - [System.Serializable] - public class ErrorResponData - { - /// <summary> - /// Error鍙傛暟鍚箟 - ///<para>1锛氱綉鍏虫棤娉曡В鏋愬懡浠ゆ暟鎹��</para> - ///<para>2锛氬崗璋冨櫒姝e湪鍗囩骇鎴栧浠�/鎭㈠鏁版嵁 - ///<para>3锛氭搷浣滆澶�/缁�/鍦烘櫙涓嶅瓨鍦�</para> - ///<para>4锛氬叾浠栭敊璇�</para> - ///<para>5锛氭暟鎹紶杈撻敊璇紙鍦ㄦ煇娆″鎴风鍚戠綉鍏冲彂閫佹暟鎹殑杩囩▼涓紝缃戝叧鍦ㄥ悎鐞嗘椂闂磋寖鍥村唴鎺ユ敹瀹㈡埛绔暟鎹笉瀹屾暣瀵艰嚧璇ラ敊璇彂鐢熴�傚瀹㈡埛绔悜缃戝叧涓�娆″彂閫�100涓瓧鑺傜殑鏁版嵁锛屼絾缃戝叧绛夊緟鎺ユ敹浜嗕竴绉掑彧鎺ユ敹浜�80涓瓧鑺傘�傚彂鐢熻閿欒锛岀綉鍏冲皢涓诲姩鍏抽棴瀹㈡埛绔繛鎺ワ級</para> - /// </summary> - public int Error; - } - - /// <summary> /// 绛夊緟浠庣綉鍏虫帴鏀舵暟鎹殑鏃堕棿 /// </summary> /// <value>The wait receive data time.</value> @@ -160,8 +131,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -175,16 +145,15 @@ if (topic == gatewayID + "/" + "Scene/GetNewId_Respon") { - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.getSceneIdData = Newtonsoft.Json.JsonConvert.DeserializeObject<Scene.GetSceneIdData>(jobject["Data"].ToString()); - if (scene.getSceneIdData == null) + var getSceneIdData = Newtonsoft.Json.JsonConvert.DeserializeObject<Scene.GetSceneIdData>(jobject["Data"].ToString()); + if (getSceneIdData == null) { d = new GetSceneIdAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { GetSceneAllInfoAsync(); - d = new GetSceneIdAllData { getSceneIdData = scene.getSceneIdData }; + d = new GetSceneIdAllData { getSceneIdData = getSceneIdData }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -239,17 +208,8 @@ /// 鍒涘缓涓�涓┖鍦烘櫙杩斿洖鐨勬暟鎹�,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class GetSceneIdAllData + public class GetSceneIdAllData:CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 鍒涘缓涓�涓┖鍦烘櫙杩斿洖鐨勬暟鎹� /// </summary> @@ -291,7 +251,7 @@ d = new GetSceneAllData { errorMessageBase = "褰撳墠娌℃湁涓荤綉鍏�" }; return d; } - ZbGateway.AllSceneList.Clear(); + var dateTime = DateTime.Now; Action<string, string> action = (topic, message) => { var gatewayID = topic.Split('/')[0]; @@ -299,8 +259,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -315,31 +274,15 @@ if (topic == gatewayID + "/" + "Scene/GetAllInfo_Respon") { dateTime = DateTime.Now; - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.sceneGetAllInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetSceneAllInfo>(jobject["Data"].ToString()); + var sceneGetAllInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetSceneAllInfo>(jobject["Data"].ToString()); - if (scene.sceneGetAllInfo == null) + if (sceneGetAllInfo == null) { d = new GetSceneAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - var info = ZbGateway.AllSceneList.Find(obj => obj.ScenesId == scene.sceneGetAllInfo.ScenesId); - if (info == null) - { - ZbGateway.AllSceneList.Add(scene.sceneGetAllInfo); - } - else - { - info.DeviceList = scene.sceneGetAllInfo.DeviceList; - info.DeviceSum = scene.sceneGetAllInfo.DeviceSum; - info.IsOpen = scene.sceneGetAllInfo.IsOpen; - info.ScenesId = scene.sceneGetAllInfo.ScenesId; - info.ScenesName = scene.sceneGetAllInfo.ScenesName; - info.ScenesNum = scene.sceneGetAllInfo.ScenesNum; - info.ScenesSum = scene.sceneGetAllInfo.ScenesSum; - } - d = new GetSceneAllData { getSceneAllInfo = scene.sceneGetAllInfo }; + d = new GetSceneAllData { getSceneAllInfo = sceneGetAllInfo }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -372,17 +315,8 @@ /// 鑾峰彇鎵�鏈夊満鏅殑鎵�鏈変俊鎭�,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class GetSceneAllData + public class GetSceneAllData:CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 鑾峰彇鎵�鏈夊満鏅殑鎵�鏈変俊鎭� /// </summary> @@ -396,7 +330,7 @@ /// 鑾峰彇鎵�鏈夊満鏅殑鎵�鏈変俊鎭� /// </summary> [System.Serializable] - public class GetSceneAllInfo:CommonDevice + public class GetSceneAllInfo { /// <summary> ///鍦烘櫙鎬绘暟 @@ -448,7 +382,6 @@ ///<para>2锛氬欢鏃舵垚鍛�</para> /// </summary> public int Type; - /// <summary> /// 璁惧mac鍦板潃 锛� ///<para>褰揟ype=0鏃跺瓨鍦ㄣ��</para> @@ -460,21 +393,15 @@ /// </summary> public int Epoint; /// <summary> - /// 璁惧鍚嶇О - /// </summary> - public string DeviceName; - /// <summary> /// 璁惧鍒楄〃 /// 褰揟ype=0鏃跺瓨鍦� /// </summary> public List<Safeguard.TaskListInfo> TaskList = new List<Safeguard.TaskListInfo>(); - /// <summary> /// 鍦烘櫙鎴愬憳鐨勫満鏅痠d /// <para>褰揟ype=1鏃跺瓨鍦�</para> /// </summary> public int ElseScenesId; - /// <summary> ///寤舵椂鎵ц鏃堕棿锛屽崟浣嶇銆� /// </summary> @@ -485,73 +412,6 @@ public int MemberNumber; } - #endregion - - #region 鑾峰彇鍦烘櫙鍒楄〃 - ///<summary > - ///鑾峰彇鍦烘櫙鍒楄〃 - ///</summary> - public static async System.Threading.Tasks.Task<List<GetSceneAllInfo>> GetSceneListAsync() - { - ZbGateway.AllSceneList.Clear(); - return await System.Threading.Tasks.Task.Run(async () => { - var dateTime = DateTime.Now; - GetSceneAllData d = null; - var mainGateway = ZbGateway.MainGateWay; - if (mainGateway == null) - { - d = new GetSceneAllData { errorMessageBase = "褰撳墠娌℃湁涓荤綉鍏�" }; - return null; - } - Action<string, string> action = (topic, message) => - { - var gatewayID = topic.Split('/')[0]; - var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); - - if (topic == gatewayID + "/" + "Scene/GetAllInfo_Respon") - { - dateTime = DateTime.Now; - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.sceneGetAllInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<GetSceneAllInfo>(jobject["Data"].ToString()); - - var info = ZbGateway.AllSceneList.Find(obj => obj.ScenesId == scene.sceneGetAllInfo.ScenesId); - if (info == null) - { - ZbGateway.AllSceneList.Add(scene.sceneGetAllInfo); - } - else - { - info.DeviceList = scene.sceneGetAllInfo.DeviceList; - info.DeviceSum = scene.sceneGetAllInfo.DeviceSum; - info.IsOpen = scene.sceneGetAllInfo.IsOpen; - info.ScenesId = scene.sceneGetAllInfo.ScenesId; - info.ScenesName = scene.sceneGetAllInfo.ScenesName; - info.ScenesNum = scene.sceneGetAllInfo.ScenesNum; - info.ScenesSum = scene.sceneGetAllInfo.ScenesSum; - } - System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); - } - }; - mainGateway.Actions += action; - System.Console.WriteLine("Scene/GetAllInfo_Actions 鍚姩" + System.DateTime.Now.ToString()); - try - { - var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 807 } }; - mainGateway.Send(("Scene/GetAllInfo"),System.Text.Encoding.UTF8.GetBytes(jObject.ToString())); - } - catch { } - - while ((DateTime.Now - dateTime).TotalMilliseconds < 1000) - { - await System.Threading.Tasks.Task.Delay(10); - } - - mainGateway.Actions -= action; - System.Console.WriteLine("Scene/GetAllInfo_Actions 閫�鍑�" + System.DateTime.Now.ToString()); - - return ZbGateway.AllSceneList; - }); - } #endregion #region 鍙兘鑾峰彇鍦烘櫙淇℃伅锛屾病鏈夊満鏅腑鐨勮澶囦俊鎭� @@ -644,22 +504,9 @@ /// <summary> ///鑾峰彇鍦烘櫙淇℃伅,缃戝叧鍙嶉淇℃伅 /// </summary> - GetOnlySceneAllData getOnlySceneAllData; - /// <summary> - ///鑾峰彇鍦烘櫙淇℃伅,缃戝叧鍙嶉淇℃伅 - /// </summary> [System.Serializable] - class GetOnlySceneAllData + class GetOnlySceneAllData:CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 鑾峰彇鍦烘櫙淇℃伅 /// </summary> @@ -734,8 +581,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -749,26 +595,15 @@ if (topic == gatewayID + "/" + "Scene/GetDeviceList_Respon") { - var sceneTemp = new Scene() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.getGatewayBaseInfo.gwID }; - sceneTemp.sceneGetDeviceListObj = Newtonsoft.Json.JsonConvert.DeserializeObject<GetSceneDeviceListInfo>(jobject["Data"].ToString()); + var sceneGetDeviceListObj = Newtonsoft.Json.JsonConvert.DeserializeObject<GetSceneDeviceListInfo>(jobject["Data"].ToString()); - if (sceneTemp.sceneGetDeviceListObj == null) + if (sceneGetDeviceListObj == null) { d = new GetSceneDeviceListAllInfo { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - var sDev = mainGateway.SceneDeviceList.Find(obj => obj.ScenesId == sceneTemp.sceneGetDeviceListObj.ScenesId); - if (sDev == null) - { - ZbGateway.MainGateWay.SceneDeviceList.Add(sceneTemp.sceneGetDeviceListObj); - } - else - { - sDev.DeviceList = sceneTemp.sceneGetDeviceListObj.DeviceList; - } - - d = new GetSceneDeviceListAllInfo { getSceneDeviceListInfo = sceneTemp.sceneGetDeviceListObj }; + d = new GetSceneDeviceListAllInfo { getSceneDeviceListInfo = sceneGetDeviceListObj }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -815,17 +650,8 @@ ///鑾峰彇鍦烘櫙鐨勮澶囧垪琛ㄤ俊鎭�,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class GetSceneDeviceListAllInfo + public class GetSceneDeviceListAllInfo : CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 鑾峰彇鍦烘櫙鐨勮澶囧垪琛ㄤ俊鎭� /// </summary> @@ -893,8 +719,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -908,16 +733,15 @@ if (topic == gatewayID + "/" + "Scene/AddMember_Respon") { - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.addSceneMemberData = Newtonsoft.Json.JsonConvert.DeserializeObject<AddSceneMemberResponseData>(jobject["Data"].ToString()); + var addSceneMemberData = Newtonsoft.Json.JsonConvert.DeserializeObject<AddSceneMemberResponseData>(jobject["Data"].ToString()); - if (scene.addSceneMemberData == null) + if (addSceneMemberData == null) { d = new AddSceneMemberResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - d = new AddSceneMemberResponseAllData { addSceneMemberResponseData = scene.addSceneMemberData }; + d = new AddSceneMemberResponseAllData { addSceneMemberResponseData = addSceneMemberData }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -1010,17 +834,8 @@ /// 鑾峰彇鍦烘櫙涓坊鍔犵殑鎴愬憳,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class AddSceneMemberResponseAllData + public class AddSceneMemberResponseAllData : CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 鑾峰彇鍦烘櫙涓坊鍔犵殑鎴愬憳 /// </summary> @@ -1166,8 +981,7 @@ var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1180,16 +994,15 @@ } if (topic == gatewayID + "/" + "Scene/RemoveMember_Respon") { - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.removeSceneMemberResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<RemoveSceneMemberResponseData>(jobject["Data"].ToString()); + var removeSceneMemberResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<RemoveSceneMemberResponseData>(jobject["Data"].ToString()); - if (scene.removeSceneMemberResponseData == null) + if (removeSceneMemberResponseData == null) { d = new RemoveSceneMemberResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - d = new RemoveSceneMemberResponseAllData { removeSceneMemberResponseData = scene.removeSceneMemberResponseData }; + d = new RemoveSceneMemberResponseAllData { removeSceneMemberResponseData = removeSceneMemberResponseData }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -1341,17 +1154,8 @@ /// 绉婚櫎鍦烘櫙鎴愬憳淇℃伅鍙嶉,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class RemoveSceneMemberResponseAllData + public class RemoveSceneMemberResponseAllData : CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 绉婚櫎鍦烘櫙鎴愬憳淇℃伅鍙嶉 /// </summary> @@ -1442,8 +1246,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1457,16 +1260,15 @@ if (topic == gatewayID + "/" + "Scene/Rename_Respon") { - var scene = new Scene() { DataID = jobject.Value<int>("DataID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.sceneRenameResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<SceneRenameResponseData>(jobject["Data"].ToString()); + var sceneRenameResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<SceneRenameResponseData>(jobject["Data"].ToString()); - if (scene.sceneRenameResponseData == null) + if (sceneRenameResponseData == null) { d = new SceneRenameResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - d = new SceneRenameResponseAllData { sceneRenameResponseData = scene.sceneRenameResponseData }; + d = new SceneRenameResponseAllData { sceneRenameResponseData = sceneRenameResponseData }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -1510,17 +1312,8 @@ /// 淇敼鍦烘櫙鍚嶇О /// </summary> [System.Serializable] - public class SceneRenameResponseAllData + public class SceneRenameResponseAllData : CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 淇敼鍦烘櫙鍚嶇О /// </summary> @@ -1582,8 +1375,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1597,26 +1389,15 @@ if (topic == gatewayID + "/" + "Scene/Remove_Respon") { - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.removeSceneData = Newtonsoft.Json.JsonConvert.DeserializeObject<RemoveSceneData>(jobject["Data"].ToString()); - if (scene.removeSceneData == null) + var removeSceneData = Newtonsoft.Json.JsonConvert.DeserializeObject<RemoveSceneData>(jobject["Data"].ToString()); + if (removeSceneData == null) { d = new RemoveSceneAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; return; } else { - for (int listCount = 0; listCount < ZigBee.Device.ZbGateway.AllSceneList.Count; listCount++) - { - var sc = ZbGateway.AllSceneList[listCount]; - - if (scene.removeSceneData.ScenesId == sc.ScenesId) - { - ZigBee.Device.ZbGateway.AllSceneList.RemoveAt(listCount); - listCount--; - } - } - d = new RemoveSceneAllData { removeSceneData = scene.removeSceneData }; + d = new RemoveSceneAllData { removeSceneData = removeSceneData }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -1660,17 +1441,8 @@ /// 绉婚櫎鍦烘櫙,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class RemoveSceneAllData + public class RemoveSceneAllData : CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 绉婚櫎鍦烘櫙 /// </summary> @@ -1724,8 +1496,7 @@ if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1739,15 +1510,14 @@ if (topic == gatewayID + "/" + "Scene/Open_Respon") { - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.sceneOpen = Newtonsoft.Json.JsonConvert.DeserializeObject<SceneOpenData>(jobject["Data"].ToString()); - if (scene.sceneOpen == null) + var sceneOpen = Newtonsoft.Json.JsonConvert.DeserializeObject<SceneOpenData>(jobject["Data"].ToString()); + if (sceneOpen == null) { d = new SceneOpenAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - d = new SceneOpenAllData { sceneOpenData = scene.sceneOpen }; + d = new SceneOpenAllData { sceneOpenData = sceneOpen }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } @@ -1793,17 +1563,8 @@ /// 璋冪敤鍦烘櫙,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class SceneOpenAllData + public class SceneOpenAllData : CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 璋冪敤鍦烘櫙 /// </summary> @@ -1861,8 +1622,7 @@ var jobject = Newtonsoft.Json.Linq.JObject.Parse(message); if (topic == gatewayID + "/" + "Error_Respon") { - var gatewayTemp = new ZbGateway() { Time = jobject.Value<int>("Time"), DataID = jobject.Value<int>("Data_ID"), CurrentGateWayId = mainGateway.getGatewayBaseInfo.gwID }; - var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<ErrorResponData>(jobject["Data"].ToString()); + var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.ErrorResponData>(jobject["Data"].ToString()); if (temp == null) { @@ -1875,16 +1635,15 @@ } if (topic == gatewayID + "/" + "Scene/CatDelayScene_Respon") { - var scene = new Scene() { DataID = jobject.Value<int>("Data_ID"), GateWayId = mainGateway.CurrentGateWayId }; - scene.catDelaySceneResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<CatDelaySceneResponseData>(jobject["Data"].ToString()); + var catDelaySceneResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<CatDelaySceneResponseData>(jobject["Data"].ToString()); - if (scene.catDelaySceneResponseData == null) + if (catDelaySceneResponseData == null) { d = new CatDelaySceneResponseAllData { errorMessageBase = "缃戝叧杩斿洖鐨勬暟鎹负绌�" }; } else { - d = new CatDelaySceneResponseAllData { catDelaySceneResponseData = scene.catDelaySceneResponseData }; + d = new CatDelaySceneResponseAllData { catDelaySceneResponseData = catDelaySceneResponseData }; System.Console.WriteLine($"UI鏀跺埌閫氱煡鍚庣殑涓婚_{ topic}"); } } @@ -1924,17 +1683,8 @@ /// 鏌ョ湅姝e湪寤舵椂鐨勫満鏅俊鎭弽棣�,缃戝叧鍙嶉淇℃伅 /// </summary> [System.Serializable] - public class CatDelaySceneResponseAllData + public class CatDelaySceneResponseAllData : CommonDevice.ErrorResponCommon { - /// <summary> - /// 閿欒淇℃伅 - /// </summary> - public string errorMessageBase; - /// <summary> - /// 缃戝叧淇℃伅閿欒鍙嶉 - /// <para>褰撶綉鍏虫帴鏀跺埌瀹㈡埛绔俊鎭悗锛屽嚭鐜颁互涓嬪紓甯告儏鍐靛皢鍙嶉閿欒銆�</para> - /// </summary> - public ErrorResponData errorResponData; /// <summary> /// 鏌ョ湅姝e湪寤舵椂鐨勫満鏅俊鎭俊鎭弽棣� /// </summary> @@ -2012,153 +1762,5 @@ public int ScenesId; } - - //public static string SceneFilePath = "SceneFile"; - - //static Scene() - //{ - // if (null == Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(Encoding.UTF8.GetString(Shared.IO.FileUtils.ReadFile(SceneFilePath)))) - // { - // //鍒濆鍖栧満鏅垪琛� - // Shared.IO.FileUtils.WriteFileByBytes(SceneFilePath, System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(new List<string>()))); - // } - //} - - ///// <summary> - ///// 淇濆瓨褰撳墠鍦烘櫙 - ///// </summary> - ///// <param name="scenceFilePath">Scence file path.</param> - //public void Save(string scenceFilePath) - //{ - // Shared.IO.FileUtils.WriteFileByBytes(scenceFilePath, System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this))); - //} - - /// <summary> - /// 鏍规嵁鍦烘櫙璺緞鎭㈠鍦烘櫙瀵硅薄 - /// </summary> - /// <returns>The by file path.</returns> - /// <param name="sceneFilePath">Room file path.</param> - //public static Scene GetSceneByFilePath(string sceneFilePath) - //{ - // try - // { - // return Newtonsoft.Json.JsonConvert.DeserializeObject<Scene>(System.Text.Encoding.UTF8.GetString(Shared.IO.FileUtils.ReadFile(sceneFilePath))); - // } - // catch - // { - // return new Scene(); - // } - //} - - /// <summary> - /// 鍦烘櫙鏍囪瘑 - /// </summary> - //public bool SceneLabel = false; - - /// <summary> - /// 鎺у埗鐩爣鐨勬枃浠惰矾寰�,鏍煎紡濡傦細RoomScene_+DeviceID_Mac_Epoint - /// </summary> - //public readonly List<string> DeviceFilePathList = new List<string>(); - - /// <summary> - /// 鍦烘櫙鐨勮儗鏅浘 - /// </summary> - //public string BackgroundImagePath = "Scene/s1.png"; - - /// <summary> - /// 鍦烘櫙涓殑璁惧鍒楄〃 - /// </summary> - //[Newtonsoft.Json.JsonIgnore] - //public List<Scene> sceneDeviceList = new List<Scene>(); - - //[Newtonsoft.Json.JsonIgnore] - //public List<Scene> LocalSceneList = new List<Scene>(); - - //public SceneId SceneID; - - ///<summary > - /// 浠庣綉鍏崇殑鍦烘櫙涓Щ闄よ澶� - /// </summary> - //public static void SceneRemoveMember1(ZigBee.Device.ZbGateway gateway, int ScenesId, string DeviceAddr, int Epoint) - //{ - // var jobject = new JObject { { "Cluster_ID", 0 }, { "Command", 802 } }; - // var DeviceList = new JArray - // { - // new JObject { - // { "Type", 0}, - // { "DeviceAddr",DeviceAddr}, - // { "Epoint",Epoint} - // } - // }; - // var data = new JObject { - // {"ScenesId",ScenesId}, - // { "DeviceList", DeviceList } - // }; - // jobject.Add("Data", data); - // gateway.Send(("Scene/RemoveMember"), Common.SecuritySet.Encryption((jobject.ToString()))); - - //} - - ///<summary > - /// 鍒犻櫎鍦烘櫙 - /// </summary> - //public static void SceneRemove1(ZigBee.Device.ZbGateway gateway, int scenesId) - //{ - // var jobject = new JObject { { "Cluster_ID", 0 }, { "Command", 803 } }; - // var data = new JObject { { "ScenesId", scenesId } }; - // jobject.Add("Data", data); - // gateway.Send(("Scene/Remove"), Common.SecuritySet.Encryption((jobject.ToString()))); - //} - - ///<summary > - /// 淇敼鍦烘櫙鍚嶇О - /// </summary> - //public static void SceneRename1(ZigBee.Device.ZbGateway gateway, int scenesId, string scenesName) - //{ - // var jobject = new JObject { { "Cluster_ID", 0 }, { "Command", 804 } }; - // var data = new JObject { { "ScenesId", scenesId }, { "ScenesName", scenesName } }; - // jobject.Add("Data", data); - // gateway.Send(("Scene/Rename"), Common.SecuritySet.Encryption((jobject.ToString()))); - //} - - ///<summary > - /// 鑾峰彇缃戝叧涓満鏅俊鎭� - /// </summary> - //public static void SceneGetInfo1(ZigBee.Device.ZbGateway gateway) - //{ - // var jobject = new JObject { { "Cluster_ID", 0 }, { "Command", 805 } }; - // gateway.Send(("Scene/GetInfo"), Common.SecuritySet.Encryption((jobject.ToString()))); - //} - - ///<summary > - ///鑾峰彇缃戝叧涓満鏅殑璁惧鍒楄〃 - /// </summary> - //public static void SceneGetDeviceList1(ZigBee.Device.ZbGateway gateway, int ScenesId) - //{ - // var jobject = new JObject { { "Cluster_ID", 0 }, { "Command", 806 } }; - // var data = new JObject { { "ScenesId", ScenesId } }; - // jobject.Add("Data", data); - // gateway.Send(("Scene/GetDeviceList"), Common.SecuritySet.Encryption((jobject.ToString()))); - //} - - ///<summary > - /// 鑾峰彇鎵�鏈夊満鏅俊鎭紙鍖呮嫭鍦烘櫙璁惧鍒楄〃锛� - /// </summary> - //public static void SceneGetAllInfo1(ZigBee.Device.ZbGateway gateway) - //{ - // var jobject = new JObject { { "Cluster_ID", 0 }, { "Command", 807 } }; - // gateway.Send(("Scene/GetAllInfo"), Common.SecuritySet.Encryption((jobject.ToString()))); - //} - - ///<summary > - ///璋冪敤鍦烘櫙 - /// </summary> - //public static void SceneOpen1(ZigBee.Device.ZbGateway gateway, int ScenesId) - //{ - // var jobject = new JObject { { "Cluster_ID", 0 }, { "Command", 808 } }; - // var data = new JObject { { "ScenesId", ScenesId } }; - // jobject.Add("Data", data); - // gateway.Send(("Scene/Open"), Common.SecuritySet.Encryption((jobject.ToString()))); - //} } } -- Gitblit v1.8.0