HDL Home App 第二版本 旧平台金堂用 正在使用
chenqiyang
2022-06-22 dc0309e64f02227d8e1468b7326c07955f804612
ZigbeeApp/Shared/Phone/UserCenter/Password/CheckNewPhoneForm.cs
@@ -62,15 +62,16 @@
            btnArea.TextColor = UserCenterColor.Current.TextGrayColor3;
            btnArea.Gravity = Gravity.CenterVertical;
            frame.AddChidren(btnArea);
            btnArea.ButtonClickEvent += (sender, e) =>
            {
                var form = new AreaCodeSelectForm();
                form.AddForm();
                form.FinishSelectEvent += (code) =>
                {
                    btnArea.Text = "+" + code;
                };
            };
            //目前只针对+86
            //btnArea.ButtonClickEvent += (sender, e) =>
            //{
            //    var form = new AreaCodeSelectForm();
            //    form.AddForm();
            //    form.FinishSelectEvent += (code) =>
            //    {
            //        btnArea.Text = "+" + code;
            //    };
            //};
            //输入框
            var txtValue = new TextInputControl(Application.GetRealWidth(510), frame.Height - ControlCommonResourse.BottomLineHeight, false);
@@ -83,6 +84,8 @@
            btnLine.Y = txtValue.Bottom;
            btnLine.BackgroundColor = UserCenterColor.Current.ButtomLine;
            frame.AddChidren(btnLine);
            //联动线的状态
            txtValue.btnLine = btnLine;
            if (string.IsNullOrEmpty(UserCenterResourse.UserInfo.Phone) == false)
            {
@@ -111,7 +114,11 @@
            btnCodeControl.FinishInputEvent += (value) =>
            {
                //校验验证码
                this.CheckVerificationCode(value);
                if (this.CheckVerificationCode(value) == false)
                {
                    //清空验证码
                    btnCodeControl.ClearInputValue();
                }
            };
            //验证码错误,请重新输入
@@ -119,6 +126,7 @@
            btnErrorMsg.Y = Application.GetRealHeight(677);
            btnErrorMsg.TextAlignment = TextAlignment.Center;
            btnErrorMsg.TextColor = 0xfff75858;
            btnErrorMsg.IsBold = true;
            btnErrorMsg.TextID = R.MyInternationalizationString.uVerificationCodeErrorInputAgain;
            bodyFrameLayout.AddChidren(btnErrorMsg);
            btnErrorMsg.Visible = false;
@@ -131,6 +139,9 @@
            btnOk.CanClick = false;
            btnOk.ButtonClickEvent += (sender, e) =>
            {
                //清空输入的值
                btnCodeControl.ClearInputValue();
                this.btnErrorMsg.Visible = false;
                string areaCode = btnArea.Text.Substring(1);
                //检测手机号码
@@ -164,13 +175,13 @@
        /// <summary>
        /// 发送验证码到手机
        /// </summary>
        private async void SendCodeToPhone(BottomClickButton btnNext,string areaCode, string phoneNum)
        private void SendCodeToPhone(BottomClickButton btnNext,string areaCode, string phoneNum)
        {
            var sendCodePra = new SendCodePra();
            sendCodePra.Account = phoneNum;
            sendCodePra.AreaCode = Convert.ToInt32(areaCode);
            bool flage = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/RegisterSendVerCode", false, sendCodePra);
            bool flage = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/RegisterSendVerCode", false, sendCodePra);
            if (flage == false)
            {
                return;
@@ -184,8 +195,8 @@
            btnNext.CanClick = false;
            //?s后重发
            string repeat = Language.StringByID(R.MyInternationalizationString.RepeatSend1);
            //有效时间300秒
            int waitime = 300;
            //有效时间60秒
            int waitime = 60;
            btnNext.Text = waitime + "s" + repeat;
            HdlThreadLogic.Current.RunThread(() =>
@@ -196,7 +207,6 @@
                    System.Threading.Thread.Sleep(1000);
                    if (waitime == 0)
                    {
                        this.canCheckCode = false;
                        Application.RunOnMainThread(() =>
                        {
                            if (btnNext != null)
@@ -209,13 +219,13 @@
                        });
                        break;
                    }
                    Application.RunOnMainThread(() =>
                    HdlThreadLogic.Current.RunMain(() =>
                    {
                        if (btnNext != null)
                        {
                            btnNext.Text = waitime + "s" + repeat;
                        }
                    });
                    }, ShowErrorMode.NO);
                }
            });
        }
@@ -228,41 +238,42 @@
        /// 验证验证码
        /// </summary>
        /// <returns></returns>
        private async void CheckVerificationCode(string code)
        private bool CheckVerificationCode(string code)
        {
            if (this.canCheckCode == false)
            {
                //验证码错误,请重新输入
                this.btnErrorMsg.Visible = true;
                this.btnErrorMsg.TextID = R.MyInternationalizationString.uVerificationCodeErrorInputAgain;
                return;
                return false;
            }
            var checkCodePra = new CheckCodePra();
            checkCodePra.Code = code;
            checkCodePra.Account = newPhone;
            bool flage = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/ValidatorCode", false, checkCodePra);
            bool flage = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/ValidatorCode", false, checkCodePra);
            if (flage == false)
            {
                //验证码错误,请重新输入
                this.btnErrorMsg.Visible = true;
                this.btnErrorMsg.TextID = R.MyInternationalizationString.uVerificationCodeErrorInputAgain;
                return;
                return false;
            }
            //变更手机号
            this.SaveNewPhoneNumber();
            return true;
        }
        /// <summary>
        /// 变更手机号
        /// </summary>
        private async void SaveNewPhoneNumber()
        private void SaveNewPhoneNumber()
        {
            var pra = new SaveNewPhoneNumPra();
            pra.Account = newPhone;
            bool flage = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindAccount", false, pra);
            bool flage = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindAccount", false, pra);
            if (flage == false)
            {
                //绑定手机失败