| | |
| | | /// <summary>
|
| | | /// 自动备份的界面
|
| | | /// </summary>
|
| | | public class HdlAutoBackUpForm : UserCenterCommonForm
|
| | | public class HdlAutoBackupForm : EditorCommonForm
|
| | | {
|
| | | #region ■ 变量声明___________________________
|
| | |
|
| | | /// <summary>
|
| | | /// BackupClassId
|
| | | /// </summary>
|
| | | private string m_BackupDeleteClassId = null;
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 初始化_____________________________
|
| | |
|
| | | /// <summary> |
| | | /// 画面显示(底层会固定调用此方法,借以完成画面创建) |
| | | /// </summary> |
| | | public void ShowForm() |
| | | { |
| | | //设置标题信息 |
| | | base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uAppAutoBackup));
|
| | | |
| | | //初始化中部控件 |
| | | this.InitMiddleFrame(); |
| | | |
| | | //添加上传菜单 |
| | | this.AddUploadMenu(); |
| | | }
|
| | |
|
| | | /// <summary> |
| | | /// 初始化中部控件 |
| | | /// </summary> |
| | | private void InitMiddleFrame() |
| | | /// <summary>
|
| | | /// 画面显示(底层会固定调用此方法,借以完成画面创建)
|
| | | /// </summary>
|
| | | public void ShowForm()
|
| | | {
|
| | | bodyFrameLayout.RemoveAll();
|
| | |
|
| | | new System.Threading.Thread(async () =>
|
| | | {
|
| | | //进度条
|
| | | this.ShowProgressBar();
|
| | | //获取app的自动备份
|
| | | var data = await HdlBackupLogic.Current.GetBackupListNameFromDB(1);
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | | if (data == null || data.Count == 0)
|
| | | {
|
| | | return;
|
| | | }
|
| | | //自动备份只有一个
|
| | | Application.RunOnMainThread(() =>
|
| | | {
|
| | | //添加自动备份的行
|
| | | this.AddRowlayout(data[0]);
|
| | | this.m_BackupDeleteClassId = data[0].Id;
|
| | | });
|
| | | })
|
| | | { IsBackground = true }.Start();
|
| | | //初始化中部信息
|
| | | this.InitMiddleFrame();
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 添加自动备份的行___________________
|
| | |
|
| | | /// <summary>
|
| | | /// 添加自动备份的行
|
| | | /// 初始化中部信息
|
| | | /// </summary>
|
| | | /// <param name="info"></param>
|
| | | private void AddRowlayout(BackupListNameInfo info)
|
| | | private void InitMiddleFrame()
|
| | | {
|
| | | //行
|
| | | var rowLayout = new StatuRowLayout();
|
| | | bodyFrameLayout.AddChidren(rowLayout);
|
| | | //清空bodyFrame
|
| | | this.ClearBodyFrame();
|
| | |
|
| | | //图标
|
| | | var btnPoint = new RowLeftIconView();
|
| | | btnPoint.SelectedImagePath = "Center/BackupSelected.png";
|
| | | btnPoint.UnSelectedImagePath = "Center/Backup.png";
|
| | | rowLayout.AddChidren(btnPoint, ChidrenBindMode.BindEventOnly);
|
| | | //body占完整个屏幕
|
| | | bodyFrameLayout.Y = 0;
|
| | | bodyFrameLayout.Height = ControlCommonResourse.TopMenuFrameHeight + ControlCommonResourse.TopFrameHeight
|
| | | + ControlCommonResourse.BodyFrameHeight;
|
| | |
|
| | | //备份名字
|
| | | var txtText = new RowCenterView();
|
| | | txtText.TextID = R.MyInternationalizationString.uAutoBackupData;
|
| | | rowLayout.AddChidren(txtText, ChidrenBindMode.BindEventOnly);
|
| | | var btnPic = new NormalViewControl(991, 438, true);
|
| | | btnPic.UnSelectedImagePath = "Item/AutoBackup.png";
|
| | | btnPic.Y = Application.GetRealHeight(374);
|
| | | bodyFrameLayout.AddChidren(btnPic);
|
| | |
|
| | | //下载图标
|
| | | var btnLoad = new MostRightEmptyView();
|
| | | //启用点亮功能
|
| | | btnLoad.UseClickStatu = true;
|
| | | btnLoad.UnSelectedImagePath = "Item/DownLoad.png";
|
| | | btnLoad.SelectedImagePath = "Item/DownLoadSelected.png";
|
| | | rowLayout.AddChidren(btnLoad, ChidrenBindMode.NotBind);
|
| | | //下载图标太右边不好看 |
| | | btnLoad.X -= Application.GetRealWidth(50);
|
| | | btnLoad.MouseUpEventHandler += (sender, e) =>
|
| | | //自动备份
|
| | | var btnAuto = new NormalViewControl(400, 85, true);
|
| | | btnAuto.Y = Application.GetRealHeight(876);
|
| | | btnAuto.Gravity = Gravity.CenterHorizontal;
|
| | | btnAuto.TextID = R.MyInternationalizationString.uAutoBackup;
|
| | | btnAuto.TextSize = 20;
|
| | | btnAuto.TextAlignment = TextAlignment.Center;
|
| | | bodyFrameLayout.AddChidren(btnAuto);
|
| | |
|
| | | //检测到数据更新,是否需要备份
|
| | | var btnMsg = new NormalViewControl(bodyFrameLayout.Width, Application.GetRealHeight(60), false);
|
| | | btnMsg.Y = btnAuto.Bottom + Application.GetRealHeight(23);
|
| | | btnMsg.TextID = R.MyInternationalizationString.uIsHadNotBackupDataOnScan;
|
| | | btnMsg.TextAlignment = TextAlignment.Center;
|
| | | btnMsg.TextColor = UserCenterColor.Current.TextGrayColor1;
|
| | | bodyFrameLayout.AddChidren(btnMsg);
|
| | |
|
| | | //立即备份(推荐)
|
| | | var frameback = new FrameLayoutStatuControl();
|
| | | frameback.UseClickStatu = false;
|
| | | frameback.Y = Application.GetRealHeight(1201);
|
| | | frameback.Gravity = Gravity.CenterHorizontal;
|
| | | frameback.Width = Application.GetRealWidth(746);
|
| | | frameback.Height = Application.GetRealHeight(184);
|
| | | frameback.BackgroundImagePath = "Item/BottomButtonGround.png";
|
| | | bodyFrameLayout.AddChidren(frameback);
|
| | | var btnBackup = new NormalViewControl(400, 65, true);
|
| | | btnBackup.IsBold = true;
|
| | | btnBackup.TextColor = UserCenterColor.Current.White;
|
| | | btnBackup.TextSize = 16;
|
| | | btnBackup.Y = Application.GetRealHeight(49);
|
| | | btnBackup.Gravity = Gravity.CenterHorizontal;
|
| | | btnBackup.TextAlignment = TextAlignment.Center;
|
| | | btnBackup.Text = Language.StringByID(R.MyInternationalizationString.uImmediatelyBackup) + "(" + Language.StringByID(R.MyInternationalizationString.uRecommendation) + ")";
|
| | | frameback.AddChidren(btnBackup, ChidrenBindMode.BindEvent);
|
| | | frameback.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | //是否要下载并恢复数据?
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uDownLoadAndRecoverMsg);
|
| | | this.ShowConfirmMsg(msg, "LoadBackupInfo", info.Id);
|
| | | HdlThreadLogic.Current.RunThread(() =>
|
| | | {
|
| | | //上传数据
|
| | | this.UpLoadBackupInfo();
|
| | | });
|
| | | };
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 读取备份文档_______________________
|
| | |
|
| | | /// <summary>
|
| | | /// 读取备份文档
|
| | | /// </summary>
|
| | | /// <param name="BackupClassId"></param>
|
| | | public void LoadBackupInfo(string BackupClassId)
|
| | | {
|
| | | new System.Threading.Thread(async () =>
|
| | | //暂不提醒
|
| | | var btnRemind = new NormalViewControl(688, 127, true);
|
| | | btnRemind.Y = frameback.Bottom + Application.GetRealHeight(52);
|
| | | btnRemind.Gravity = Gravity.CenterHorizontal;
|
| | | btnRemind.Radius = (uint)Application.GetRealHeight(127) / 2;
|
| | | btnRemind.BorderWidth = 1;
|
| | | btnRemind.BorderColor = UserCenterColor.Current.TextOrangeColor;
|
| | | btnRemind.TextAlignment = TextAlignment.Center;
|
| | | btnRemind.TextSize = 16;
|
| | | btnRemind.TextColor = UserCenterColor.Current.TextGrayColor3;
|
| | | btnRemind.TextID = R.MyInternationalizationString.uTemporaryStopRemind;
|
| | | bodyFrameLayout.AddChidren(btnRemind);
|
| | | btnRemind.ButtonClickEvent += (sender, e) =>
|
| | | {
|
| | | //从云端获取备份的文件
|
| | | bool result = await HdlBackupLogic.Current.LoadAppBackupInfo(BackupClassId);
|
| | | if (result == false)
|
| | | {
|
| | | //文件恢复失败
|
| | | string msg2 = Language.StringByID(R.MyInternationalizationString.uFileRecoverFail);
|
| | | this.ShowNormalMsg(msg2);
|
| | | return;
|
| | | }
|
| | |
|
| | | Application.RunOnMainThread(() =>
|
| | | { |
| | | //关闭所有界面 |
| | | UserCenterLogic.CloseAllOpenForm();
|
| | | //切换到主页
|
| | | UserView.UserPage.Instance.Fresh();
|
| | | });
|
| | |
|
| | | //文件恢复成功
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uFileRecoverSuccess);
|
| | | this.ShowNormalMsg(msg);
|
| | | })
|
| | | { IsBackground = true }.Start();
|
| | | HdlAutoBackupLogic.SaveBackupNotPrompted(false, 3);
|
| | | this.CloseForm();
|
| | | };
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
| | | /// <summary>
|
| | | /// 上传数据
|
| | | /// </summary>
|
| | | public void UpLoadBackupInfo()
|
| | | private void UpLoadBackupInfo()
|
| | | {
|
| | | new System.Threading.Thread(async () =>
|
| | | int result = HdlAutoBackupLogic.DoUpLoadAutoBackupData();
|
| | | if (result == -1)
|
| | | {
|
| | | int result = await HdlAutoBackupLogic.DoUpLoadAutoBackupData();
|
| | | if (result == -1)
|
| | | {
|
| | | //文件上传失败
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uFileUpLoadFail);
|
| | | this.ShowErrorMsg(msg);
|
| | | //文件上传失败
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uFileUpLoadFail);
|
| | | this.ShowMassage(ShowMsgType.Error, msg);
|
| | |
|
| | | return;
|
| | | }
|
| | | //数据成功同步到服务器
|
| | | string msg2 = Language.StringByID(R.MyInternationalizationString.uSynchronizeDataToServiceSuccessMsg);
|
| | | this.ShowTip(msg2);
|
| | |
|
| | | Application.RunOnMainThread(() =>
|
| | | {
|
| | | //初始化中部控件
|
| | | this.InitMiddleFrame();
|
| | | });
|
| | | })
|
| | | { IsBackground = true }.Start();
|
| | | }
|
| | | #endregion
|
| | |
|
| | | #region ■ 添加上传菜单_______________________
|
| | |
|
| | | /// <summary>
|
| | | /// 添加上传菜单
|
| | | /// </summary>
|
| | | private void AddUploadMenu()
|
| | | {
|
| | | var btnIcon = new TopLayoutMostRightView(); |
| | | btnIcon.UnSelectedImagePath = "Item/More.png"; |
| | | btnIcon.SelectedImagePath = "Item/MoreSelected.png"; |
| | | topFrameLayout.AddChidren(btnIcon); |
| | | btnIcon.MouseUpEventHandler += (sender, e) =>
|
| | | {
|
| | | var menuForm = new TopRightMenuControl(this, 1);
|
| | | menuForm.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uUpLoadAutoBackUpButton), (obj) =>
|
| | | {
|
| | | //确认是否上传数据到服务器?
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uSynchronizeDataToServiceMsg);
|
| | | this.ShowConfirmMsg(msg, "UpLoadBackupInfo");
|
| | | });
|
| | | //menuForm.AddRowMenu("删除备份", (obj) =>
|
| | | //{
|
| | | // string msg = "确定要删除自动备份吗?\r\n(PS:此功能后续会删除)";
|
| | | // this.ShowConfirmMsg(msg, "DeleteBackId");
|
| | | //});
|
| | | };
|
| | | }
|
| | |
|
| | | #endregion
|
| | |
|
| | | #region ■ 添加删除菜单(暂时,后续会删除)______
|
| | |
|
| | | /// <summary>
|
| | | /// 删除备份(暂时,后续会删除)
|
| | | /// </summary>
|
| | | public async void DeleteBackId()
|
| | | {
|
| | | if (this.m_BackupDeleteClassId == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | //进度条
|
| | | this.ShowProgressBar();
|
| | | bool success = await HdlBackupLogic.Current.DeleteDbBackupData(m_BackupDeleteClassId);
|
| | | //关闭进度条
|
| | | this.CloseProgressBar();
|
| | |
|
| | | if (success == false)
|
| | | {
|
| | | //删除备份失败
|
| | | string msg = Language.StringByID(R.MyInternationalizationString.uDeleteBackupFail);
|
| | | this.ShowErrorMsg(msg);
|
| | | return;
|
| | | }
|
| | | //数据成功上传到服务器
|
| | | string msg2 = Language.StringByID(R.MyInternationalizationString.uSynchronizeDataToServiceSuccessMsg);
|
| | | this.ShowMassage(ShowMsgType.Tip, msg2);
|
| | |
|
| | | Application.RunOnMainThread(() =>
|
| | | {
|
| | | this.m_BackupDeleteClassId = null;
|
| | |
|
| | | this.InitMiddleFrame();
|
| | | this.CloseForm();
|
| | | });
|
| | | }
|
| | |
|
| | | #endregion
|
| | | }
|
| | | }
|