From 6d73bf6e816570291865674bef8bce8972e4de3f Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期三, 01 十二月 2021 16:32:57 +0800
Subject: [PATCH] 2021-12-01-01

---
 HDL_ON/UI/UI1-Login/LoginPageBLL.cs |  802 +++++++++++++++++++++-----------------------------------
 1 files changed, 304 insertions(+), 498 deletions(-)

diff --git a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
index a2ad46f..201b868 100644
--- a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
+++ b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
@@ -36,11 +36,11 @@
             try
             {
                 var mGlobalRegionListObj = Newtonsoft.Json.JsonConvert.DeserializeObject<GlobalRegionListRes>(result.Data.ToString());
-                if (UserInfo.Current.RequestHttpsHost != mGlobalRegionListObj.regionUrl)
+                if (OnAppConfig.Instance.RequestHttpsHost != mGlobalRegionListObj.regionUrl)
                 {
-                    UserInfo.Current.RequestHttpsHost = mGlobalRegionListObj.regionUrl;
-                    UserInfo.Current.GlobalRegion = mGlobalRegionListObj;
-                    UserInfo.Current.SaveUserInfo();
+                    OnAppConfig.Instance.RequestHttpsHost = mGlobalRegionListObj.regionUrl;
+                    OnAppConfig.Instance.GlobalRegion = mGlobalRegionListObj;
+                    OnAppConfig.Instance.SaveConfig();
                 }
             }
             catch { }
@@ -84,152 +84,97 @@
                         btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
                         return;
                     }
+                    //鍔犺浇Loading鏁堟灉
+                    var waitPage = new Loading();
+                    bodyView.AddChidren(waitPage);
+                    waitPage.Start(Language.StringByID(StringId.PleaseWait));
 
                     int time = 60;
                     new Thread(() =>
                     {
-                        //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃
-                        var result = pm.GetRegionByAccount(account);
-                        if (result.Code != StateCode.SUCCESS)
+                        try
                         {
-                            IMessageCommon.Current.ShowErrorInfoAlter(result.Code);
-                            ShowBtnAccountViewBottomLineError();
-                            return;
-                        }
-                        else
-                        {
-                            //妫�娴嬪綋鍓嶉厤缃煙鍚嶆槸鍚︿竴鑷达紝涓嶄竴鑷村垯鏇挎崲
-                            CheckAndSetUserRequestHost(result);
-                            //
-                            Application.RunOnMainThread(() =>
+                            //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃
+                            var result = pm.GetRegionByAccount(account);
+                            if (result.Code != StateCode.SUCCESS)
                             {
-                                btnGetVerificationCode.IsSelected = false;
-                                btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1;
-                            });
-                            new Thread(() =>
+                                IMessageCommon.Current.ShowErrorInfoAlter(result.Code);
+                                ShowBtnAccountViewBottomLineError();
+                                return;
+                            }
+                            else
                             {
-                                while (time > 0)
+                                //妫�娴嬪綋鍓嶉厤缃煙鍚嶆槸鍚︿竴鑷达紝涓嶄竴鑷村垯鏇挎崲
+                                CheckAndSetUserRequestHost(result);
+
+                                //2.1璇锋眰鑾峰彇楠岃瘉鐮�
+                                var resultObj = pm.VerificationCodeSend(VerifyType.VERIFY_LOGIN, account, true, phoneZoneCode);
+                                if (resultObj.Code != StateCode.SUCCESS)
                                 {
-                                    time--;
+                                    //2.2璇锋眰鑾峰彇楠岃瘉鐮佸け璐�
                                     Application.RunOnMainThread(() =>
                                     {
-                                        btnGetVerificationCode.Text = time.ToString() + "s";
+                                        btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                                        btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
                                     });
-                                    Thread.Sleep(1000);
+                                    // 鎻愮ず閿欒
+                                    IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
                                 }
-                                Application.RunOnMainThread(() =>
+                                else
                                 {
-                                    btnGetVerificationCode.IsSelected = true;
-                                    btnGetVerificationCode.TextID = StringId.GetVerificationCode;
-                                });
-                            })
-                            { IsBackground = true }.Start();
+                                    Application.RunOnMainThread(() =>
+                                    {
+                                        btnGetVerificationCode.IsSelected = false;
+                                        btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1;
+                                    });
 
-                            //2.1璇锋眰鑾峰彇楠岃瘉鐮�
-                            var resultObj = pm.VerificationCodeSend(VerifyType.VERIFY_LOGIN, account, true, phoneZoneCode);
-                            if (resultObj.Code != StateCode.SUCCESS)
-                            {
-                                //2.2璇锋眰鑾峰彇楠岃瘉鐮佸け璐�
-                                Application.RunOnMainThread(() =>
-                                {
-                                    btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
-                                    btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
-                                });
-                                // 鎻愮ず閿欒
-                                IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
+                                    new Thread(() =>
+                                    {
+                                        while (time > 0)
+                                        {
+                                            time--;
+                                            Application.RunOnMainThread(() =>
+                                            {
+                                                btnGetVerificationCode.Text = time.ToString() + "s";
+                                            });
+                                            Thread.Sleep(1000);
+                                        }
+                                        Application.RunOnMainThread(() =>
+                                        {
+                                            btnGetVerificationCode.IsSelected = true;
+                                            btnGetVerificationCode.TextID = StringId.GetVerificationCode;
+                                        });
+                                    })
+                                    { IsBackground = true }.Start();
+                                }
                             }
                         }
-
+                        catch { }
+                        finally
+                        {
+                            Application.RunOnMainThread(() =>
+                            {
+                                if (waitPage != null)
+                                {
+                                    waitPage.RemoveFromParent();
+                                    waitPage = null;
+                                }
+                            });
+                        }
                     })
                     { IsBackground = true }.Start();
 
-                    //    btnGetVerificationCode.IsSelected = false ;
-                    //    btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1;
-                    //    int time = 60;
-                    //    new Thread(() =>
-                    //    {
-                    //        while (time > 0)
-                    //        {
-                    //            time--;
-                    //            Application.RunOnMainThread(() =>
-                    //            {
-                    //                btnGetVerificationCode.Text = time.ToString() + "s";
-                    //            });
-                    //            Thread.Sleep(1000);
-                    //        }
-                    //        Application.RunOnMainThread(() =>
-                    //        {
-                    //            btnGetVerificationCode.IsSelected = true;
-                    //            btnGetVerificationCode.TextID = StringId.GetVerificationCode;
-                    //        });
-                    //    })
-                    //    { IsBackground = true }.Start();
-                    //    new Thread(() =>
-                    //    {
-                    //        //鑾峰彇楠岃瘉鐮�
-                    //        var result = pm.GetLoginVerCode(phoneNumber);
-                    //        if (result.StateCode.ToUpper() == StateCode.SUCCESS_CODE)
-                    //        {
-                    //        }
-                    //        //鐧诲綍澶辫触
-                    //        else
-                    //        {
-                    //            string tipStr = "Sever erorr";
-                    //            switch (result.StateCode.ToUpper())
-                    //            {
-                    //                case "USERNAMEORPWDERROR":
-                    //                    tipStr = Language.StringByID(StringId.LoginFailed_AccountOrPasswordError);
-                    //                    Application.RunOnMainThread(() =>
-                    //                    {
-                    //                        btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
-                    //                        btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
-                    //                    });
-                    //                    break;
-                    //                case "ACCOUNTNOEXISTS":
-                    //                    tipStr = Language.StringByID(StringId.ACCOUNTNOEXISTS);
-                    //                    Application.RunOnMainThread(() =>
-                    //                    {
-                    //                        btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
-                    //                        btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
-                    //                    });
-                    //                    break;
-                    //                case "SENDFAIL":
-                    //                    tipStr = Language.StringByID(StringId.FailedToSendVerificationCode);
-                    //                    Application.RunOnMainThread(() =>
-                    //                    {
-                    //                        btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
-                    //                        btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
-                    //                    });
-                    //                    break;
-                    //                case "Self:Net_Error":
-                    //                    tipStr = Language.StringByID(StringId.NetworkAnomaly);
-                    //                    break;
-                    //            }
-                    //            Application.RunOnMainThread(() =>
-                    //            {
-                    //                //鎻愮ず鍘熷洜
-                    //                var tip = new Tip()
-                    //                {
-                    //                    Text = tipStr,
-                    //                    CloseTime = 1,
-                    //                    Direction = AMPopTipDirection.None
-                    //                };
-                    //                tip.Show(bodyView);
-                    //            });
-                    //        }
-                    //    })
-                    //    { IsBackground = true }.Start();
                 }
             };
         }
 
         /// <summary>
-        /// 鍒囨崲鐧诲綍绫诲瀷
+        /// 
         /// </summary>
-        void LoadPage_SwitchLoginType()
+        /// <param name="type">鏄惁閫夋嫨鎵嬫満鐧诲綍</param>
+        void LoginTypeChange(bool isPhone)
         {
-            //閫夋嫨鎵嬫満鐧诲綍
-            btnPhoneLogin.MouseUpEventHandler = (sender, e) =>
+            if (isPhone)
             {
                 if (loginType == 0)
                     return;
@@ -282,11 +227,8 @@
                     etPassword.SecureTextEntry = false;
                 }
                 #endregion
-
-            };
-
-            //閫夋嫨閭鐧诲綍
-            btnEmailLogin.MouseUpEventHandler += (sender, e) =>
+            }
+            else
             {
                 if (loginType == 1)
                     return;
@@ -327,7 +269,78 @@
                 etPassword.SecureTextEntry = true;
                 //闅愯棌楠岃瘉鐮佺櫥褰曟柟寮忥紝閭鐧诲綍娌℃湁楠岃瘉鐮佺櫥褰�
                 btnSwitchLoginMode.Visible = false;
+            }
+        }
+
+        /// <summary>
+        /// 鍒囨崲鐧诲綍绫诲瀷
+        /// </summary>
+        void LoadPage_SwitchLoginType()
+        {
+            //閫夋嫨鎵嬫満鐧诲綍
+            btnPhoneLogin.MouseUpEventHandler = (sender, e) =>
+            {
+                LoginTypeChange(true);
             };
+
+            //閫夋嫨閭鐧诲綍
+            btnEmailLogin.MouseUpEventHandler += (sender, e) =>
+            {
+                LoginTypeChange(false);
+            };
+        }
+
+        /// <summary>
+        /// 鍒囨崲鐧诲綍鏂瑰紡 楠岃瘉鐮�/瀵嗙爜
+        /// </summary>
+        void LoginModeChange()
+        {
+            //娓呴櫎瀵嗙爜妗嗘枃鏈暟鎹�
+            etPassword.Text = "";
+            //瀵嗙爜鐧诲綍
+            if (logintMode == 0)
+            {
+                btnSwitchLoginMode.TextID = StringId.VerificationCodeLogin;
+                passwordView.AddChidren(btnVisiblePassword);
+                passwordView.AddChidren(btnDividingLineVertical_PasswordView2);
+                etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryPassword);
+                passwordView.AddChidren(btnForgetPassword);
+                btnPasswordIcon.IsSelected = false;
+                //if (btnGetVerificationCode.Parent != null)
+                //{
+                //btnGetVerificationCode.RemoveFromParent();
+                btnGetVerificationCode.Visible = false;
+                //}
+                //闅愯棌瀵嗙爜
+                etPassword.SecureTextEntry = true;
+            }
+            //楠岃瘉鐮佺櫥褰�
+            else if (logintMode == 1)
+            {
+                if (Regex.IsMatch(account, @"^[1]+\d{10}") && (account.Length == 11) && btnGetVerificationCode.Text == Language.StringByID(StringId.GetVerificationCode))
+                {
+                    btnGetVerificationCode.IsSelected = true;
+                }
+                btnSwitchLoginMode.TextID = StringId.PasswordLogin;
+                //passwordView.AddChidren(btnGetVerificationCode);
+                btnGetVerificationCode.Visible = true;
+                etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryVerificationCode);
+                btnPasswordIcon.IsSelected = true;
+                if (btnVisiblePassword.Parent != null)
+                {
+                    btnVisiblePassword.RemoveFromParent();
+                }
+                if (btnDividingLineVertical_PasswordView2.Parent != null)
+                {
+                    btnDividingLineVertical_PasswordView2.RemoveFromParent();
+                }
+                if (btnForgetPassword.Parent != null)
+                {
+                    btnForgetPassword.RemoveFromParent();
+                }
+                //楠岃瘉鐮佷笉闇�瑕侀殣钘�
+                etPassword.SecureTextEntry = false;
+            }
         }
 
         /// <summary>
@@ -339,52 +352,7 @@
             btnSwitchLoginMode.MouseUpEventHandler = (sender, e) =>
             {
                 logintMode = logintMode == 0 ? 1 : 0;
-                //娓呴櫎瀵嗙爜妗嗘枃鏈暟鎹�
-                etPassword.Text = "";
-                //瀵嗙爜鐧诲綍
-                if (logintMode == 0)
-                {
-                    btnSwitchLoginMode.TextID = StringId.VerificationCodeLogin;
-                    passwordView.AddChidren(btnVisiblePassword);
-                    passwordView.AddChidren(btnDividingLineVertical_PasswordView2);
-                    etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryPassword);
-                    passwordView.AddChidren(btnForgetPassword);
-                    btnPasswordIcon.IsSelected = false;
-                    //if (btnGetVerificationCode.Parent != null)
-                    //{
-                    //btnGetVerificationCode.RemoveFromParent();
-                    btnGetVerificationCode.Visible = false;
-                    //}
-                    //闅愯棌瀵嗙爜
-                    etPassword.SecureTextEntry = true;
-                }
-                //楠岃瘉鐮佺櫥褰�
-                else if (logintMode == 1)
-                {
-                    if (Regex.IsMatch(account, @"^[1]+\d{10}") && (account.Length == 11) && btnGetVerificationCode.Text == Language.StringByID(StringId.GetVerificationCode))
-                    {
-                        btnGetVerificationCode.IsSelected = true;
-                    }
-                    btnSwitchLoginMode.TextID = StringId.PasswordLogin;
-                    //passwordView.AddChidren(btnGetVerificationCode);
-                    btnGetVerificationCode.Visible = true;
-                    etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryVerificationCode);
-                    btnPasswordIcon.IsSelected = true;
-                    if (btnVisiblePassword.Parent != null)
-                    {
-                        btnVisiblePassword.RemoveFromParent();
-                    }
-                    if (btnDividingLineVertical_PasswordView2.Parent != null)
-                    {
-                        btnDividingLineVertical_PasswordView2.RemoveFromParent();
-                    }
-                    if (btnForgetPassword.Parent != null)
-                    {
-                        btnForgetPassword.RemoveFromParent();
-                    }
-                    //楠岃瘉鐮佷笉闇�瑕侀殣钘�
-                    etPassword.SecureTextEntry = false;
-                }
+                LoginModeChange();
             };
         }
 
@@ -630,7 +598,7 @@
                             if (verAccount == etPassword.Text.Trim())
                             {
                                 //璺宠浆椤甸潰----
-                                MainPage.GoUserPage();
+                                MainPage.GoUserPage(true);
                                 return;
                             }
                         });
@@ -646,298 +614,44 @@
                              */
 
                             /*
-                             鏌ョ湅鏈湴鏄惁瀛樺湪鏁版嵁
-                             瀛樺湪鍒欏鍑�
+                             * 鏌ョ湅鏈湴鏄惁瀛樺湪鏁版嵁
+                             * 瀛樺湪鍒欏鍑�
                              */
-                            var isExis = FileUtils.IsExisFolder(DB_ResidenceData.residenceData.CurReginID);
-                            if (isExis)
-                            {
-                                FileUtils.DeleteAllFile();
-                                string regionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID);
-                                FileUtils.RestoreRegionFiles(regionRootPath);
-                                DB_ResidenceData.residenceData.EixtAccount();
-                                OnAppConfig.Instance.RefreshUserConfig();
-                                DB_ResidenceData.InitRoomFunction();
-                            }
-                            if (UserInfo.Current.userEmailInfo == "464027401@qq.com")
-                            {
-                                DB_ResidenceData.residenceData.floors.Add(new Floor() { name = "1F", sid = "09888" });
-                                var r111 = new Room() { sid = "0001", name = "Room-1", floorId = "09888", backgroundImage = "Classification/Room/Roombg.png" };
-                                DB_ResidenceData.rooms.Add(r111);
-                                DB_ResidenceData.residenceData.floors.Add(new Floor() { sid = "000022222", name = "1F" });
-                                r111.SaveRoomData();
-                                new AC()
-                                {
-                                    sid = "030101123456780604010001ABCD",
-                                    name = "绌鸿皟",
-                                    function = new List<Trait>() {
-                                                                new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} },
-                                                                new Trait { name="mode", max = 2,min =0,value_key = new List<string>{ "auto", "heat", "cool","dry" } },
-                                                                new Trait { name = "fan",max = 3,min =0,value_key = new List<string>{ "low", "medium", "high" ,"auto"} },
-                                                                new Trait { name = "set_temperature", max = 32,min=16,value_key = new List<string>{"up","down" } },
-                                                            },
-                                    roomIdList = new List<string>() { "0001" },
-                                    lastState = "鍒跺喎 涓 18掳C",
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 8,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Light()
-                                {
-                                    sid = "030101123456780202020002ABCD",
-                                    name = "璋冨厜鐏�",
-                                    function = new List<Trait>() {
-                                                                new Trait { name="brightness", max=100,min = 0, value_key= new List<string> { "up","down"} },
-                                                            },//"brightness",
-                                    roomIdList = new List<string>() { "0001" },
-                                    lastState = "20%",
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 9,
-                                        LoopID = 1,
-                                    },
-
-                                }.SaveFunctionData();
-                                new Curtain()
-                                {
-                                    sid = "030101123456780303010003ABCD",
-                                    name = "绐楀笜妯″潡",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                                new Trait { name="on_off", max=2,min = 0, value_key= new List<string> { "on","off","stop"} },
-                                                            },// "curtain",
-                                    lastState = "寮�",
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 7,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Curtain()
-                                {
-                                    sid = "030101123456780303030011ABCD",
-                                    name = "寮�鍚堝笜",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                                new Trait { name="on_off", max=100,min = 0, value_key= new List<string> { "on","off","stop"} },
-                                                            },//"curtaintype",
-                                    lastState = "20%",
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 7,
-                                        LoopID = 11,
-                                    },
-                                }.SaveFunctionData();
-                                new Curtain()
-                                {
-                                    sid = "030101123456780503040012ABCD",
-                                    name = "鍗峰笜",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                                new Trait { name="on_off", max=2,min = 0, value_key= new List<string> { "on","off","stop"} },
-                                                                new Trait { name="percent", max=100,min = 0, value_key= new List<string> { "percent" } },
-
-                                                            },// "rollingshutter",
-                                    lastState = "20%",
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 17,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new FloorHeating()
-                                {
-                                    sid = "030101123456780404020004ABCD",
-                                    name = "鍦扮儹",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                                new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} },
-                                                                new Trait { name="mode", max = 2,min =0,value_key = new List<string>{ "normal", "day", "night","timer","away" } },
-                                                                new Trait { name = "set_temperature", max = 32,min=5,value_key = new List<string>{"up","down" } },
-                                                            },//
-                                    lastState = "鑷姩 25掳C",
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 111,
-                                        DeviceID = 12,
-                                        LoopID = 1
-                                    }
-                                }.SaveFunctionData();
-                                new Light()
-                                {
-                                    sid = "030101123456780202010005ABCD",
-                                    name = "鍚婄伅",
-                                    function = new List<Trait>() {
-                                                                new Trait { name="on_off", max=100,min = 0, value_key= new List<string> { "on","off"} },
-                                                            },//"on_off",
-                                    roomIdList = new List<string>() { "0001" },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 6,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Light()
-                                {
-                                    sid = "030101123456780202040006ABCD",
-                                    name = "RGB鐏�",
-                                    function = new List<Trait>() {
-                                                                new Trait { name="brightness", max=100,min = 0, value_key= new List<string> { "on","off"} },
-                                                                new Trait { name="color", max=100,min = 0, value_key= new List<string> { "255", "255", "255" } },
-                                                            },
-                                    roomIdList = new List<string>() { "0001" },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 4,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Fan()
-                                {
-                                    sid = "030101123456781010020006ABCD",
-                                    name = "椋庢墖",
-                                    function = new List<Trait>() {
-                                                            new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} },
-                                                            new Trait { name="percent", max=7,min = 0, value_key= new List<string> { "percent" } },
-                                                        },
-                                    roomIdList = new List<string>() { "0001" },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 142,
-                                        DeviceID = 4,
-                                        LoopID = 11,
-                                    },
-                                }.SaveFunctionData();
-                                new TV()
-                                {
-                                    sid = "030101123456781010020006ABCD",
-                                    name = "鐢佃",
-                                    function = new List<Trait>() {
-                                                            new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} },
-                                                        },
-                                    roomIdList = new List<string>() { "0001" },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 142,
-                                        DeviceID = 4,
-                                        LoopID = 111,
-                                    },
-                                }.SaveFunctionData();
-                                new SwitchSocket()
-                                {
-                                    sid = "030101123456780101020006ABCD",
-                                    name = "鎻掑骇",
-                                    function = new List<Trait>() {
-                                                            new Trait { name="on_off", max=1,min = 0, value_key= new List<string> { "on","off"} },
-                                                        },
-                                    roomIdList = new List<string>() { "0001" },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 42,
-                                        DeviceID = 6,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Sensor()
-                                {
-                                    sid = "030101123456781005060006ABCD",
-                                    name = "PM2.5",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                            new Trait { name="values", max=1,min = 0, value_key= new List<string> { "22"} },
-                                                        },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 111,
-                                        DeviceID = 15,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Sensor()
-                                {
-                                    sid = "030101123456781005070006ABCD",
-                                    name = "CO2",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                            new Trait { name="values", max=1,min = 0, value_key= new List<string> { "1352"} },
-                                                        },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 111,
-                                        DeviceID = 15,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Sensor()
-                                {
-                                    sid = "030101123456781005020006ABCD",
-                                    name = "娓╁害",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                            new Trait { name="values", max=1,min = 0, value_key= new List<string> { "28"} },
-                                                        },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 111,
-                                        DeviceID = 15,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Sensor()
-                                {
-                                    sid = "030101123456781005050006ABCD",
-                                    name = "TVOC",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                            new Trait { name="values", max=1,min = 0, value_key= new List<string> { "0.3"} },
-                                                        },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 111,
-                                        DeviceID = 15,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                new Sensor()
-                                {
-                                    sid = "030101123456781005030006ABCD",
-                                    name = "婀垮害",
-                                    roomIdList = new List<string>() { "0001" },
-                                    function = new List<Trait>() {
-                                                            new Trait { name="values", max=1,min = 0, value_key= new List<string> { "15"} },
-                                                        },
-                                    bus_Data = new BusData
-                                    {
-                                        SubnetID = 111,
-                                        DeviceID = 15,
-                                        LoopID = 1,
-                                    },
-                                }.SaveFunctionData();
-                                DB_ResidenceData.residenceData.SaveResidenceData();
-                            }
+                            //var isExis = FileUtils.IsExisFolder(DB_ResidenceData.residenceData.CurReginID);
+                            //if (isExis)
+                            //{
+                            //    FileUtils.DeleteAllFile();
+                            //    string regionRootPath = FileUtils.CreateRegionBackup(DB_ResidenceData.residenceData.CurReginID);
+                            //    FileUtils.RestoreRegionFiles(regionRootPath);
+                            //    DB_ResidenceData.residenceData.EixtAccount();
+                            //    OnAppConfig.Instance.RefreshUserConfig();
+                            //    SpatialInfo.CurrentSpatial.InitRoomFunction();
+                            //}
                             Application.RunOnMainThread(() =>
                             {
+                                //20201223-鐧诲綍鎴愬姛涔嬪悗锛屽皢涓嬭浇鏁版嵁瀹屾垚鏍囪鏍囪涓篺alse锛岄槻姝富椤垫彁鍓嶅姞杞�
+                                Common.ApiUtlis.Ins.DownloadDataComplete = false;
                                 //璺宠浆椤甸潰----
-                                MainPage.GoUserPage();
+                                MainPage.GoUserPage(true);
                             });
                         }
                         else
                         {
+                            //Application.RunOnMainThread(() =>
+                            //{
+                            //    BindingResidencePage page = new BindingResidencePage();
+                            //    MainPage.BaseView.AddChidren(page);
+                            //    page.LoadView();
+                            //});
+
+
+
                             //2020-11-13 寰呯‘璁�
                             //鑾峰彇浣忓畢澶辫触锛岄噸鏂版爣璁颁负鏈櫥褰曠姸鎬�
-                            UserInfo.Current.lastTime = DateTime.MinValue;
+                            UserInfo.Current.LastTime = DateTime.MinValue;
                             UserInfo.Current.SaveUserInfo();
                             //鐧诲綍澶辫触锛岃鍏堟坊鍔犱綇瀹咃紒
-                            Utlis.ShowAlertOnMainThread(Language.StringByID(StringId.FailedGetHomeList));
+                            //Utlis.ShowAlertOnMainThread(Language.StringByID(StringId.FailedGetHomeList));
                         }
                     }
                 }
@@ -992,14 +706,24 @@
                 //    refreshToken = revertData.refreshToken,
                 //    userName = revertData.name
                 //};
+                if (OnAppConfig.Instance.LastLoginUserId != revertData.userId)
+                {
+                    OnAppConfig.Instance.LastLoginUserId = revertData.userId;
+                    OnAppConfig.Instance.SaveConfig();
+                }
+                UserInfo.Current.ClearUserInfo();
                 UserInfo.Current.userType = revertData.userType;
-                UserInfo.Current.accountString = account;
+                UserInfo.Current.AccountString = account;
                 //UserInfo.Current.password = password;
-                UserInfo.Current.lastTime = DateTime.Now;
+                UserInfo.Current.LastTime = DateTime.Now;
                 UserInfo.Current.ID = revertData.userId;
-                UserInfo.Current.loginTokenString = revertData.headerPrefix + revertData.accessToken;
-                UserInfo.Current.refreshToken = revertData.refreshToken;
+                UserInfo.Current.LoginTokenString = revertData.headerPrefix + revertData.accessToken;
+                UserInfo.Current.RefreshToken = revertData.refreshToken;
                 UserInfo.Current.userName = revertData.name;
+                //UserInfo.Current.userMobileInfo = "";//閲嶇疆鐢ㄦ埛鎵嬫満
+                //UserInfo.Current.userEmailInfo = "";//閲嶇疆鐢ㄦ埛閭
+                //UserInfo.Current.headImagePagePath = "LoginIcon/2.png";//
+                //UserInfo.Current.CurrentRegion.RegionID = "";
                 UserInfo.Current.SaveUserInfo();
                 MainPage.Log("鐧诲綍鎴愬姛銆�");
                 result = true;
@@ -1016,6 +740,8 @@
                 //璐﹀彿鎴栬�呭瘑鐮侀敊璇�
                 Application.RunOnMainThread(() =>
                 {
+                    waitPage.Hide();
+
                     if (loginResult.Code == "10008")
                     {
                         //鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒
@@ -1028,17 +754,58 @@
                         btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
                         btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
                     }
-                    else if (loginResult.Code == "14")
+                    else if (loginResult.Code == StateCode.VERIFICATION_CODE_WRONG)
                     {
                         btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
                         btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
                     }
-                    waitPage.Hide();
+                    else if (loginResult.Code == StateCode.AccountLoginLock)
+                    {
+                        ShowAccountLoginLockTip(loginResult);
+                        //var tipStr = Language.StringByID(StringId.AccountLoginLock) + "\r\n" + Language.StringByID(StringId.PleaseTryToForgetPassword);
+                        //Utlis.ShowTip(tipStr);
+                        return;
+                    }
+                    IMessageCommon.Current.ShowErrorInfoAlter(loginResult.Code);
                 });
 
-                IMessageCommon.Current.ShowErrorInfoAlter(loginResult.Code);
+
             }
             return result;
+        }
+
+        /// <summary>
+        /// 瑙f瀽鎻愮ず鐢ㄦ埛瑙i攣鏃堕棿
+        /// 瀵嗙爜閿欒娆℃暟杩囧锛岃处鍙疯閿佸畾锛佽閫氳繃蹇樿瀵嗙爜鎵惧洖瀵嗙爜鎴杮0}鍒嗛挓鍚庨噸璇�.
+        /// </summary>
+        /// <param name="loginResult"></param>
+        void ShowAccountLoginLockTip(ResponsePackNew loginResult)
+        {
+            //瀵嗙爜閿欒娆℃暟杩囧锛岃处鍙疯閿佸畾锛�
+            var tipStr = Language.StringByID(StringId.AccountLoginLock);
+            try
+            {
+                if (loginResult.extra != null)
+                {
+                    //璇烽�氳繃蹇樿瀵嗙爜鎵惧洖瀵嗙爜鎴杮0}鍒嗛挓鍚庨噸璇�.
+                    var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<AccountLoginLockExtraRes>(loginResult.extra.ToString());
+                    string msg = Language.StringByID(StringId.PleaseTryToForgetPassword);
+                    //var unlockTime = Utlis.UnixToDateTimeWithFormatMS(revertData.unlockTime, "HH:mm");
+                    //msg = msg.Replace("{0}", unlockTime);
+
+                    var unlockDatetime = Utlis.UnixToDateTimeMS(revertData.unlockTime);
+                    var unlockTimeInt = unlockDatetime.Minute - DateTime.Now.Minute;
+                    if (unlockTimeInt <= 0)
+                    {
+                        unlockTimeInt = 1;
+                    }
+                    msg = msg.Replace("{0}", unlockTimeInt.ToString());
+                    tipStr = tipStr + "\r\n" + msg;
+                }
+            }
+            catch { }
+
+            Utlis.ShowTip(tipStr);
         }
 
         /// <summary>
@@ -1047,20 +814,28 @@
         bool LoadMethod_GetResidences()
         {
             var result = false;
-            var responsePack = pm.GetHomePager();
-            if (responsePack == StateCode.SUCCESS)
+            var code = pm.GetHomePager();
+            if (code == StateCode.SUCCESS)
             {
-                //2020-11-13 寰呯‘璁わ紝娌℃湁浣忓畢锛屼笉绠楃櫥褰曟垚鍔�
-                if (UserInfo.Current.regionList != null && UserInfo.Current.regionList.Count > 0)
+                ////2020-11-13 寰呯‘璁わ紝娌℃湁浣忓畢锛屼笉绠楃櫥褰曟垚鍔�
+                //if (UserInfo.Current.regionList != null && UserInfo.Current.regionList.Count > 0)
+                //{
+                //    result = true;
+                //}
+                //2020-12-10 娌℃湁浣忓畢鐧诲綍鎴愬姛锛屼絾鏄笉鑳借繘鍏ヤ富鐣岄潰
+                result = true;
+            }
+            else if( code == "null")
+            {
+                Application.RunOnMainThread(() =>
                 {
-                    result = true;
-                }
-                //result = true;
+                    MainPage.GoUserPage(false);
+                });
             }
             else
             {
                 // 鎻愮ず閿欒
-                IMessageCommon.Current.ShowErrorInfoAlter(responsePack);
+                IMessageCommon.Current.ShowErrorInfoAlter(code);
             }
             return result;
         }
@@ -1072,25 +847,26 @@
         {
             btnRegister.MouseUpEventHandler += (sender, e) =>
             {
-                //鍥炶皟浜嬩欢
-                //Action callBackAction = () =>
-                //{
-                //    Application.RunOnMainThread(() =>
-                //    {
-                //        try
-                //        {
-                //        }
-                //        catch (Exception ex)
-                //        {
-                //            MainPage.Log($"login callBackAction : {ex.Message}");
-                //        }
-                //    });
-                //};
+                //2020-12-22 澧炲姞鐐瑰嚮闅愯棌閿洏浜嬩欢
+                Application.HideSoftInput();
 
                 //鍒ゆ柇鏄惁鍚屾剰浜嗛殣绉佹斂绛�
                 if (CheckPrivacyPolicy() == false) return;
 
-                var registerPage = new RegisterPage();
+                Action<string, string, bool> autoLoginAction = (account, password, isPhone) =>
+                {
+                    try
+                    {
+                        AutoLoginAction(account, password, isPhone);
+                    }
+                    catch (Exception ex)
+                    {
+                        MainPage.Log($"login callBackAction : {ex.Message}");
+                    }
+                };
+
+
+                var registerPage = new RegisterPage(autoLoginAction);
                 registerPage.Show();
                 registerPage.ShowDialog();
             };
@@ -1103,21 +879,26 @@
         {
             btnForgetPassword.MouseUpEventHandler += (sender, e) =>
             {
-                Action<string> callBackAction = (callBackPar_Action) =>
+                //2020-12-22 澧炲姞鐐瑰嚮闅愯棌閿洏浜嬩欢
+                Application.HideSoftInput();
+
+                //鍒ゆ柇鏄惁鍚屾剰浜嗛殣绉佹斂绛�
+                if (CheckPrivacyPolicy() == false) return;
+
+                Action<string, string, bool> autoLoginAction = (account, password, isPhone) =>
                 {
-                    Application.RunOnMainThread(() =>
+
+                    try
                     {
-                        try
-                        {
-                            etAccount.Text = callBackPar_Action;
-                        }
-                        catch (Exception ex)
-                        {
-                            MainPage.Log($"login callBackAction : {ex.Message}");
-                        }
-                    });
+                        AutoLoginAction(account, password, isPhone);
+                    }
+                    catch (Exception ex)
+                    {
+                        MainPage.Log($"login callBackAction : {ex.Message}");
+                    }
                 };
-                var forgetPasswordDialog = new ForgetPasswordPage(callBackAction);
+
+                var forgetPasswordDialog = new ForgetPasswordPage(autoLoginAction);
                 forgetPasswordDialog.Show();
                 forgetPasswordDialog.ShowDialog();
 
@@ -1136,5 +917,30 @@
                 btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
             });
         }
+
+        /// <summary>
+        /// 鑷姩鐧诲綍鍥炶皟浜嬩欢
+        /// </summary>
+        /// <param name="mAccount"></param>
+        /// <param name="mPassword"></param>
+        /// <param name="isPhone"></param>
+        void AutoLoginAction(string mAccount, string mPassword, bool isPhone)
+        {
+            //鍒囨崲鍥炴墜鏈烘垨鑰呴偖绠辩櫥褰�
+            LoginTypeChange(isPhone);
+            //鍒囨崲鍥炲瘑鐮佺櫥褰�1
+            logintMode = 0;
+            //鍒囨崲鍥炲瘑鐮佺櫥褰�2
+            LoginModeChange();
+            //璁剧疆璐︽埛鍚嶅拰瀵嗙爜
+            etAccount.Text = account;
+            etPassword.Text = password;
+            this.account = mAccount;
+            this.password = mPassword;
+            //鍒涘缓鐧诲綍绾跨▼
+            var loginThread = LoadThread_Login();
+            waitPage = new Loading();
+            new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage);
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0