From fe3b2466c68b5db70d38e78039703add3b8b1dfe Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 31 十二月 2020 19:29:43 +0800 Subject: [PATCH] 合并了代码 --- ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs | 114 ++++++++++++++++++++++++--------------------------------- 1 files changed, 48 insertions(+), 66 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs index e4266a6..7c14bee 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Abount/AbountForm.cs @@ -249,36 +249,35 @@ #elif Android try { - var pra = new { RequestVersion = CommonPage.RequestVersion, DistributedMark = distributedMark }; - var result = HdlFirmwareUpdateLogic.Current.RequestZigbeeHttps("FirmwareMana/DownloadPlatformUploadFirmwarePreLength", pra, 8); - if (result == null || result.Length == 0) + var requestObj = new SendDataToServer.DownLoadAndroidApk { - HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail)); - return; - } - var jobject = Newtonsoft.Json.Linq.JObject.Parse(Encoding.UTF8.GetString(result)); - if (jobject.Property("StateCode") == null || jobject["StateCode"].ToString().ToUpper() != "SUCCESS") - { - HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail)); - return; - } + RequestVersion = CommonPage.RequestVersion, + DistributedMark = distributedMark + }; + var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestObj); - var bytesTotalLength = Newtonsoft.Json.JsonConvert.DeserializeObject<long>(jobject["ResponseData"].ToString()); + var bytesTotalLengthResult = CommonPage.Instance.RequestHttpsZigbeeAsync("FirmwareMana/DownloadPlatformUploadFirmwarePreLength", Encoding.UTF8.GetBytes(requestJson)); + if (bytesTotalLengthResult == null || bytesTotalLengthResult.ResponseData == null) + { + CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.UpdateAppFail); + return; + } + var bytesTotalLength = Newtonsoft.Json.JsonConvert.DeserializeObject<long>(bytesTotalLengthResult.ResponseData.ToString()); if (bytesTotalLength == 0) { - HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail)); + CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.UpdateAppFail); return; } ApkBytesTotalLength = bytesTotalLength; - var bytes = await DownLoadApkAsync("FirmwareMana/DownloadPlatformUploadFirmware", Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(pra))); + var bytes = await DownLoadApkAsync("FirmwareMana/DownloadPlatformUploadFirmware", Encoding.UTF8.GetBytes(requestJson)); if (bytes == null) { - HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.UpdateAppFail)); + CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.UpdateAppFail); return; } if (bytes.ToString().Contains("DownloadFail")) { - HdlMessageLogic.Current.ShowMassage(ShowMsgType.Error, Language.StringByID(R.MyInternationalizationString.FailedPleaseTryAgain)); + CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); return; } var path = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, "home.apk"); @@ -356,39 +355,46 @@ /// 鑾峰彇 Android-APP 鐗堟湰淇℃伅 /// </summary> /// <returns>The https app version async.</returns> - private ApkInfoOBJ RequestHttpsAndroidAppVersionAsync() + private Common.ResponseEntity.ApkInfoOBJ RequestHttpsAndroidAppVersionAsync() { try { - var pra = new { Name = "ZigbeeApp", RequestVersion = Common.CommonPage.RequestVersion }; - var result = HdlFirmwareUpdateLogic.Current.RequestZigbeeHttps("FirmwareMana/DetectionPlatformUploadFirmware", pra, 4); - if (result == null || result.Length == 0) + var requestOBJ = new SendDataToServer.GetAndroidApkInfoOBJ + { + Name = "ZigbeeApp", + RequestVersion = CommonPage.CodeIDString + }; + var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject(requestOBJ); + var result = CommonPage.Instance.RequestHttpsZigbeeAsync("FirmwareMana/DetectionPlatformUploadFirmware", System.Text.Encoding.UTF8.GetBytes(requestJson)); + if (result == null) { return null; } - var jobject = Newtonsoft.Json.Linq.JObject.Parse(Encoding.UTF8.GetString(result)); - if (jobject.Property("StateCode") == null || jobject["StateCode"].ToString().ToUpper() != "SUCCESS") + if (result.StateCode.ToUpper() == "SUCCESS") { - return null; - } - string resultValue = jobject["ResponseData"].ToString(); - - var responeData = Newtonsoft.Json.JsonConvert.DeserializeObject<ApkInfoRes>(resultValue); - if (responeData == null || responeData.pageData == null || responeData.pageData.Count == 0) - { - return null; - } - - ApkInfoOBJ apkInfoOBJ = null; - for (int i = 0; i < responeData.pageData.Count; i++) - { - var apkInfo = responeData.pageData[i]; - if (apkInfoOBJ == null || apkInfo.FirmwareVersion.CompareTo(apkInfoOBJ.FirmwareVersion) > 0) + if (result.ResponseData == null) { - apkInfoOBJ = apkInfo; + return null; } + + var responeData = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.ResponseEntity.ApkInfoRes>(result.ResponseData.ToString()); + if (responeData == null || responeData.pageData == null || responeData.pageData.Count == 0) + { + return null; + } + + Common.ResponseEntity.ApkInfoOBJ apkInfoOBJ = null; + for (int i = 0; i < responeData.pageData.Count; i++) + { + var apkInfo = responeData.pageData[i]; + if (apkInfoOBJ == null || apkInfo.FirmwareVersion.CompareTo(apkInfoOBJ.FirmwareVersion) > 0) + { + apkInfoOBJ = apkInfo; + } + } + return apkInfoOBJ; } - return apkInfoOBJ; + return null; } catch (Exception ex) { @@ -407,9 +413,10 @@ try { webClient.Headers.Add(HttpRequestHeader.ContentType, "application/json"); + webClient.Headers.Add(HttpRequestHeader.Authorization, Config.Instance.Token); webClient.UploadProgressChanged += Client_DownloadProgressChanged; webClient.UploadDataCompleted += Client_UploadCompleted; - var result = webClient.UploadDataTaskAsync($"{HdlFirmwareUpdateLogic.Current.RequestHttpsHost}/{requestUrl}", "POST", byteData); + var result = webClient.UploadDataTaskAsync($"{CommonPage.RequestHttpsHost}/{requestUrl}", "POST", byteData); if (result == null) { return null; @@ -463,30 +470,5 @@ } #endif - //[Serializable] - public class ApkInfoRes - { - public int PageIndex; - public int PageSize; - public int TotalCount; - public int TotalPages; - public bool HasPreviousPage; - public bool HasNextPage; - public List<ApkInfoOBJ> pageData = new List<ApkInfoOBJ> { }; - } - - /// <summary> - /// 涓嬭浇apk - /// </summary> - [Serializable] - public class ApkInfoOBJ - { - public string Name { get; set; } - public string FirmwareVersion { get; set; } - public string Remarks { get; set; } - public string DistributedMark { get; set; } - public string Id { get; set; } - public string CreatedOnUtc { get; set; } - } } } -- Gitblit v1.8.0