From 7167334c0e89dd84827d59e726123d14776e3a09 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期二, 16 六月 2020 11:14:13 +0800
Subject: [PATCH] 2020-06-16-1

---
 HDL_ON/UI/UI1-Login/LoginPageBLL.cs |  522 ++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 402 insertions(+), 120 deletions(-)

diff --git a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
index d788099..b3399d7 100644
--- a/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
+++ b/HDL_ON/UI/UI1-Login/LoginPageBLL.cs
@@ -1,8 +1,10 @@
 锘縰sing System;
+using System.Text.RegularExpressions;
 using System.Threading;
-using HDL_ON.DAL.Server;
+using System.Collections.Generic;
 using HDL_ON.UI.CSS;
 using Shared;
+using HDL_ON.Entity;
 
 namespace HDL_ON.UI.UI1Login
 {
@@ -17,11 +19,11 @@
             LoadPage_SwitchLoginType();
             LoadMethod_VisiblePassword();
             LoadPage_SwitchLoginMode();
-            LoadMethod_LoginMethod();
+            LoadEvent_Login();
             LoadPage_SelectionEditText();
             LoadPage_RegisterPage();
             GetVerificationCode();
-
+            LoadMethod_ForgetPassword();
         }
 
         /// <summary>
@@ -31,33 +33,113 @@
         {
             btnGetVerificationCode.MouseUpEventHandler += (sender, e) =>
             {
-#if DEBUG
-                etAccount.Text = "17576024298";
-#endif
-                string phoneNumber = etAccount.Text.Trim();
-                btnGetVerificationCode.Enable = false;
-                btnGetVerificationCode.TextColor = CSS_Color.PromptingColor1;
-                int time = 60;
-                new Thread(() =>
+                if (btnGetVerificationCode.IsSelected)
                 {
-                    while (time != 0)
+                    string phoneNumber = etAccount.Text.Trim();
+                    if (string.IsNullOrEmpty(phoneNumber))
                     {
-                        time--;
+                        var tip = new Tip()
+                        {
+                            Text = Language.StringByID(StringId.PlsEntryPhoneNumber),
+                            CloseTime = 3,
+                            Direction = AMPopTipDirection.None
+                        };
+                        tip.Show(bodyView);
+
+                        btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                        btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
+                        return;
+                    }
+                    if (!Regex.IsMatch(account, @"^[1]+\d{10}") || (account.Length != 11))
+                    {
+                        var tip = new Tip()
+                        {
+                            Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
+                            CloseTime = 3,
+                            Direction = AMPopTipDirection.None
+                        };
+                        tip.Show(bodyView);
+
+                        btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                        btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
+                        return;
+                    }
+                    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.Text = time.ToString() + "s";
+                            btnGetVerificationCode.IsSelected = true;
+                            btnGetVerificationCode.TextID = StringId.GetVerificationCode;
                         });
-                        Thread.Sleep(1000);
-                    }
-                })
-                { IsBackground = true }.Start();
-                //妫�鏌ユ墜鏈烘槸鍚﹀凡缁忚娉ㄥ唽
-                var checkPhoneResult = pm.IsExistingAccount(etAccount.Text.Trim());
-                //鎵嬫満宸茬粡琚敞鍐�
-                if (checkPhoneResult.StateCode == HttpRequesResult.SUCCESS.ToString())
-                {
-                    //鑾峰彇楠岃瘉鐮�
-                    pm.GetPhoneVerificationCode(phoneNumber,MainPage.Company);
+                    })
+                    { IsBackground = true }.Start();
+                    new Thread(() =>
+                    {
+                        //鑾峰彇楠岃瘉鐮�
+                        var result = pm.GetPhoneLoginVerCode(phoneNumber);
+                        if (result.StateCode.ToUpper() == "SUCCESS")
+                        {
+                        }
+                        //鐧诲綍澶辫触
+                        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 = 3,
+                                    Direction = AMPopTipDirection.None
+                                };
+                                tip.Show(bodyView);
+                            });
+                        }
+                    })
+                    { IsBackground = true }.Start();
                 }
             };
         }
@@ -75,11 +157,11 @@
                 btnEmailLogin.TextSize = CSS_FontSize.TextFontSize;
                 btnPhoneLogin.TextColor = CSS_Color.MainColor;
                 btnPhoneLogin.TextSize = CSS_FontSize.EmphasisFontSize_Secondary;
-                etAccount.PlaceholderText = Language.StringByID(R.InternationalizationString.PlsEntryCorrectMobilNeumber);
+                etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryPhoneNumber);
                 #endregion
 
                 #region 鍒囨崲鐧诲綍鏂瑰紡鍙婂浘鏍�
-                logintType = 0;
+                loginType = 0;
                 if (btnAccountIcon.Parent != null)
                 {
                     btnAccountIcon.RemoveFromParent();
@@ -98,11 +180,11 @@
                 btnPhoneLogin.TextSize = CSS_FontSize.TextFontSize;
                 btnEmailLogin.TextColor = CSS_Color.MainColor;
                 btnEmailLogin.TextSize = CSS_FontSize.EmphasisFontSize_Secondary;
-                etAccount.PlaceholderText = Language.StringByID(R.InternationalizationString.PlsEntryEmailAddress);
+                etAccount.PlaceholderText = Language.StringByID(StringId.PlsEntryEmailAddress);
                 #endregion
 
                 #region 鍒囨崲鐧诲綍绫诲瀷鍙婂浘鏍�
-                logintType = 1;
+                loginType = 1;
                 if (btnGlobalRoaming.Parent != null)
                 {
                     btnGlobalRoaming.RemoveFromParent();
@@ -113,7 +195,7 @@
                 //閭鍙湁瀵嗙爜鐧诲綍妯″紡
                 logintMode = 0;
                 //瀵嗙爜鐧诲綍
-                btnSwitchLoginMode.TextID = R.InternationalizationString.VerificationCodeLogin;
+                btnSwitchLoginMode.TextID = StringId.VerificationCodeLogin;
                 passwordView.AddChidren(btnVisiblePassword);
                 passwordView.AddChidren(btnDividingLineVertical_PasswordView2);
                 passwordView.AddChidren(btnForgetPassword);
@@ -144,9 +226,10 @@
                 //瀵嗙爜鐧诲綍
                 if (logintMode == 0)
                 {
-                    btnSwitchLoginMode.TextID = R.InternationalizationString.VerificationCodeLogin;
+                    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)
@@ -159,8 +242,13 @@
                 //楠岃瘉鐮佺櫥褰�
                 else if (logintMode == 1)
                 {
-                    btnSwitchLoginMode.TextID = R.InternationalizationString.PasswordLogin;
+                    if (Regex.IsMatch(account, @"^[1]+\d{10}") && (account.Length == 11))
+                    {
+                        btnGetVerificationCode.IsSelected = true;
+                    }
+                    btnSwitchLoginMode.TextID = StringId.PasswordLogin;
                     passwordView.AddChidren(btnGetVerificationCode);
+                    etPassword.PlaceholderText = Language.StringByID(StringId.PlsEntryVerificationCode);
                     btnPasswordIcon.IsSelected = true;
                     if (btnVisiblePassword.Parent != null)
                     {
@@ -181,7 +269,7 @@
         }
 
         /// <summary>
-        /// 鏂囨湰妗嗛�変腑浜嬩欢
+        /// 鏂囨湰妗嗙劍鐐瑰彉鍖栦簨浠�
         /// </summary>
         void LoadPage_SelectionEditText()
         {
@@ -197,6 +285,47 @@
                 {
                     btnAccountViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor;
                     btnAccountViewBottomLine.Height = Application.GetRealHeight(1);
+                    account = etAccount.Text.Trim();
+                    if (account.Length == 0)
+                        return;
+                    if (loginType == 0)
+                    {
+                        if (!Regex.IsMatch(account, @"^[1]+\d{10}") || (account.Length != 11))
+                        {
+                            var tip = new Tip()
+                            {
+                                Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
+                                CloseTime = 3,
+                                Direction = AMPopTipDirection.None
+                            };
+                            tip.Show(bodyView);
+
+                            btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                            btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
+                        }
+                        else
+                        {
+                            if (btnGetVerificationCode.Text == Language.StringByID(StringId.GetVerificationCode))
+                            {
+                                btnGetVerificationCode.IsSelected = true;
+                            }
+                        }
+                    }
+                    else
+                    {
+                        if (!Regex.IsMatch(account, "([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,5})+"))
+                        {
+                            var tip = new Tip()
+                            {
+                                Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress),
+                                CloseTime = 3,
+                                Direction = AMPopTipDirection.None
+                            };
+                            tip.Show(bodyView);
+                            btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                            btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
+                        }
+                    }
                 }
             };
             //褰撶劍鐐瑰湪瀵嗙爜鏂囨湰妗嗘椂锛屾枃鏈搴曠嚎鐐逛寒
@@ -248,7 +377,7 @@
         /// <summary>
         /// 鐧诲綍鎸夐挳鐐瑰嚮浜嬩欢
         /// </summary>
-        void LoadMethod_LoginMethod()
+        void LoadEvent_Login()
         {
             btnLogin.MouseUpEventHandler += (sender, e) =>
             {
@@ -256,9 +385,41 @@
                 {
                     account = etAccount.Text.Trim();
                     password = etPassword.Text.Trim();
+
+                    if (loginType == 0)
+                    {
+                        if (!Regex.IsMatch(account, @"^[1]+\d{10}") && (account.Length == 11))
+                        {
+                            var tip = new Tip()
+                            {
+                                Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
+                                CloseTime = 3,
+                                Direction = AMPopTipDirection.None
+                            };
+                            tip.Show(bodyView);
+                            return;
+                        }
+                    }
+                    else
+                    {
+                        if (!Regex.IsMatch(account, "([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,5})+"))
+                        {
+                            var tip = new Tip()
+                            {
+                                Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress),
+                                CloseTime = 3,
+                                Direction = AMPopTipDirection.None
+                            };
+                            tip.Show(bodyView);
+                            return;
+                        }
+                    }
+
                     //鍒涘缓鐧诲綍绾跨▼
-                    var loginThread = LoadMethod_LoginThread();
-                    LoadPage_WaitPage(loginThread);
+                    var loginThread = LoadThread_Login();
+                    waitPage = new Loading();
+                    new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage);
+
                 }
             };
             #region 褰撹处鍙峰瘑鐮侀兘杈撳叆鏃讹紝鎵嶈兘鐐瑰嚮鐧诲綍鎸夐挳
@@ -288,97 +449,186 @@
         }
 
         /// <summary>
-        /// 鍔犺浇绛夊緟鐣岄潰
-        /// </summary>
-        void LoadPage_WaitPage(Thread thread)
-        {
-            waitPage = new Loading();
-            bodyView.AddChidren(waitPage);
-            waitPage.Start(Language.StringByID(R.InternationalizationString.PleaseWait));
-            var showedTime = DateTime.Now;
-            //濡傛灉绛夊緟浜嬩欢杩囬暱锛屽彲浠ュ厑璁哥敤鎴峰彇娑堝綋鍓嶆搷浣�
-            waitPage.MouseUpEventHandler += (sender, e) =>
-            {
-                if (showedTime.AddSeconds(30) > DateTime.Now)
-                {
-                    waitPage.RemoveFromParent();
-                    waitPage = null;
-                    thread.Abort();
-                }
-            };
-            thread.Start();
-        }
-
-        /// <summary>
         /// 鍔犺浇鐧诲綍绾跨▼
         /// </summary>
-        Thread LoadMethod_LoginThread()
+        Thread LoadThread_Login()
         {
             var loginThread = new Thread(() =>
             {
                 try
                 {
-                    var loginResult = pm.LoginByPassword(account,password,MainPage.Company);
-                    Application.RunOnMainThread(() =>
+                    //鐧诲綍
+                    var loginResult = LoadMethod_Login();
+                    if (loginResult)
                     {
-                        waitPage.RemoveFromParent();
-                        waitPage = null;
-                    });
-                    //鐧诲綍鎴愬姛
-                    if (loginResult.StateCode == HttpRequesResult.SUCCESS.ToString())
-                    {
-                        var loginResponseData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserLoginRes>(loginResult.ResponseData.ToString());
-                        //璁板綍鐢ㄦ埛鏁版嵁
-                        MainPage.LoginUser = new UserInfo
+                        //鑾峰彇浣忓畢淇℃伅
+                        var getResidencesResult = LoadMethod_GetResidences();
+                        if (getResidencesResult)
                         {
-                            ID = loginResponseData.UserId,
-                            MasterID = loginResponseData.MainUserId,
-                            AccountType = loginResponseData.UserType,
-                            AccountString = account,
-                            Password = password,
-                            LastTime = DateTime.Now,
-                            SIP_Account = loginResponseData.AllVisionRegisterDevUserNameGuid,
-                        };
-                        MainPage.LoginUser.SaveUserInfo();
-                        MainPage.Log("鐧诲綍鎴愬姛銆�");
+                            /*
+                             * Wait : 鎺ㄩ�佹敞鍐�
+                             */
 
-                        /*
-                         * Wait : 鎺ㄩ�佹敞鍐�
-                         */
-                    }
-                    //鐧诲綍澶辫触
-                    else
-                    {
-                        Application.RunOnMainThread(() =>
-                        {
-                            //鎻愮ず鍘熷洜
-                            var tip = new Tip()
+                            Application.RunOnMainThread(() =>
                             {
-                                Text = loginResult.ErrorInfo,
-                                CloseTime = 3,
-                                Direction = AMPopTipDirection.None
-                            };
-                            tip.Show(bodyView);
-                            //if (loginResult.StateCode == HttpRequesResult.LoginFailed_AccountErorr.ToString())
-                            {
-                                btnAccountViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
-                                btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
-                                //}
-                                //else if (loginResult.StateCode == HttpRequesResult.LoginFailed_PasswordErorr.ToString())
-                                //{
-                                btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
-                                btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
-                            }
-                        });
+                                //璺宠浆椤甸潰----
+                                MainPage.GoUserPage();
+                            });
+                        }
                     }
                 }
                 catch (Exception ex)
                 {
                     MainPage.Log($"LoginPage : {ex.Message}");
                 }
+                finally
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        if (waitPage != null)
+                        {
+                            waitPage.RemoveFromParent();
+                            waitPage = null;
+                        }
+
+                    });
+                }
             })
             { IsBackground = true };
             return loginThread;
+        }
+        /// <summary>
+        /// 璋冪敤鐧诲綍鎺ュ彛鐧诲綍
+        /// </summary>
+        bool LoadMethod_Login()
+        {
+            var result = false;
+            ResponsePack loginResult;
+            if (logintMode == 0)
+            {
+                //璋冪敤鐧诲綍鎺ュ彛
+                loginResult = pm.LoginByPassword(account, password);
+            }
+            else
+            {
+                //璋冪敤鐧诲綍鎺ュ彛
+                loginResult = pm.LoginValidCode(account, password);
+            }
+            if (loginResult.StateCode.ToUpper() == "SUCCESS")
+            {
+                var loginDataStr = Newtonsoft.Json.Linq.JObject.FromObject(loginResult.ResponseData);
+
+                //璁板綍鐢ㄦ埛鏁版嵁
+                MainPage.LoginUser = new UserInfo
+                {
+                    ID = (int)loginDataStr.GetValue("UserID"),
+                    masterID = (int)loginDataStr.GetValue("MainUserID"),
+                    accountType = (int)loginDataStr.GetValue("UserType"),
+                    accountString = account,
+                    password = password,
+                    lastTime = DateTime.Now,
+                    SIP_Account = loginDataStr.GetValue("AllVisionRegisterDevUserNameGuid").ToString(),
+                    userName = loginDataStr.GetValue("Remark").ToString(),
+                };
+                MainPage.LoginUser.SaveUserInfo();
+                MainPage.Log("鐧诲綍鎴愬姛銆�");
+                result = true;
+                //鑾峰彇鐢ㄦ埛淇℃伅
+                new Thread(() =>
+                {
+                    pm.GetUserInfo();
+                })
+                { IsBackground = true }.Start();
+            }
+            //鐧诲綍澶辫触
+            else
+            {
+                string tipStr = "Sever erorr";
+                switch (loginResult.StateCode)
+                {
+                    case "ValidCodeAndPhoneNoEqual":
+                        tipStr = Language.StringByID(StringId.VerificationCodeError);
+                        Application.RunOnMainThread(() =>
+                        {
+                            btnPasswordViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                            btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
+                        });
+                        break;
+                    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 "NoRecord":
+                        tipStr = Language.StringByID(StringId.PlsGetTheVerificationCode);
+                        break;
+                    case "Self:Net_Error":
+                        tipStr = Language.StringByID(StringId.NetworkAnomaly);
+                        break;
+                }
+                //璐﹀彿鎴栬�呭瘑鐮侀敊璇�
+                Application.RunOnMainThread(() =>
+                {
+                    waitPage.Hide();
+                    //鎻愮ず鍘熷洜
+                    var tip = new Tip()
+                    {
+                        Text = tipStr,
+                        CloseTime = 3,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip.Show(bodyView);
+                });
+            }
+            return result;
+        }
+
+        /// <summary>
+        /// 鑾峰彇浣忓畢鍒楄〃
+        /// </summary>
+        bool LoadMethod_GetResidences()
+        {
+            var result = false;
+            var responsePack = pm.GetHomePager();
+
+
+            if (responsePack == "Success")
+            {
+                result = true;
+            }
+            else
+            {
+                var tipStr = "Server erorr";
+                switch (responsePack)
+                {
+                    case "NoLogin":
+                        tipStr = Language.StringByID(StringId.InvalidLoginCertificate);
+                        break;
+                }
+                Application.RunOnMainThread(() =>
+                {
+                    //鎻愮ず鍘熷洜
+                    var tip = new Tip()
+                    {
+                        Text = tipStr,
+                        CloseTime = 3,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip.Show(bodyView);
+                });
+            }
+            return result;
         }
 
         /// <summary>
@@ -386,23 +636,55 @@
         /// </summary>
         void LoadPage_RegisterPage()
         {
-            btnRegister.MouseUpEventHandler += (sender, e) => {
+            btnRegister.MouseUpEventHandler += (sender, e) =>
+            {
                 //鍥炶皟浜嬩欢
-                Action<string> callBackAction = (callBackPar_Action) =>
-                {
-                    try
-                    {
-                        etAccount.Text = callBackPar_Action;
-                    }
-                    catch (Exception ex) {
-                        MainPage.Log($"login callBackAction : {ex.Message}");
-                    }
-                };
+                //Action callBackAction = () =>
+                //{
+                //    Application.RunOnMainThread(() =>
+                //    {
+                //        try
+                //        {
+                //        }
+                //        catch (Exception ex)
+                //        {
+                //            MainPage.Log($"login callBackAction : {ex.Message}");
+                //        }
+                //    });
+                //};
 
-                var registerPage = new RegisterPage(callBackAction);
+                var registerPage = new RegisterPage();
                 registerPage.Show();
                 registerPage.ShowDialog();
             };
         }
+
+        /// <summary>
+        /// 蹇樿瀵嗙爜
+        /// </summary>
+        void LoadMethod_ForgetPassword()
+        {
+            btnForgetPassword.MouseUpEventHandler += (sender, e) =>
+            {
+                Action<string> callBackAction = (callBackPar_Action) =>
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        try
+                        {
+                            etAccount.Text = callBackPar_Action;
+                        }
+                        catch (Exception ex)
+                        {
+                            MainPage.Log($"login callBackAction : {ex.Message}");
+                        }
+                    });
+                };
+                var forgetPasswordDialog = new ForgetPasswordPage(callBackAction);
+                forgetPasswordDialog.Show();
+                forgetPasswordDialog.ShowDialog();
+
+            };
+        }
     }
-}
+}
\ No newline at end of file

--
Gitblit v1.8.0