wei
2020-12-17 bb6ad792b598927a5459a5fb6f6c27fb1aa9e94e
HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs
@@ -1,4 +1,5 @@
using System;
using HDL_ON.DAL.Server;
using HDL_ON.Entity;
using Shared;
@@ -17,11 +18,13 @@
            LoadEvent_GoPersonalDataPage();
            LoadEvent_SkipAboutOnPage();
            LoadEvent_SkipGetSupportPage();
            if (!DB_ResidenceData.residenceData.residecenInfo.IsOthreShare)
            if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
            {
                LoadEvent_SkipResdentialManagePage();
                LoadEvent_GoMemberManagement();
                LoadEvent_SkipbtnAddFunctionPage();
                #region F3阶段
                //LoadEvent_SkipbtnAddFunctionPage();
                #endregion
            }
        }
@@ -61,8 +64,24 @@
                };
                dispalyView.AddChidren(contentView);
                if (UserInfo.Current.regionList.Count < 3)
                if (UserInfo.Current.regionList.Count < 2)
                {
                }
                else if (UserInfo.Current.regionList.Count < 3)
                {
                    dispalyView = new FrameLayout()
                    {
                        X = Application.GetRealWidth(10),
                        Y = Application.GetRealHeight(268),
                        Width = Application.GetRealWidth(160),
                        Height = Application.GetRealHeight(105),
                        BackgroundImagePath = "PersonalCenter/HomeList1bg.png",
                    };
                    dialogBody.AddChidren(dispalyView);
                    contentView.Height = Application.GetRealHeight(45 * 2);
                    dispalyView.AddChidren(contentView);
                }
                else if (UserInfo.Current.regionList.Count < 4)
                {
@@ -124,7 +143,7 @@
                        SelectedTextColor = CSS.CSS_Color.MainColor,
                        Text = home.Name,
                        TextSize = home.Name.Length > 14 ? CSS.CSS_FontSize.TextFontSize : CSS.CSS_FontSize.SubheadingFontSize,
                        IsSelected = DB_ResidenceData.residenceData.residecenInfo.RegionID == home.RegionID,
                        IsSelected = DB_ResidenceData.Instance.CurrentRegion.RegionID == home.RegionID,
                        IsMoreLines = true,
                        Tag = home.RegionID
                    };
@@ -144,8 +163,8 @@
                    {
                        var regionId = (string)btnHomeName.Tag;
                        dialog.Close();
                        //DB_ResidenceData.residenceData.CurReginID = regionId;
                        LoadEvent_ChangeCurHome(UserInfo.Current.regionList.Find((obj) => obj.RegionID == regionId));
                        //LoadEvent_ChangeCurHome(UserInfo.Current.regionList.Find((obj) => obj.RegionID == regionId));
                        LoadEvent_ChangeCurHome(home);
                        LoadContentView();
                    };
                }
@@ -161,63 +180,32 @@
        /// <param name="homeTemp"></param>
        void LoadEvent_ChangeCurHome(RegionInfoRes homeTemp)
        {
            if (DB_ResidenceData.residenceData.CurReginID == homeTemp.RegionID)
            if (DB_ResidenceData.Instance.CurrentRegion.RegionID == homeTemp.RegionID)
            {
                return;
            }
            string oldRegionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID.ToString());
            string newRegionRootPath = FileUtils.CreateRegionBackup(homeTemp.RegionID.ToString());
            DB_ResidenceData.residenceData.CurReginID = homeTemp.RegionID;
            DB_ResidenceData.residenceData.SaveResidenceData();
            DB_ResidenceData.Instance.CurrentRegion = homeTemp;
            DB_ResidenceData.Instance.SaveResidenceData();
            var waitPage = new Loading();
            bodyView.AddChidren(waitPage);
            waitPage.Start(Language.StringByID(StringId.PleaseWait));
            new System.Threading.Thread(() =>
            {
                try
                {
                    var backuplist = FileUtils.ReadFiles();
                    int index = 0;
                    FileUtils.DeleteRegionFiles(oldRegionRootPath);
                    //移动文件
                    foreach (var fileName in backuplist)
                    {
                        System.IO.FileInfo fileInfo = new System.IO.FileInfo(FileUtils.RootPath + fileName);
                        if (fileName == "headImage.png")
                        {
                            continue;
                        }
                        if (fileInfo.Exists)
                        {
                            fileInfo.MoveTo(oldRegionRootPath + fileName);
                            MainPage.Log("move file : " + fileName);
                        }
                        index++;
                        Application.RunOnMainThread(() =>
                        {
                            int pro = (int)(index * 1.0 / backuplist.Count * 50);
                            waitPage.Text = pro.ToString() + "%";
                        });
                    }
                    //删除本地文件
                    foreach (var fileName in backuplist)
                    {
                        if (fileName == "headImage.png")
                        {
                            continue;
                        }
                        FileUtils.DeleteFile(fileName);
                    }
                    //倒出新住宅数据
                    FileUtils.RestoreRegionFiles(newRegionRootPath);
                    UserInfo.Current.SaveUserInfo();
                    DB_ResidenceData.residenceData.EixtAccount();
                    DB_ResidenceData.residenceData.CurReginID = homeTemp.RegionID;
                    OnAppConfig.Instance.SaveUserConfig();
                    DB_ResidenceData.InitRoomFunction();
                    DB_ResidenceData.residenceData.SaveResidenceData();
                    DB_ResidenceData.Instance.EixtAccount();
                    //刷新一次住宅网关
                    new HttpServerRequest().GetHomeGatewayList();
                    Application.RunOnMainThread(() =>
                    {
                        btnCurResidenceName.Text = DB_ResidenceData.residenceData.residecenInfo.Name;
                        btnCurResidenceName.Text = DB_ResidenceData.Instance.CurrentRegion.Name;
                        //重置网关状态
                        DriverLayer.Control.Ins.GatewayOnline = false;
                    });
                    //搜索网关
                    DriverLayer.Control.Ins.SearchLoaclGateway();
                }
                catch (Exception ex)
                {
@@ -234,6 +222,7 @@
                    {
                        waitPage.Hide();
                        waitPage.RemoveFromParent();
                        MainPage.InitializationData();
                    });
                }
            })
@@ -244,13 +233,13 @@
        #region 住宅管理
        void LoadEvent_SkipResdentialManagePage()
        {
            if (!DB_ResidenceData.residenceData.residecenInfo.IsOthreShare)
            if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
            {
                EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
                {
                    Action updateResidenceName = () =>
                    {
                        btnCurResidenceName.Text = DB_ResidenceData.residenceData.residecenInfo.Name;
                        btnCurResidenceName.Text = DB_ResidenceData.Instance.CurrentRegion.Name;
                    };
                    var residentialManagePage = new ResidentialManagePage(updateResidenceName);
                    MainPage.BasePageView.AddChidren(residentialManagePage);
@@ -305,19 +294,21 @@
        #endregion
        #region F3阶段
        #region 添加设备
        void LoadEvent_SkipbtnAddFunctionPage()
        {
            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
            {
                var page = new SearchDevicePage();
                MainPage.BasePageView.AddChidren(page);
                page.LoadPage();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
            };
            btnResidenceAddFunctionIcon.MouseUpEventHandler = eventHandler;
            btnResidenceAddFunctionText.MouseUpEventHandler = eventHandler;
        }
        //void LoadEvent_SkipbtnAddFunctionPage()
        //{
        //    EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
        //    {
        //        var page = new SearchDevicePage();
        //        MainPage.BasePageView.AddChidren(page);
        //        page.LoadPage();
        //        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
        //    };
        //    btnResidenceAddFunctionIcon.MouseUpEventHandler = eventHandler;
        //    btnResidenceAddFunctionText.MouseUpEventHandler = eventHandler;
        //}
        #endregion
        #endregion
        #region 关于On、获取支持
@@ -341,7 +332,13 @@
        {
            btnSupportText.MouseUpEventHandler = (sender, e) =>
            {
                var getsupportPage = new GetSupportPage();
                //var getsupportPage = new GetSupportPage();
                //MainPage.BasePageView.AddChidren(getsupportPage);
                //getsupportPage.LoadPage();
                //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                var getsupportPage = new FAQHelpPage();
                MainPage.BasePageView.AddChidren(getsupportPage);
                getsupportPage.LoadPage();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;