xm
2020-12-10 3aa397ab145382935492b11c1f18c9634e69910b
ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceListMainForm.cs
File was renamed from ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceListForm.cs
@@ -7,7 +7,7 @@
    /// <summary>
    /// 住宅管理的画面★
    /// </summary>
    public class ResidenceListForm : EditorCommonForm
    public class ResidenceListMainForm : EditorCommonForm
    {
        #region ■ 变量声明___________________________
@@ -250,14 +250,32 @@
                //分享的,不能更改
                return;
            }
            //只有切换到当前住宅,并且本地拥有网关的时候,才能过户
            if (info.Id == Config.Instance.Home.Id && HdlGatewayLogic.Current.GetAllLocalGateway().Count > 0)
            {
            //过户
            var btnTransfer = rowLayout.AddDeleteControl();
            btnTransfer.TextID = R.MyInternationalizationString.uTransfer;
            btnTransfer.ButtonClickEvent += (sender, e) =>
            {
                var form = new TransferResidenceMainForm();
                    rowLayout.HideMenu();
                    HdlCheckLogic.Current.CheckSecondarySecurity(() =>
                    {
                        //执行过户操作
                        this.DoTransferResidence();
                    },
                    () =>
                    {
                        //请前往个人中心{0}设置二次安全验证方式
                        string msg = Language.StringByID(R.MyInternationalizationString.uGotoCenterAndSetSecondAuthentication).Replace("{0}", "\r\n");
                        this.ShowMassage(ShowMsgType.Confirm, msg, () =>
                        {
                            var form = new UserMain.SecondAuthenticationForm();
                form.AddForm();
                        });
                    });
            };
            }
            //更改
            var btnChanged = rowLayout.AddEditorControl();
            btnChanged.TextID = R.MyInternationalizationString.uChanged1;
@@ -558,6 +576,85 @@
        #endregion
        #region ■ 过户_______________________________
        /// <summary>
        /// 执行过户操作
        /// </summary>
        private void DoTransferResidence()
        {
            this.ShowProgressBar();
            HdlThreadLogic.Current.RunThread(() =>
            {
                //检测它有没有备份
                var listBack = HdlBackupLogic.Current.GetBackupListNameFromDB();
                this.CloseProgressBar();
                if (listBack == null)
                {
                    return;
                }
                HdlThreadLogic.Current.RunMain(() =>
                {
                    if (listBack.Count > 0)
                    {
                        var form = new Transfer.TransferResidenceMainForm();
                        form.AddForm(1);
                    }
                    else
                    {
                        //检测到还没有备份,请先备份
                        this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.uIsNotHadBackupByCheckPleaseBackup));
                        //生成一个弹窗画面
                        this.ShowDialogInputForm(Language.StringByID(R.MyInternationalizationString.uAddBackup),
                         Config.Instance.Home.Name,
                         Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackupName), (dialogForm, textValue) =>
                         {
                             //画面关闭
                             dialogForm.CloseDialog();
                             HdlThreadLogic.Current.RunThread(() =>
                             {
                                 //创建一个备份名字
                                 string backupClassId = HdlBackupLogic.Current.CreatNewBackupNameToDB(textValue);
                                 if (backupClassId == null)
                                 {
                                     //创建备份名字失败
                                     string msg = Language.StringByID(R.MyInternationalizationString.uCreatBackupNameFail);
                                     this.ShowMassage(ShowMsgType.Error, msg);
                                     return;
                                 }
                                 //上传数据到云端
                                 bool result = HdlBackupLogic.Current.UpLoadBackupFileToDB(backupClassId);
                                 if (result == false)
                                 {
                                     //文件上传失败
                                     string msg = Language.StringByID(R.MyInternationalizationString.uFileUpLoadFail);
                                     this.ShowMassage(ShowMsgType.Error, msg);
                                     //如果上传失败的话,就把它删除
                                     HdlBackupLogic.Current.DeleteDbBackupData(backupClassId);
                                     return;
                                 }
                                 HdlThreadLogic.Current.RunMain(() =>
                                 {
                                     var form = new Transfer.TransferResidenceMainForm();
                                     form.AddForm(1);
                                 });
                             });
                         });
                    }
                });
            });
        }
        #endregion
        #region ■ 一般方法___________________________
        /// <summary>