| | |
| | | return 0;
|
| | | }
|
| | |
|
| | | //开启进度条
|
| | | ProgressBar.SetMaxValue(listEditor.Count + listDelete.Count);
|
| | | ProgressBar.Show();
|
| | | //开启进度条 正在上传备份文件
|
| | | ProgressFormBar.Current.Start();
|
| | | ProgressFormBar.Current.SetMsg(Language.StringByID(R.MyInternationalizationString.uBackupFileUploading));
|
| | |
|
| | | //上传文件到云端
|
| | | bool result = await UpLoadBackupFileToDB(listEditor);
|
| | | if (result == false)
|
| | | {
|
| | | ProgressBar.Close();
|
| | | ProgressFormBar.Current.Close();
|
| | | return -1;
|
| | | }
|
| | |
|
| | |
| | | result = await DoDeleteFileFromDB(listDelete);
|
| | | if (result == false)
|
| | | {
|
| | | ProgressBar.Close();
|
| | | ProgressFormBar.Current.Close();
|
| | | return -1;
|
| | | }
|
| | |
|
| | | ProgressBar.Close();
|
| | | ProgressFormBar.Current.Close();
|
| | |
|
| | | return 1;
|
| | | }
|
| | |
| | | /// <returns></returns>
|
| | | private async static Task<bool> UpLoadBackupFileToDB(List<string> listFile)
|
| | | {
|
| | | int listFileCount = listFile.Count;
|
| | | string backUpDir = System.IO.Path.Combine(DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupDirectory);
|
| | | foreach (string file in listFile)
|
| | | for (int i = 0; i < listFile.Count; i++)
|
| | | {
|
| | | string file = listFile[i];
|
| | | var datainfo = new FileInfoData();
|
| | | datainfo.BackupFileName = file;
|
| | | datainfo.BackupFileContent = ReadDirctoryFileByName(backUpDir, file);
|
| | |
| | | return false;
|
| | | }
|
| | | //设置进度值
|
| | | ProgressBar.SetValue(list.Count);
|
| | | ProgressFormBar.Current.SetValue(i + 1, listFileCount);
|
| | | }
|
| | | return true;
|
| | | }
|
| | |
| | | }
|
| | |
|
| | | //删除文件
|
| | | string strroot = UserCenterResourse.LocalRootPath;
|
| | | string strroot = Common.Config.Instance.FullPath;
|
| | | var backPath = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupdeleteDirectory);
|
| | | foreach (var file in listData)
|
| | | {
|
| | |
| | | }
|
| | |
|
| | | //删除文件
|
| | | string strroot = UserCenterResourse.LocalRootPath;
|
| | | string strroot = Common.Config.Instance.FullPath;
|
| | | var backPath = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupDirectory);
|
| | | foreach (var file in listData)
|
| | | {
|
| | |
| | | /// <returns></returns>
|
| | | public static List<string> GetAutoBackupEditorFile()
|
| | | {
|
| | | string strroot = UserCenterResourse.LocalRootPath; |
| | | string strroot = Common.Config.Instance.FullPath; |
| | | var path = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupDirectory);
|
| | |
|
| | | return GetFileFromDirectory(path);
|
| | |
| | | /// <returns></returns>
|
| | | public static List<string> GetAutoBackupDeleteFile()
|
| | | {
|
| | | string strroot = UserCenterResourse.LocalRootPath; |
| | | string strroot = Common.Config.Instance.FullPath; |
| | | var path = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupdeleteDirectory);
|
| | |
|
| | | return GetFileFromDirectory(path);
|
| | |
| | | /// <param name="fileName">文件的名字,不含路径</param>
|
| | | public static void AddOrEditorFile(string fileName)
|
| | | {
|
| | | if (UserCenterResourse.LocalRootPath == string.Empty)
|
| | | //根目录
|
| | | string strroot = Common.Config.Instance.FullPath;
|
| | | if (strroot == string.Empty)
|
| | | {
|
| | | return;
|
| | | }
|
| | | //根目录
|
| | | string strroot = UserCenterResourse.LocalRootPath;
|
| | | //自动备份目录
|
| | | string strBackPath = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupDirectory);
|
| | |
|
| | |
| | | /// <param name="fileName">文件的名字,不含路径</param>
|
| | | public static void DeleteFile(string fileName)
|
| | | {
|
| | | if (UserCenterResourse.LocalRootPath == string.Empty)
|
| | | //根目录
|
| | | string strroot = Common.Config.Instance.FullPath;
|
| | | if (strroot == string.Empty)
|
| | | {
|
| | | return;
|
| | | }
|
| | | //根目录
|
| | | string strroot = UserCenterResourse.LocalRootPath;
|
| | | //自动删除备份目录
|
| | | string strBackPath = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupdeleteDirectory);
|
| | |
|
| | |
| | | #region ■ 同步数据___________________________
|
| | |
|
| | | /// <summary>
|
| | | /// 同步云端数据(仅限APP启动之后) -1:异常 0:已经同步过,不需要同步 1:正常同步 |
| | | /// 同步云端数据(仅限APP启动之后) -1:异常 0:已经同步过,不需要同步 1:正常同步 2:没有自动备份数据
|
| | | /// </summary>
|
| | | /// <returns></returns>
|
| | | public static async Task<int> SynchronizeDbAutoBackupData()
|
| | |
| | | //如果本地已经拥有了这个文件,则说明不是新手机,不再自动还原
|
| | | if (System.IO.File.Exists(checkFile) == true)
|
| | | {
|
| | | //同步服务器的取消了的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDeleteSharedContent();
|
| | | //同步服务器的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | return 0;
|
| | | }
|
| | | //创建一个空文件
|
| | | var file = System.IO.File.Create(checkFile);
|
| | | file.Close();
|
| | |
|
| | | //暂时不支持成员
|
| | | if (UserCenterResourse.UserInfo.AuthorityNo == 3)
|
| | | {
|
| | | //同步服务器的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | //创建一个空文件(标识已经完成同步)
|
| | | var file = System.IO.File.Create(checkFile);
|
| | | file.Close();
|
| | | return 1;
|
| | | }
|
| | |
|
| | |
| | | var data = await HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | if (data == null)
|
| | | {
|
| | | //异常,删除检测文件
|
| | | System.IO.File.Delete(checkFile);
|
| | | return -1;
|
| | | }
|
| | | if (data.Count == 0)
|
| | | {
|
| | | //同步服务器的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDbSharedContent();
|
| | | return 1;
|
| | | //创建一个空文件(标识已经完成同步)
|
| | | var file = System.IO.File.Create(checkFile);
|
| | | file.Close();
|
| | | return 2;
|
| | | }
|
| | | //自动备份只有一个
|
| | | string backId = data[0].Id;
|
| | |
|
| | | //强制指定文本附加信息:账号数据同步中
|
| | | ProgressBar.SetAppendText(Language.StringByID(R.MyInternationalizationString.uAccountDataIsSynchronizing));
|
| | | //账号数据同步中
|
| | | ProgressFormBar.Current.Start();
|
| | | ProgressFormBar.Current.SetMsg(Language.StringByID(R.MyInternationalizationString.uAccountDataIsSynchronizing));
|
| | |
|
| | | //从云端获取备份的文件,然后存入本地指定的临时文件夹
|
| | | string tempDir = await HdlBackupLogic.Current.GetBackFileFromDBAndSetToLocation(backId);
|
| | |
| | | //没有错误的话,则移动到当前住宅文件夹下面
|
| | | Global.MoveDirectoryFileToHomeDirectory(tempDir, true);
|
| | |
|
| | | //同步服务器的取消了的分享内容
|
| | | await HdlShardLogic.Current.SynchronizeDeleteSharedContent();
|
| | | //创建一个空文件(标识已经完成同步)
|
| | | var file2 = System.IO.File.Create(checkFile);
|
| | | file2.Close();
|
| | |
|
| | | //重新刷新住宅对象
|
| | | UserCenterLogic.RefreshHomeObject();
|
| | |
|
| | | return 1;
|
| | | }
|
| | |
|
| | |
| | | //暂不支持成员
|
| | | return;
|
| | | }
|
| | | string strroot = UserCenterResourse.LocalRootPath; |
| | | string strroot = Common.Config.Instance.FullPath; |
| | | var path = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupDirectory);
|
| | |
|
| | | List<string> listFile1 = GetFileFromDirectory(path);
|
| | |
| | | string fullName = UserCenterLogic.CombinePath(DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupNotPromptedFile);
|
| | | if (System.IO.File.Exists(fullName) == false)
|
| | | {
|
| | | Application.RunOnMainThread(() =>
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | var form = new HdlBackup.HdlAutoBackupSettionForm();
|
| | | var form = new HdlBackup.HdlAutoBackupForm();
|
| | | form.AddForm();
|
| | | });
|
| | | return;
|
| | |
| | | }
|
| | | if (info.Day == 0)
|
| | | {
|
| | | Application.RunOnMainThread(() =>
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | var form = new HdlBackup.HdlAutoBackupSettionForm();
|
| | | var form = new HdlBackup.HdlAutoBackupForm();
|
| | | form.AddForm();
|
| | | });
|
| | | return;
|
| | |
| | | //时间已经超过
|
| | | if (intDay > info.Day)
|
| | | {
|
| | | Application.RunOnMainThread(() =>
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | var form = new HdlBackup.HdlAutoBackupSettionForm();
|
| | | var form = new HdlBackup.HdlAutoBackupForm();
|
| | | form.AddForm();
|
| | | });
|
| | | return;
|
| | | }
|
| | | }
|
| | |
|