wxr
2020-11-20 716d1b3b705e7d37e6edebd7f60b7613ab5aee87
HDL_ON/UI/UI2/4-PersonalCenter/ResetAccountPassword/ResetPasswordVerificationCodePage.cs
@@ -32,25 +32,55 @@
        Button btnResend;
        /// <summary>
        ///
        /// </summary>
        Button btnTip;
        int titleId;
        ///// <summary>
        ///// 操作类型 1:邮箱,2:手机
        ///// </summary>
        //int optionType;
        /// <summary>
        /// 操作类型 1:邮箱,2:手机
        /// 是否手机
        /// </summary>
        int optionType;
        bool isPhone;
        /// <summary>
        /// 账号
        /// </summary>
        string account;
        public ResetPasswordVerificationCodePage()
        {
            bodyView = this;
        }
        public void LoadPage(int tId, int ot)
        /// <summary>
        ///
        /// </summary>
        /// <param name="tId"></param>
        /// <param name="isPhone">是否手机</param>
        /// <param name="account">账号</param>
        public void LoadPage(int tId, bool isPhone, string account)
        {
            titleId = tId;
            optionType = ot;
            this.isPhone = isPhone;
            this.account = account;
            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
            new TopViewDiv(bodyView, Language.StringByID(tId)).LoadTopView();
            Button btnTip = new Button()
            Action backAction = () =>
            {
                Application.HideSoftInput();
                BackConfirmAction();
            };
            new TopViewDiv(bodyView, Language.StringByID(tId), false).LoadTopView(backAction);
            //new TopViewDiv(bodyView, Language.StringByID(tId)).LoadTopView();
            btnTip = new Button()
            {
                Y = Application.GetRealHeight(64),
                X = Application.GetRealWidth(16),
@@ -367,12 +397,12 @@
                        btnNum4Line.Height = Application.GetRealHeight(1);
                        btnNum5Line.Height = Application.GetRealHeight(1);
                        btnNum6Line.Height = Application.GetRealHeight(1);
                        btnNum1Line.Text = "";
                        btnNum2Line.Text = "";
                        btnNum3Line.Text = "";
                        btnNum4Line.Text = "";
                        btnNum5Line.Text = "";
                        btnNum6Line.Text = "";
                        btnNum1.Text = "";
                        btnNum2.Text = "";
                        btnNum3.Text = "";
                        btnNum4.Text = "";
                        btnNum5.Text = "";
                        btnNum6.Text = "";
                        break;
                    case 1:
                        btnNum2Line.IsSelected = true;
@@ -388,11 +418,11 @@
                        btnNum4Line.Height = Application.GetRealHeight(1);
                        btnNum5Line.Height = Application.GetRealHeight(1);
                        btnNum6Line.Height = Application.GetRealHeight(1);
                        btnNum2Line.Text = "";
                        btnNum3Line.Text = "";
                        btnNum4Line.Text = "";
                        btnNum5Line.Text = "";
                        btnNum6Line.Text = "";
                        btnNum2.Text = "";
                        btnNum3.Text = "";
                        btnNum4.Text = "";
                        btnNum5.Text = "";
                        btnNum6.Text = "";
                        break;
                    case 2:
                        btnNum3Line.IsSelected = true;
@@ -408,10 +438,10 @@
                        btnNum4Line.Height = Application.GetRealHeight(1);
                        btnNum5Line.Height = Application.GetRealHeight(1);
                        btnNum6Line.Height = Application.GetRealHeight(1);
                        btnNum3Line.Text = "";
                        btnNum4Line.Text = "";
                        btnNum5Line.Text = "";
                        btnNum6Line.Text = "";
                        btnNum3.Text = "";
                        btnNum4.Text = "";
                        btnNum5.Text = "";
                        btnNum6.Text = "";
                        break;
                    case 3:
                        btnNum4Line.IsSelected = true;
@@ -427,9 +457,9 @@
                        btnNum4Line.Height = Application.GetRealHeight(2);
                        btnNum5Line.Height = Application.GetRealHeight(1);
                        btnNum6Line.Height = Application.GetRealHeight(1);
                        btnNum4Line.Text = "";
                        btnNum5Line.Text = "";
                        btnNum6Line.Text = "";
                        btnNum4.Text = "";
                        btnNum5.Text = "";
                        btnNum6.Text = "";
                        break;
                    case 4:
                        btnNum5Line.IsSelected = true;
@@ -445,8 +475,8 @@
                        btnNum4Line.Height = Application.GetRealHeight(1);
                        btnNum5Line.Height = Application.GetRealHeight(2);
                        btnNum6Line.Height = Application.GetRealHeight(1);
                        btnNum5Line.Text = "";
                        btnNum6Line.Text = "";
                        btnNum5.Text = "";
                        btnNum6.Text = "";
                        break;
                    case 5:
                        btnNum6Line.IsSelected = true;
@@ -462,11 +492,24 @@
                        btnNum4Line.Height = Application.GetRealHeight(1);
                        btnNum5Line.Height = Application.GetRealHeight(1);
                        btnNum6Line.Height = Application.GetRealHeight(2);
                        btnNum6Line.Text = "";
                        btnNum6.Text = "";
                        break;
                    case 6:
                        btnNum6.Text = etCode.Substring(5, 1);
                        et.Foucs = false;
                        //输入完成
                        InputComplete(etCode);
                        break;
                }
            };
        }
        /// <summary>
        /// 输入完成
        /// </summary>
        /// <param name="etCode"></param>
        void InputComplete(string etCode)
        {
                        new Thread(() =>
                        {
                            bool result = false;
@@ -475,8 +518,8 @@
                            {
                                act = new PublicAssmebly().TipLoadingMsgDialog(Language.StringByID(StringId.SavingPleaseWait));
                            });
                            bool isPhone = optionType == 2;
                            var resultObj = new HttpServerRequest().ValidatorCode(VerifyType.FIND_PASSWORD, MainPage.LoginUser.userEmailInfo, etCode, isPhone);
                var resultObj = new HttpServerRequest().ValidatorCode(VerifyType.FIND_PASSWORD, account, etCode, isPhone, false);
                            if (resultObj.Code == StateCode.SUCCESS)
                            {
                                result = true;
@@ -484,7 +527,7 @@
                            else
                            {
                                //失败提示
                                IMessageCommon.Current.ShowErrorInfoAlter(NewAPI.API_POST_Verification_Check, resultObj.Code);
                    IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
                            }
                            Application.RunOnMainThread(() =>
                            {
@@ -499,24 +542,24 @@
                                Thread.Sleep(1600);
                                Application.RunOnMainThread(() =>
                                {
                                    MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
                                    if (titleId == StringId.EmailVerification)
                                    {
                                    }
                                    else if (titleId == StringId.PhoneNumberVerification)
                                    {
                        //MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
                        this.RemoveFromParent();
                        var vcp = new ResetPasswordPage();
                        vcp.isPhone = isPhone;
                        vcp.account = account;
                        vcp.verCode = etCode;
                        MainPage.BasePageView.AddChidren(vcp);
                        vcp.LoadPage();
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                                    }
                                });
                            }
                        })
                        { IsBackground = true }.Start();
        }
                        break;
                }
            };
        }
        /// <summary>
        /// 重发验证码等待线程
        /// </summary>
@@ -524,22 +567,39 @@
        {
            btnResend.IsSelected = false;
            int time = 60;
            try
            {
            new Thread(() =>
            {
                if (optionType == 1)
                    //2.2  获取验证码
                    ResponsePackNew resultObj;
                    if (!isPhone)
                {
                    var resultObj = new DAL.Server.HttpServerRequest().VerificationCodeSend(VerifyType.FIND_PASSWORD, MainPage.LoginUser.userEmailInfo);
                        resultObj = new DAL.Server.HttpServerRequest().VerificationCodeSend(VerifyType.FIND_PASSWORD, account);
                    }
                    else
                    {
                        resultObj = new DAL.Server.HttpServerRequest().VerificationCodeSend(VerifyType.FIND_PASSWORD, account, true,  UserInfo.Current.areaCode.ToString());
                    }
                }
                else if (optionType == 2)
                    if (resultObj.Code != StateCode.SUCCESS)
                {
                    var resultObj = new DAL.Server.HttpServerRequest().VerificationCodeSend(VerifyType.FIND_PASSWORD, MainPage.LoginUser.userMobileInfo, true, MainPage.LoginUser.areaCode.ToString() );
                }
            })
            { IsBackground = true }.Start();
            new Thread(() =>
                        //发送失败
                        Application.RunOnMainThread(() =>
            {
                            btnTip.TextID = StringId.FailedToSendVerificationCode;
                        });
                        //失败提示
                        IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
                    }
                    else
                    {
                        //发送成功,开始倒计时
                        Application.RunOnMainThread(() =>
                        {
                            btnTip.TextID = StringId.VerificationCodePrompt;
                        });
                while (time > 0)
                {
                    time--;
@@ -554,17 +614,55 @@
                    btnResend.IsSelected = true;
                    btnResend.TextID = StringId.GetVerificationCode;
                });
                    }
            })
            { IsBackground = true }.Start();
        }
            catch { }
            finally
            {
            };
        }
        /// <summary>
        /// 重发验证码事件
        /// </summary>
        void LoadEvent_Resend()
        {
            btnResend.MouseUpEventHandler = (sender, e) => {
            btnResend.MouseUpEventHandler = (sender, e) =>
            {
                LoadThread_SendVerCode();
            };
        }
        /// <summary>
        /// 返回二次确认事件
        /// </summary>
        void BackConfirmAction()
        {
            //验证码发送成功,二次确认退出
            if (btnTip.TextID == StringId.VerificationCodePrompt)
            {
                Action cancelAction = () =>
                {
                    if (bodyView != null)
                    {
                        bodyView.RemoveFromParent();
                    }
                };
                new ConfirmDialog().ShowDialog(StringId.Tip, StringId.VerificationCodeMayBeDelayed, null, cancelAction, StringId.ReturnStr, StringId.WaitAMoment);
            }
            else
            {
                //直接关闭
                if (bodyView != null)
                {
                    bodyView.RemoveFromParent();
                }
            }
        }
    }
}