| | |
| | | /// <summary>
|
| | | /// 从云端获取数据
|
| | | /// </summary>
|
| | | private async void SetBackupInfoToForm()
|
| | | private void SetBackupInfoToForm()
|
| | | {
|
| | | //进度条
|
| | | this.ShowProgressBar();
|
| | |
|
| | | //获取app的自动备份
|
| | | var autoData = await HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | var autoData = HdlBackupLogic.Current.GetBackupListNameFromDB(BackUpMode.A自动备份);
|
| | | if (autoData == null)
|
| | | {
|
| | | //关闭进度条
|
| | |
| | | return;
|
| | | }
|
| | | //从云端获取数据
|
| | | var pageData = await HdlBackupLogic.Current.GetBackupListNameFromDB();
|
| | | var pageData = HdlBackupLogic.Current.GetBackupListNameFromDB(BackUpMode.A手动备份);
|
| | | if (pageData == null)
|
| | | {
|
| | | //关闭进度条
|
| | |
| | | var listSort = new List<string>();
|
| | | for (int i = 0; i < pageData.Count; i++)
|
| | | {
|
| | | listSort.Add(pageData[i].CreatedOnUtc);
|
| | | dic[pageData[i].CreatedOnUtc] = pageData[i];
|
| | | listSort.Add(pageData[i].ModifyTime);
|
| | | dic[pageData[i].ModifyTime] = pageData[i];
|
| | | }
|
| | | listSort.Sort();
|
| | |
|
| | |
| | | btnPoint.UnSelectedImagePath = "Item/DownLoad.png";
|
| | |
|
| | | //备份名字
|
| | | var txtText = rowLayout.frameTable.AddLeftCaption("", 700, 60);
|
| | | var txtText = rowLayout.frameTable.AddTopView("", 700);
|
| | | if (autoBack == true)
|
| | | {
|
| | | //自动备份
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | txtText.Text = fileInfo.BackupName;
|
| | | txtText.Text = fileInfo.FolderName;
|
| | | }
|
| | | txtText.TextSize = 15;
|
| | | //这个坐标有点特殊
|
| | | txtText.Y = Application.GetRealHeight(12) + rowLayout.chidrenYaxis;
|
| | | rowLayout.frameTable.AddChidren(txtText, ChidrenBindMode.BindEventOnly);
|
| | | //时间
|
| | | var btnTime = rowLayout.frameTable.AddLeftCaption("", 600, 50, true);
|
| | | //这个坐标有点特殊
|
| | | btnTime.Y = Application.GetRealHeight(72) + rowLayout.chidrenYaxis;
|
| | | btnTime.TextSize = 12;
|
| | | btnTime.TextColor = UserCenterColor.Current.TextGrayColor1;
|
| | | rowLayout.frameTable.AddChidren(btnTime, ChidrenBindMode.BindEventOnly);
|
| | | if (fileInfo.CreatedOnUtc.Length >= 19)
|
| | | var btnTime = rowLayout.frameTable.AddBottomView("", 600);
|
| | | if (fileInfo.ModifyTime.Length >= 13)
|
| | | {
|
| | | btnTime.Text = fileInfo.CreatedOnUtc.Replace("-", ".").Replace("T", " ");
|
| | | btnTime.Text = HdlCommonLogic.Current.ConvertUtcTimeToLocalTime2(fileInfo.ModifyTime).ToString("yyyy.MM.dd HH:mm:ss");
|
| | | }
|
| | | if (addLine == true)
|
| | | {
|
| | |
| | | //显示编辑备考名画面
|
| | | this.ShowEditorBackupForm(fileInfo);
|
| | | };
|
| | | }
|
| | |
|
| | | //删除
|
| | | var btnDelete = rowLayout.AddDeleteControl();
|
| | | btnDelete.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | //确认删除该备份数据?
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uDoDeleteBackupMsg);
|
| | | this.ShowMassage(ShowMsgType.Confirm, msg, () =>
|
| | | //删除
|
| | | var btnDelete = rowLayout.AddDeleteControl();
|
| | | btnDelete.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | //删除备份文档
|
| | | this.DeleteBackInfo(fileInfo.Id, ShowErrorMode.YES);
|
| | | });
|
| | | };
|
| | | //确认删除该备份数据?
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uDoDeleteBackupMsg);
|
| | | this.ShowMassage(ShowMsgType.Confirm, msg, () =>
|
| | | {
|
| | | //删除备份文档
|
| | | this.DeleteBackInfo(fileInfo.Id, ShowErrorMode.YES);
|
| | | });
|
| | | };
|
| | | }
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | |
| | | /// <param name="BackupClassId"></param>
|
| | | private void LoadBackupInfo(string BackupClassId)
|
| | | {
|
| | | HdlThreadLogic.Current.RunThread(async () =>
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //从云端获取备份的文件
|
| | | bool result = await HdlBackupLogic.Current.LoadAppBackupInfo(BackupClassId);
|
| | | bool result = HdlBackupLogic.Current.LoadAppBackupInfo(BackupClassId);
|
| | | if (result == false)
|
| | | {
|
| | | //文件恢复失败
|
| | |
| | | return;
|
| | | }
|
| | |
|
| | | Application.RunOnMainThread(() =>
|
| | | HdlThreadLogic.Current.RunMain(() =>
|
| | | {
|
| | | //关闭所有界面
|
| | | UserCenterLogic.CloseAllOpenForm();
|
| | | HdlFormLogic.Current.CloseAllOpenForm(null, false);
|
| | | //切换到主页
|
| | | UserView.UserPage.Instance.Fresh();
|
| | | UserView.UserPage.Instance.ReFreshControl();
|
| | | });
|
| | |
|
| | | //文件恢复成功
|
| | |
| | | /// <param name="backName"></param>
|
| | | private void UpLoadBackInfo(string backName)
|
| | | {
|
| | | HdlThreadLogic.Current.RunThread(async () =>
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //绑定还没有成功的网关
|
| | | var result2 = HdlGatewayLogic.Current.ResetComandToBindBackupGateway();
|
| | | if (result2 == false)
|
| | | {
|
| | | //绑定网关失败,请重新上传
|
| | | this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.uBindGatewayFailPleaseUploadAgain));
|
| | | return;
|
| | | }
|
| | | //创建一个备份名字
|
| | | string backupClassId = await HdlBackupLogic.Current.CreatNewBackupNameToDB(backName);
|
| | | string backupClassId = HdlBackupLogic.Current.CreatNewBackupNameToDB(backName, BackUpMode.A手动备份);
|
| | | if (backupClassId == null)
|
| | | {
|
| | | //创建备份名字失败
|
| | |
| | | }
|
| | |
|
| | | //上传数据到云端
|
| | | bool result = await HdlBackupLogic.Current.UpLoadBackupFileToDB(backupClassId);
|
| | | bool result = HdlBackupLogic.Current.UpLoadBackupFileToDB(backupClassId);
|
| | | if (result == false)
|
| | | {
|
| | | //文件上传失败
|
| | |
| | | /// <summary>
|
| | | /// 上传自动备份数据
|
| | | /// </summary>
|
| | | public void UpLoadAutoBackupInfo()
|
| | | private void UpLoadAutoBackupInfo()
|
| | | {
|
| | | HdlThreadLogic.Current.RunThread(async () =>
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | int result = await HdlAutoBackupLogic.DoUpLoadAutoBackupData();
|
| | | //绑定还没有成功的网关
|
| | | var result2 = HdlGatewayLogic.Current.ResetComandToBindBackupGateway();
|
| | | if (result2 == false)
|
| | | {
|
| | | //绑定网关失败,请重新上传
|
| | | this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.uBindGatewayFailPleaseUploadAgain));
|
| | | return;
|
| | | }
|
| | | int result = HdlBackupLogic.Current.DoUpLoadAutoBackupDataByHand();
|
| | | if (result == -1)
|
| | | {
|
| | | //文件上传失败
|
| | |
| | | /// </summary>
|
| | | /// <param name="BackupClassId"></param>
|
| | | /// <param name="backName"></param>
|
| | | private async void EditorBackInfo(string BackupClassId, string backName)
|
| | | private void EditorBackInfo(string BackupClassId, string backName)
|
| | | {
|
| | | //开启进度条
|
| | | this.ShowProgressBar();
|
| | |
|
| | | var Pra = new EditorBackUpNamePra();
|
| | | Pra.BackupClassId = BackupClassId;
|
| | | Pra.BackupName = backName;
|
| | | //获取控制主人账号的Token
|
| | | Pra.LoginAccessToken = UserCenterLogic.GetConnectMainToken();
|
| | | bool result = HdlBackupLogic.Current.EditorBackupName(BackupClassId, backName);
|
| | | this.CloseProgressBar();
|
| | |
|
| | | bool result = await UserCenterLogic.GetResultStatuByRequestHttps("App/UpdateHomeAppGatewayName", true, Pra);
|
| | | if (result == false)
|
| | | if (result == true)
|
| | | {
|
| | | //编辑备份名称失败
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uEditorBackupNameFail);
|
| | | this.ShowMassage(ShowMsgType.Error, msg);
|
| | | //关闭
|
| | | this.CloseProgressBar();
|
| | | return;
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //从云端获取数据
|
| | | this.SetBackupInfoToForm();
|
| | | });
|
| | | }
|
| | |
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //从云端获取数据
|
| | | this.SetBackupInfoToForm();
|
| | | });
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
| | | /// </summary>
|
| | | /// <param name="BackupClassId"></param>
|
| | | /// <param name="showMode"></param>
|
| | | public async void DeleteBackInfo(string BackupClassId, ShowErrorMode showMode = ShowErrorMode.YES)
|
| | | public void DeleteBackInfo(string BackupClassId, ShowErrorMode showMode = ShowErrorMode.YES)
|
| | | {
|
| | | //进度条
|
| | | this.ShowProgressBar();
|
| | |
|
| | | bool success = await HdlBackupLogic.Current.DeleteDbBackupData(BackupClassId);
|
| | |
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | |
|
| | | bool success = HdlBackupLogic.Current.DeleteDbBackupData(BackupClassId);
|
| | | if (success == false)
|
| | | {
|
| | | if (showMode == ShowErrorMode.YES)
|
| | |
| | | private void ShowEditorBackupForm(BackupListNameInfo fileInfo)
|
| | | {
|
| | | //生成一个弹窗画面
|
| | | var dialogForm = new DialogInputForm();
|
| | | dialogForm.AddForm(DialogFrameMode.OnlyInput);
|
| | | var dialogForm = new DialogInputControl();
|
| | | //编辑备份
|
| | | dialogForm.SetTitleText(Language.StringByID(R.MyInternationalizationString.uEditorBackup));
|
| | | //请输入备注名称
|
| | | dialogForm.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackup));
|
| | | dialogForm.Text = fileInfo.BackupName;
|
| | | //请输入备份名称
|
| | | dialogForm.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackupName));
|
| | | dialogForm.Text = fileInfo.FolderName;
|
| | |
|
| | | //按下确认按钮
|
| | | dialogForm.ComfirmClickEvent += ((textValue) =>
|
| | |
| | | }
|
| | |
|
| | | //画面关闭
|
| | | dialogForm.CloseForm();
|
| | | dialogForm.CloseDialog();
|
| | |
|
| | | //名字一样时,不处理
|
| | | if (textValue != fileInfo.BackupName)
|
| | | if (textValue != fileInfo.FolderName)
|
| | | {
|
| | | //编辑备份名称
|
| | | this.EditorBackInfo(fileInfo.Id, textValue);
|
| | |
| | | private void ShowAddBackupForm()
|
| | | {
|
| | | //生成一个弹窗画面
|
| | | var dialogForm = new DialogInputForm();
|
| | | dialogForm.AddForm(DialogFrameMode.OnlyInput);
|
| | | var dialogForm = new DialogInputControl();
|
| | | //添加备份
|
| | | dialogForm.SetTitleText(Language.StringByID(R.MyInternationalizationString.uAddBackup));
|
| | | //请输入备注名称
|
| | | dialogForm.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackup));
|
| | | //请输入备份名称
|
| | | dialogForm.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackupName));
|
| | |
|
| | | //按下确认按钮
|
| | | dialogForm.ComfirmClickEvent += ((textValue) =>
|
| | |
| | | }
|
| | |
|
| | | //画面关闭
|
| | | dialogForm.CloseForm();
|
| | | dialogForm.CloseDialog();
|
| | |
|
| | | //上传备份
|
| | | this.UpLoadBackInfo(textValue);
|
| | |
| | | #region ■ 一般方法___________________________
|
| | |
|
| | | /// <summary>
|
| | | /// 把本地所有文件移动到自动备份文件夹
|
| | | /// </summary>
|
| | | private void CopyLocationAllFileToAutoBackDirectory()
|
| | | {
|
| | | List<string> listAllFile = Shared.Common.Global.FileListByHomeId();
|
| | |
|
| | | string strroot = Common.Config.Instance.FullPath;
|
| | | string autoPath = System.IO.Path.Combine(strroot, DirNameResourse.LocalMemoryDirectory, DirNameResourse.AutoBackupDirectory);
|
| | | foreach (string file in listAllFile)
|
| | | {
|
| | | //判断是否是应该上传的文件
|
| | | if (HdlBackupLogic.Current.IsNotUpLoadFile(file) == true)
|
| | | {
|
| | | continue;
|
| | | }
|
| | | string sourseName = System.IO.Path.Combine(strroot, file);
|
| | | string newName = System.IO.Path.Combine(autoPath, file);
|
| | | System.IO.File.Copy(sourseName, newName, true);
|
| | | }
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 检测备考名称
|
| | | /// </summary>
|
| | | /// <param name="backName"></param>
|
| | |
| | | {
|
| | | if (backName == string.Empty)
|
| | | {
|
| | | //请输入备注名称
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackup);
|
| | | //请输入备份名称
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackupName);
|
| | | this.ShowMassage(ShowMsgType.Error, msg);
|
| | | return false;
|
| | | }
|