From b02e8275a21dc06bf54b66273485d44e007a2616 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期一, 20 七月 2020 14:50:17 +0800 Subject: [PATCH] 新代码 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs | 61 ++++++++++++++---------------- 1 files changed, 29 insertions(+), 32 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs index 75f38c3..0f70087 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs @@ -1,7 +1,6 @@ 锘縰sing System; using System.Collections.Generic; using System.Text; -using System.Threading.Tasks; namespace Shared.Phone.UserCenter { @@ -66,18 +65,18 @@ #region 鈻� 娣诲姞鍗囩骇鍥轰欢淇℃伅___________________ /// <summary> - /// 娣诲姞鍗囩骇鍥轰欢淇℃伅 + /// 娣诲姞鍗囩骇鍥轰欢淇℃伅 1:姝e父 -1:娌$綉,鑾峰彇涓嶅埌涓滆タ /// </summary> /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param> /// <param name="HardwareVersion">纭欢鐗堟湰</param> /// <param name="imgType">闀滃儚绫诲瀷</param> /// <returns></returns> - public async static Task<bool> AddFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType) + public static int AddFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType) { //妫�娴嬫湰鍦版槸鍚﹀凡缁忔湁杩欎釜缂撳瓨浜� if (IsEsixtFirmwareVersionInfo(levelType, HardwareVersion, imgType) == true) { - return true; + return 1; } var Pra = new GetFirmwareVersionPra(); Pra.PageSetting.Page = 1; @@ -90,7 +89,7 @@ Pra.FirmwareManaSecondType = 0; Pra.HardwareVersion = HardwareVersion; Pra.DeviceType = imgType; - var result = await GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.Linux, Pra); + var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.Linux, Pra); return result; } else if (levelType == FirmwareLevelType.Coordinator) @@ -100,7 +99,7 @@ Pra.FirmwareManaSecondType = 1; Pra.HardwareVersion = HardwareVersion; Pra.DeviceType = imgType; - var result = await GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.Coordinator, Pra); + var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.Coordinator, Pra); return result; } else if (levelType == FirmwareLevelType.VirtualDevice) @@ -110,7 +109,7 @@ Pra.FirmwareManaSecondType = 2; Pra.HardwareVersion = HardwareVersion; Pra.DeviceType = imgType; - var result = await GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.VirtualDevice, Pra); + var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.VirtualDevice, Pra); return result; } else @@ -120,29 +119,29 @@ Pra.FirmwareManaSecondType = null; Pra.HardwareVersion = HardwareVersion; Pra.DeviceType = imgType; - var result = await GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.ZigbeeDevice, Pra); + var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.ZigbeeDevice, Pra); return result; } } /// <summary> - /// 鑾峰彇浜戠鐨勫浐浠讹紝鐒跺悗瀛樺叆缂撳瓨涓� + /// 鑾峰彇浜戠鐨勫浐浠讹紝鐒跺悗瀛樺叆缂撳瓨涓� 1:姝e父 -1:娌$綉,鑾峰彇涓嶅埌涓滆タ /// </summary> /// <param name="levelType"></param> /// <param name="pra"></param> /// <returns></returns> - private async static Task<bool> GetFirmwareVersionAndSetToMemmory(FirmwareLevelType levelType, GetFirmwareVersionPra pra) + private static int GetFirmwareVersionAndSetToMemmory(FirmwareLevelType levelType, GetFirmwareVersionPra pra) { - var listNotShow = new List<string>() { "NotSetAgain" }; - string resultValue = await UserCenterLogic.GetResponseDataByRequestHttps("FirmwareMana/DetectionPlatformUploadFirmware", false, pra, listNotShow); + var listCheck = new List<string> { "NotCheck" }; + string resultValue = UserCenterLogic.GetResponseDataByRequestHttps("FirmwareMana/DetectionPlatformUploadFirmware", false, pra, listCheck); if (string.IsNullOrEmpty(resultValue) == true) { - return false; + return -1; } var verResult = Newtonsoft.Json.JsonConvert.DeserializeObject<FirmwareVersionResult>(resultValue); if (verResult.PageData.Count == 0) { - return true; + return 1; } //纭欢鐗堟湰 @@ -151,6 +150,13 @@ foreach (var data in verResult.PageData) { + //鍥轰欢鐗堟湰鏄剧ず锛� + //10101 3涓猙yte 鏄剧ず涓猴細ver.1.01.01 + if (data.FirmwareVersion.Length != 6 && data.FirmwareVersion.Length != 5) + { + //闈炴瑙勭殑鍥轰欢鐗堟湰,涓嶅啀鑰冭檻鑼冨洿鍐� + continue; + } //纭欢鍒嗙被 FirmwareHardInfo hardInfo = null; string hardCode = data.HardwareVersion; @@ -192,7 +198,7 @@ catch { continue; } } - return true; + return 1; } #endregion @@ -219,6 +225,14 @@ //瀹冧笉鏄崌绾у浐浠�, .bin鏄壒娈婄殑 continue; } + int testVersion = Convert.ToInt32(verInfo.FirmwareVersion.ToString().PadLeft(6, '0').Substring(2, 2)); + if (testVersion % 2 != 0) + { + //涓棿閭d釜byte涓哄鏁版椂锛屼唬琛ㄦ槸娴嬭瘯鐗堟湰,鍦ㄦ樉绀烘渶鏂扮増鏈椂,涓嶉渶瑕佹樉绀猴紝浣嗘槸鍦ㄥ巻鍙茬増鏈偅閲屽彲浠ユ樉绀� + //涓棿閭d釜byte涓哄伓鏁版椂,浠h〃鏄寮忕増鏈� + continue; + } + if (verInfo.FirmwareVersion > nowVersion) { nowVersion = verInfo.FirmwareVersion; @@ -341,23 +355,6 @@ Info.UpdateContent.AddRange(Arry); } - /// <summary> - /// 灏嗗崄鍏繘鍒惰浆涓哄崄杩涘埗 - /// </summary> - /// <param name="text"></param> - /// <returns></returns> - private static int ConvertHexToInt(string text) - { - if (text.StartsWith("0x")) - { - text = text.Substring(2); - } - try - { - return Convert.ToInt32(text, 16); - } - catch { return -1; } - } #endregion } } -- Gitblit v1.8.0