| | |
| | | /// 执行上传自动备份数据(0:没有可上传的自动备份数据 1:成功 -1:失败)
|
| | | /// </summary>
|
| | | /// <returns></returns>
|
| | | public async static Task<int> DoUpLoadAutoBackupData()
|
| | | public static int DoUpLoadAutoBackupData()
|
| | | {
|
| | | //获取app的自动备份
|
| | | var data = await HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | var data = HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | if (data == null)
|
| | | {
|
| | | return -1;
|
| | |
| | | ProgressFormBar.Current.SetMsg(Language.StringByID(R.MyInternationalizationString.uBackupFileUploading));
|
| | |
|
| | | //上传文件到云端
|
| | | bool result = await UpLoadBackupFileToDB(listEditor);
|
| | | bool result = UpLoadBackupFileToDB(listEditor);
|
| | | if (result == false)
|
| | | {
|
| | | ProgressFormBar.Current.Close();
|
| | |
| | | }
|
| | |
|
| | | //删除文件
|
| | | result = await DoDeleteFileFromDB(listDelete);
|
| | | result = DoDeleteFileFromDB(listDelete);
|
| | | if (result == false)
|
| | | {
|
| | | ProgressFormBar.Current.Close();
|
| | |
| | | /// </summary>
|
| | | /// <param name="listFile"></param>
|
| | | /// <returns></returns>
|
| | | private async static Task<bool> UpLoadBackupFileToDB(List<string> listFile)
|
| | | private static bool UpLoadBackupFileToDB(List<string> listFile)
|
| | | {
|
| | | int listFileCount = listFile.Count;
|
| | | string backUpDir = System.IO.Path.Combine(DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupDirectory);
|
| | |
| | | list.Add(datainfo);
|
| | |
|
| | | //执行是上传
|
| | | bool falge = await DoUpLoadInfoToDB(list);
|
| | | bool falge = DoUpLoadInfoToDB(list);
|
| | | if (falge == false)
|
| | | {
|
| | | return false;
|
| | |
| | | /// </summary>
|
| | | /// <param name="listData">删除的文件</param>
|
| | | /// <returns></returns>
|
| | | private async static Task<bool> DoDeleteFileFromDB(List<string> listData)
|
| | | private static bool DoDeleteFileFromDB(List<string> listData)
|
| | | {
|
| | | if (listData.Count == 0)
|
| | | {
|
| | |
| | | }
|
| | |
|
| | | //获取app的自动备份
|
| | | var data = await HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | var data = HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | if (data == null || data.Count == 0)
|
| | | {
|
| | | return true;
|
| | |
| | | //获取控制主人账号的Token
|
| | | upData.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
|
| | |
|
| | | bool falge = await UserCenterLogic.GetResultStatuByRequestHttps("App/DeleteAppBackupFile", true, upData);
|
| | | bool falge = UserCenterLogic.GetResultStatuByRequestHttps("App/DeleteAppBackupFile", true, upData);
|
| | | if (falge == false)
|
| | | {
|
| | | return false;
|
| | |
| | | /// </summary>
|
| | | /// <param name="listData">上传的数据</param>
|
| | | /// <returns></returns>
|
| | | private async static Task<bool> DoUpLoadInfoToDB(List<FileInfoData> listData)
|
| | | private static bool DoUpLoadInfoToDB(List<FileInfoData> listData)
|
| | | {
|
| | | var nowZigbeeNumHomeId = Shared.Common.Config.Instance.Home.Id;
|
| | |
|
| | |
| | | //获取控制主人账号的Token
|
| | | upData.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
|
| | |
|
| | | bool falge = await UserCenterLogic.GetResultStatuByRequestHttps("App/HomeAppAutoDataBackup", true, upData);
|
| | | bool falge = UserCenterLogic.GetResultStatuByRequestHttps("App/HomeAppAutoDataBackup", true, upData, null, true);
|
| | | if (falge == false)
|
| | | {
|
| | | return false;
|
| | |
| | | /// 同步云端数据(仅限APP启动之后) -1:异常 0:已经同步过,不需要同步 1:正常同步 2:没有自动备份数据
|
| | | /// </summary>
|
| | | /// <returns></returns>
|
| | | public static async Task<int> SynchronizeDbAutoBackupData()
|
| | | public static int SynchronizeDbAutoBackupData()
|
| | | {
|
| | | //判断是否能够同步数据
|
| | | string checkFile = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoDownLoadBackupCheckFile);
|
| | |
| | | if (System.IO.File.Exists(checkFile) == true)
|
| | | {
|
| | | //同步服务器的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | return 0;
|
| | | }
|
| | |
|
| | |
| | | if (UserCenterResourse.UserInfo.AuthorityNo == 3)
|
| | | {
|
| | | //同步服务器的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | //创建一个空文件(标识已经完成同步)
|
| | | var file = System.IO.File.Create(checkFile);
|
| | | file.Close();
|
| | |
| | | }
|
| | |
|
| | | //获取app的自动备份
|
| | | var data = await HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | var data = HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | if (data == null)
|
| | | {
|
| | | return -1;
|
| | |
| | | if (data.Count == 0)
|
| | | {
|
| | | //同步服务器的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | //创建一个空文件(标识已经完成同步)
|
| | | var file = System.IO.File.Create(checkFile);
|
| | | file.Close();
|
| | |
| | | ProgressFormBar.Current.SetMsg(Language.StringByID(R.MyInternationalizationString.uAccountDataIsSynchronizing));
|
| | |
|
| | | //从云端获取备份的文件,然后存入本地指定的临时文件夹
|
| | | string tempDir = await HdlBackupLogic.Current.GetBackFileFromDBAndSetToLocation(backId);
|
| | | string tempDir = HdlBackupLogic.Current.GetBackFileFromDBAndSetToLocation(backId);
|
| | | if (tempDir == null)
|
| | | {
|
| | | //删除检测文件
|