From ed3bfb7462d44747230437717e8673a5192f833f Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 30 十一月 2020 20:34:51 +0800
Subject: [PATCH] 2020-11-30-2

---
 HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs |  172 +++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 112 insertions(+), 60 deletions(-)

diff --git a/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs b/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs
index a923fff..ebbdac0 100644
--- a/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs
+++ b/HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs
@@ -300,62 +300,62 @@
                 var account = etAccount.Text.Trim();
                 if ((sender as Button).IsSelected)
                 {
-                    int time = 60;
+                    //鐭俊鍙戦�侀棿闅�60s
+                    (sender as Button).IsSelected = false;
+                    etVerificationCode.Foucs = true;
+                    //鑾峰彇楠岃瘉鐮�
+                        int time = 60;
+                    new Thread(() => {
+                        while (time > 0)
+                        {
+                            time--;
+                            Application.RunOnMainThread(() =>
+                            {
+                                (sender as Button).Text = time.ToString() + "s";
+                            });
+                            Thread.Sleep(1000);
+                        }
+                        Application.RunOnMainThread(() =>
+                        {
+                            //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢
+                            (sender as Button).IsSelected = true;
+                            (sender as Button).TextID = StringId.GetVerificationCode;
+                        });
+                    }){ IsBackground = true}.Start();
                     new Thread(() =>
                     {
-                        //1.鍏堟鏌ヨ处鍙锋槸鍚︽敞鍐岃繃
-                        var result = pm.GetRegionByAccount(account);
-                        if (result.Code != HttpUtil.SUCCESS_CODE)
+                        var result = pm.GetLoginVerCode(account);
+                        if (result.StateCode.ToUpper() == "SUCCESS")
                         {
-                            IMessageCommon.Current.ShowErrorInfoAlter(NewAPI.API_POST_GetRegionByAccount, result.Code);
-                            return;
                         }
                         else
                         {
-                            //2.宸茬粡娉ㄥ唽杩囷紝鍙戦�侀獙璇佺爜鎵惧洖瀵嗙爜
+                            string tipString = "Server error";
+                            switch (result.StateCode)
+                            {
+                                case "Exist":
+                                    tipString = Language.StringByID(StringId.AccountAlreadyUse);
+                                    break;
+                                case "SendFail":
+                                    tipString = Language.StringByID(StringId.FailedToSendVerificationCode);
+                                    break;
+                                case "AccountNoExists":
+                                    tipString = Language.StringByID(StringId.AccountNotExist);
+                                    break;
+                                case "Self:Net_Error":
+                                    tipString = Language.StringByID(StringId.NetworkAnomaly);
+                                    break;
+                            }
+
                             Application.RunOnMainThread(() =>
                             {
-                                //鐭俊鍙戦�侀棿闅�60s
-                                (sender as Button).IsSelected = false;
-                                etVerificationCode.Foucs = true;
+                                new Tip()
+                                {
+                                    CloseTime = 1,
+                                    Direction = AMPopTipDirection.None,
+                                    Text = tipString
+                                }.Show(bodyView);
                             });
-                            //2.1鑾峰彇楠岃瘉鐮佸�掕鏃�
-                            new Thread(() =>
-                            {
-                                while (time > 0)
-                                {
-                                    time--;
-                                    Application.RunOnMainThread(() =>
-                                    {
-                                        (sender as Button).Text = time.ToString() + "s";
-                                    });
-                                    Thread.Sleep(1000);
-                                }
-                                Application.RunOnMainThread(() =>
-                                {
-                                    //鍥炲鑾峰彇鐭俊鎸夐挳浜嬩欢
-                                    (sender as Button).IsSelected = true;
-                                    (sender as Button).TextID = StringId.GetVerificationCode;
-                                });
-                            })
-                            { IsBackground = true }.Start();
-
-                            ResponsePackNew resultObj;
-                            //2.1璇锋眰鑾峰彇楠岃瘉鐮�
-                            if (registerType == 1)//閭
-                            {
-                                resultObj = pm.VerificationCodeSend(VerifyType.FORGOTPASSWORD, account);
-                            }
-                            else
-                            {
-                                resultObj = pm.VerificationCodeSend(VerifyType.FORGOTPASSWORD, account, true, phoneZoneCode);
-                            }
-
-                            if (resultObj.Code != HttpUtil.SUCCESS_CODE)
-                            {
-                                // 鎻愮ず閿欒
-                                IMessageCommon.Current.ShowErrorInfoAlter(NewAPI.API_POST_Verification_Send, resultObj.Code);
-                            }
                         }
                     })
                     { IsBackground = true }.Start();
@@ -401,29 +401,81 @@
 
             return new Thread(() =>
             {
-                // 蹇樿瀵嗙爜
-                var isPhone = registerType == 0;
-                var resultObj = pm.ForgetPassword(account, password, verCode, isPhone);
-                if (resultObj.Code == HttpUtil.SUCCESS_CODE)
+                var verResult = pm.ValidatorCode(account, verCode, countryIndex);
+                if (verResult.StateCode.ToUpper() == "SUCCESS")
                 {
-                    Application.RunOnMainThread(() =>
+                    var resetResult = pm.ResetPassword(account, password, repeatPassword, countryIndex);
+                    if (resetResult.StateCode.ToUpper() == "SUCCESS")
                     {
-                        LoadEvent_AutoLogin();
-                        callbackAction?.Invoke(account);
-                    });
+                        Application.RunOnMainThread(() =>
+                        {
+                            LoadEvent_AutoLogin();
 
+                            callbackAction?.Invoke(account);
+                        });
+                    }
+                    else
+                    {
+                        string erorrInfo = "";
+                        switch (resetResult.StateCode)
+                        {
+                            case "PwdNoConfirm"://涓ゆ杈撳叆鐨勫瘑鐮佷笉涓�鑷�
+                                erorrInfo = Language.StringByID(StringId.IncorrectRepeatPassword);
+                                break;
+                            case "AccountNoExists"://涓ゆ杈撳叆鐨勫瘑鐮佷笉涓�鑷�
+                                erorrInfo = Language.StringByID(StringId.AccountNotExist);
+                                break;
+                            default:
+                                erorrInfo = "Server error";
+                                break;
+                        }
+                        Application.RunOnMainThread(() =>
+                        {
+                            waitPage.Hide();
+                            new Tip()
+                            {
+                                CloseTime = 1,
+                                Direction = AMPopTipDirection.None,
+                                Text = erorrInfo,
+                            }.Show(bodyView);
+                        });
+                    }
                 }
                 else
                 {
-                    // 2020-11-13 寰呬慨鏀� 楠岃瘉鐮侀敊璇� 璀﹀憡鎻愮ず
-                    //btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
-                    //btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2);
+                    string erorrInfo = "";
+                    switch (verResult.StateCode)
+                    {
+                        case "ValidCodeAndPhoneNoEqual"://楠岃瘉鐮侀敊璇�
+                            erorrInfo = Language.StringByID(StringId.VerificationCodeWrong);
+                            Application.RunOnMainThread(() =>
+                            {
+                                btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                                btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2);
+                            });
+                            break;
+                        case "NoRecord":
+                            erorrInfo = Language.StringByID(StringId.PlsGetTheVerificationCode);
+                            Application.RunOnMainThread(() =>
+                            {
+                                btnVerificationCodeViewBottomLine.BackgroundColor = CSS_Color.AuxiliaryColor2;
+                                btnVerificationCodeViewBottomLine.Height = Application.GetRealHeight(2);
+                            });
+                            break;
+                        default:
+                            erorrInfo = "Server error";
+                            break;
+                    }
                     Application.RunOnMainThread(() =>
                     {
                         waitPage.Hide();
+                        new Tip()
+                        {
+                            CloseTime = 1,
+                            Direction = AMPopTipDirection.None,
+                            Text = erorrInfo,
+                        }.Show(bodyView);
                     });
-                    // 鎻愮ず閿欒
-                    IMessageCommon.Current.ShowErrorInfoAlter(NewAPI.API_POST_Member_ForgetPwd, resultObj.Code);
                 }
             });
         }

--
Gitblit v1.8.0