From 365eadb33ee86b05ac74d408025d102a758c2efd Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期五, 10 一月 2020 15:27:17 +0800 Subject: [PATCH] 2020-01-10 2020-01-10 1.修改切换本地和远程问题。 2.修改判断住宅网关方案。 3.其它优化修改。 --- Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs | 61 +++++++++++++++++++++++++----- 1 files changed, 51 insertions(+), 10 deletions(-) diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs index f782a26..097b679 100644 --- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs +++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs @@ -112,7 +112,7 @@ try { var backuplist = IO.FileUtils.ReadFiles (); int index = 0; - string oldRegionRootPath = IO.FileUtils.CreateRegionBackup (UserConfig.Instance.CurrentRegion.Name); + string oldRegionRootPath = IO.FileUtils.CreateRegionBackup (UserConfig.Instance.CurrentRegion.Id); IO.FileUtils.DeleteRegionFiles (oldRegionRootPath); foreach (var fileName in backuplist) { System.IO.FileInfo fileInfo = new System.IO.FileInfo (IO.FileUtils.RootPath + fileName); @@ -127,7 +127,7 @@ }); } IO.FileUtils.DeleteAllFile (); - string newRegionRootPath = IO.FileUtils.CreateRegionBackup (homeTemp.Name); + string newRegionRootPath = IO.FileUtils.CreateRegionBackup (homeTemp.Id); IO.FileUtils.RestoreRegionFiles (newRegionRootPath); UserConfig.Instance.RefreshUserConfig (); UserConfig.Instance.CurrentRegion = homeTemp; @@ -302,9 +302,15 @@ HomeId = UserConfig.Instance.CurrentRegion.Id, LoginAccessToken = MainPage.LoginUser.LoginTokenString }; + string urlHead = MainPage.RequestHttpsHost; + if (requestObj.IsOtherAccountCtrl) { + urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + requestObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + } + //GetUserFolderObj requestObj = new GetUserFolderObj () { LevelID = UserConfig.Instance.CurrentRegion.Id }; var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); - var revertObj = MainPage.RequestHttps (API.GetHomeDataBackupPagger, requestJson); + var revertObj = MainPage.RequestHttps (API.GetHomeDataBackupPagger, requestJson, urlHead); if (revertObj.StateCode.ToUpper() == "SUCCESS") { var data = Newtonsoft.Json.JsonConvert.DeserializeObject<GetBackupListResult> (revertObj.ResponseData.ToString ()); //var list = new List<BackupListNameInfo> (); @@ -451,9 +457,15 @@ HomeId = UserConfig.Instance.CurrentRegion.Id, LoginAccessToken = MainPage.LoginUser.LoginTokenString }; + string urlHead = MainPage.RequestHttpsHost; + if (requestObj.IsOtherAccountCtrl) { + urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + requestObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + } + //DeleteFolderDataObj requestObj = new DeleteFolderDataObj () { Id = folderID }; var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); - var revertObj = MainPage.RequestHttps (API.DelHomeAppGatewayName, requestJson); + var revertObj = MainPage.RequestHttps (API.DelHomeAppGatewayName, requestJson, urlHead); if (revertObj.StateCode.ToUpper () == "SUCCESS") { Application.RunOnMainThread (() => { DatabackupShow (); @@ -530,10 +542,15 @@ LoginAccessToken = MainPage.LoginUser.LoginTokenString, GatewayUniqueId = UserConfig.Instance.GatewayMAC }; + string urlHead = MainPage.RequestHttpsHost; + if (requestObj.IsOtherAccountCtrl) { + urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + requestObj.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + } //AddFolderObj requestObj = new AddFolderObj () { LevelID = UserConfig.Instance.CurrentRegion.Id ,Name = groupName }; var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); - var revertObj = MainPage.RequestHttps (API.AddHomeAppGatewayName, requestJson); + var revertObj = MainPage.RequestHttps (API.AddHomeAppGatewayName, requestJson, urlHead); if (revertObj.StateCode.ToUpper () == "SUCCESS") { var DATA = Newtonsoft.Json.JsonConvert.DeserializeObject<AddBackupNameResult> (revertObj.ResponseData.ToString()); var addFolderID = DATA.BackupClassId; @@ -612,7 +629,7 @@ var backuplist = IO.FileUtils.ReadFiles (); int index = 0; foreach (var fileName in backuplist) { - index++; + //index++; /// <summary> /// 濡傛灉鏄壒娈婄殑娉ㄥ唽鐧婚檰鏂囦欢锛屽垯涓嶉渶瑕佸浠藉埌鏈嶅姟鍣� /// </summary> @@ -633,11 +650,17 @@ upData.UploadSubFileLists = list; //鑾峰彇鎺у埗涓讳汉璐﹀彿鐨凾oken upData.LoginAccessToken = MainPage.LoginUser.LoginTokenString; + string urlHead = MainPage.RequestHttpsHost; + if (upData.IsOtherAccountCtrl) { + urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + upData.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + } //AddUserBackupObj requestObj2 = new AddUserBackupObj () { LevelID = Convert.ToInt32 (revertObj.ResponseData), Name = fileName, DetailByte = IO.FileUtils.ReadFile (fileName) }; var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (upData); - var revertObj2 = MainPage.RequestHttps (API.UploadHomeAppGatewaySubFiles, requestJson2); + var revertObj2 = MainPage.RequestHttps (API.UploadHomeAppGatewaySubFiles, requestJson2, urlHead); if (revertObj2.StateCode.ToUpper () == "SUCCESS") { + index++; Application.RunOnMainThread (() => { int pro = (int)(index * 1.0 / backuplist.Count * 100); MainPage.Loading.Text = pro.ToString () + "%"; @@ -646,6 +669,15 @@ //鎻愮ず閿欒 } } + + + Shared.Application.RunOnMainThread (() => { + if (index == 0) { + new Alert ("", "Upload failed!", Language.StringByID (R.MyInternationalizationString.Close)).Show (); + } + + MainPage.Loading.Hide (); + }); } @@ -678,12 +710,16 @@ requestObj2.PageSetting.Page = 1; //鑾峰彇鎺у埗涓讳汉璐﹀彿鐨凾oken requestObj2.LoginAccessToken = MainPage.LoginUser.LoginTokenString; - + string urlHead = MainPage.RequestHttpsHost; + if (requestObj2.IsOtherAccountCtrl) { + urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + requestObj2.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + } //鑾峰彇鎵�鏈夋枃浠剁粍鍚� //var requestObj2 = new UserBackupListObj () { LevelID = folderID }; var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj2); - var revertObj2 = MainPage.RequestHttps (API.GetHomeDataBackupUploadListPagger, requestJson2); + var revertObj2 = MainPage.RequestHttps (API.GetHomeDataBackupUploadListPagger, requestJson2, urlHead); if (revertObj2.StateCode.ToUpper() == "SUCCESS") { var fileListData = Newtonsoft.Json.JsonConvert.DeserializeObject<LoadBackInfoResult> (revertObj2.ResponseData.ToString ()); var responseDataObj = fileListData.PageData; @@ -699,6 +735,11 @@ mDownLoad.BackupClassId = BackupClassId; //鑾峰彇鎺у埗涓讳汉璐﹀彿鐨凾oken mDownLoad.LoginAccessToken = MainPage.LoginUser.LoginTokenString; + string mUrlHead = MainPage.RequestHttpsHost; + if (mDownLoad.IsOtherAccountCtrl) { + urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl; + mDownLoad.LoginAccessToken = UserConfig.Instance.MasterAccountToken; + } int index = 0; foreach (var file in responseDataObj) { @@ -708,7 +749,7 @@ mDownLoad.BackupFileName = file.BackupFileName; //var requestObj3 = new BackupDetailObj () { Id = file.Id }; var requestJson3 = Newtonsoft.Json.JsonConvert.SerializeObject (mDownLoad); - var revertObj3 = MainPage.RequestHttpsReturnByte (API.DownloadSomeDataBackup, requestJson3); + var revertObj3 = MainPage.RequestHttpsReturnByte (API.DownloadSomeDataBackup, requestJson3, false, mUrlHead); if (revertObj3 != null) { index++; IO.FileUtils.WriteFileByBytes (file.BackupFileName, revertObj3); -- Gitblit v1.8.0