wxr
2020-11-20 716d1b3b705e7d37e6edebd7f60b7613ab5aee87
HDL_ON/UI/UI2/4-PersonalCenter/AccountBindInfo/ChangeBindAccountPage.cs
@@ -6,14 +6,40 @@
namespace HDL_ON.UI
{
    /// <summary>
    /// 修改绑定或者解绑--发送验证码页面
    /// </summary>
    public partial class ChangeBindAccountPage : FrameLayout
    {
        /// <summary>
        ///
        /// </summary>
        FrameLayout bodyView;
        /// <summary>
        ///
        /// </summary>
        Action<string> action;
        /// <summary>
        /// 操作目标类型 1:邮箱,2:手机
        /// </summary>
        int optionType;
        /// <summary>
        /// 是否为解绑验证
        /// </summary>
        public bool isUnbind;
        /// <summary>
        ///
        /// </summary>
        Button btnTitle;
        /// <summary>
        ///
        /// </summary>
        Button btnContent;
        /// <summary>
        /// ChangeBindAccountPage
        /// </summary>
        public ChangeBindAccountPage()
        {
            bodyView = this;
@@ -25,18 +51,18 @@
        /// <param name="optionType">操作目标类型 1:邮箱,2:手机</param>
        /// <param name="titleId"></param>
        /// <param name="contentTitleId"></param>
        public void LoadPage(Action<string> act, int opt, int titleId, int contentTitleId)
        public void LoadPage(Action<string> act, int opt, int titleId)
        {
            action = act;
            optionType = opt;
            string account;
            if (optionType == 0)
            {
                account = MainPage.LoginUser.userEmailInfo;
                account =  UserInfo.Current.userEmailInfo;
            }
            else
            {
                account = MainPage.LoginUser.userMobileInfo;
                account =  UserInfo.Current.userMobileInfo;
            }
            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
            new TopViewDiv(bodyView, Language.StringByID(titleId)).LoadTopView();
@@ -49,24 +75,24 @@
            };
            bodyView.AddChidren(rowView);
            Button btnTitle = new Button()
            btnTitle = new Button()
            {
                X = Application.GetRealWidth(16),
                Width = Application.GetRealWidth(180),
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextAlignment = TextAlignment.CenterLeft,
                TextID = contentTitleId,
                //TextID = contentTitleId,
            };
            rowView.AddChidren(btnTitle);
            Button btnContent = new Button()
            btnContent = new Button()
            {
                Width = Application.GetRealWidth(359),
                TextColor = CSS_Color.PromptingColor1,
                TextSize = CSS_FontSize.TextFontSize,
                TextAlignment = TextAlignment.CenterRight,
                Text = optionType == 1 ? MainPage.LoginUser.userEmailInfo : MainPage.LoginUser.userMobileInfo,
                //Text = optionType == 1 ?  UserInfo.Current.userEmailInfo :  UserInfo.Current.userMobileInfo,
            };
            rowView.AddChidren(btnContent);
@@ -88,7 +114,10 @@
            };
            bodyView.AddChidren(btnChangeBind);
            if (!string.IsNullOrEmpty(MainPage.LoginUser.userMobileInfo))
            //同时绑定邮箱或者手机才显示"更换验证方式"
            if (!string.IsNullOrEmpty( UserInfo.Current.userMobileInfo) && !string.IsNullOrEmpty( UserInfo.Current.userEmailInfo))
            {
                Button btnChangeGetVer = new Button()
                {
@@ -106,7 +135,27 @@
                LoadEvent_ChangeVerificationMethod(btnChangeGetVer, btnTitle, btnContent);
            }
            SetContentTitleId();
            LoadEvent_GetVerification(btnChangeBind, titleId);
        }
        /// <summary>
        /// 设置按钮提示文字
        /// 修改绑定时提示:手机验证、邮箱验证
        /// 解绑时提示:当前手机手机号码、当前邮箱地址
        /// </summary>
        void SetContentTitleId()
        {
            if (optionType == 2)
            {
                btnTitle.TextID = isUnbind ? StringId.CurPhone : StringId.PhoneNumberVerification;
                btnContent.Text =  UserInfo.Current.userMobileInfo;
            }
            else
            {
                btnTitle.TextID = isUnbind ? StringId.CurrentEmail : StringId.EmailVerification;
                btnContent.Text =  UserInfo.Current.userEmailInfo;
            }
        }
    }
@@ -121,16 +170,7 @@
            btn.MouseUpEventHandler = (sender, e) =>
            {
                optionType = optionType == 1 ? 2 : 1;
                if (optionType == 2)
                {
                    btnTitle.TextID = StringId.CurPhone;
                    btnContent.Text = MainPage.LoginUser.userMobileInfo;
                }
                else
                {
                    btnTitle.TextID = StringId.CurrentEmail;
                    btnContent.Text = MainPage.LoginUser.userEmailInfo;
                }
                SetContentTitleId();
            };
        }
@@ -146,47 +186,64 @@
                {
                    new Thread(() =>
                    {
                        if (optionType == 1)
                        //1.获取验证码,采用敏感数据验证
                        ResponsePackNew resultObj;
                        if (optionType == 1)//邮箱
                        {
                            var resultObj = new HttpServerRequest().VerificationCodeSend(VerifyType.REGISTER_USER_SYSTEM, MainPage.LoginUser.userEmailInfo);
                            resultObj = new HttpServerRequest().VerificationCodeSend(VerifyType.SENSITIVE_DATA,  UserInfo.Current.userEmailInfo);
                        }
                        else
                        {
                            resultObj = new HttpServerRequest().VerificationCodeSend(VerifyType.SENSITIVE_DATA,  UserInfo.Current.userMobileInfo, true,  UserInfo.Current.areaCode);
                        }
                        }
                        else if (optionType == 2)
                        if (resultObj.Code != StateCode.SUCCESS)
                        {
                            var resultObj = new HttpServerRequest().VerificationCodeSend(VerifyType.REGISTER_USER_SYSTEM, MainPage.LoginUser.userMobileInfo, true, MainPage.LoginUser.areaCode.ToString());
                            // 提示错误
                            IMessageCommon.Current.ShowErrorInfoAlter(resultObj.Code);
                        }
                    })
                    { IsBackground = true }.Start();
                }
                if (time == 0)
                {
                    time = 60;
                    new Thread(() =>
                    {
                        while (time > 0)
                        else
                        {
                            time--;
                            if (time == 0)
                            {
                                time = 60;
                                new Thread(() =>
                                {
                                    while (time > 0)
                                    {
                                        time--;
                                        Application.RunOnMainThread(() =>
                                        {
                                            button.Text = time.ToString() + "s";
                                        });
                                        Thread.Sleep(1000);
                                    }
                                    Application.RunOnMainThread(() =>
                                    {
                                        button.IsSelected = true;
                                        button.TextID = StringId.GetVerificationCode;
                                        button.BackgroundColor = CSS_Color.MainColor;
                                        time = 0;
                                    });
                                })
                                { IsBackground = true }.Start();
                            }
                            Application.RunOnMainThread(() =>
                            {
                                button.Text = time.ToString() + "s";
                                button.BackgroundColor = CSS_Color.PromptingColor1;
                                var vcp = new ChangeBindVerificationCodePage();
                                vcp.isUnbind = isUnbind;
                                MainPage.BasePageView.AddChidren(vcp);
                                vcp.LoadPage(action, titleId, optionType, time);
                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                            });
                            Thread.Sleep(1000);
                        }
                        Application.RunOnMainThread(() =>
                        {
                            button.IsSelected = true;
                            button.TextID = StringId.GetVerificationCode;
                            button.BackgroundColor = CSS_Color.MainColor;
                            time = 0;
                        });
                    })
                    { IsBackground = true }.Start();
                }
                button.BackgroundColor = CSS_Color.PromptingColor1;
                var vcp = new VerificationCodePage();
                MainPage.BasePageView.AddChidren(vcp);
                vcp.LoadPage(action, titleId, optionType, time);
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
            };
        }
    }