HDL Home App 第二版本 旧平台金堂用 正在使用
黄学彪
2019-11-04 c7698e163e43cea9e7f8ee45f8e3f91c9265cca4
ZigbeeApp/Shared/Phone/UserCenter/Password/EditorSecondaryPasswordForm.cs
@@ -49,53 +49,41 @@
            //清空bodyFrame
            this.ClearBodyFrame();
            var btnMsg = new NormalViewControl(bodyFrameLayout.Width, Application.GetRealHeight(49), false);
            btnMsg.Y = Application.GetRealHeight(311);
            btnMsg.TextAlignment = TextAlignment.Center;
            btnMsg.TextSize = 12;
            bodyFrameLayout.AddChidren(btnMsg);
            if (formMode == FormMode.A新建密码
                || formMode == FormMode.A验证前回密码)
            string title = string.Empty;
            if (formMode == FormMode.A新建密码)
            {
                //请输入新密码
                title = Language.StringByID(R.MyInternationalizationString.uPleaseInputNewPassword);
            }
            else if (formMode == FormMode.A验证前回密码)
            {
                //请输入密码
                btnMsg.TextID = R.MyInternationalizationString.uPleaseInputPsw;
                title = Language.StringByID(R.MyInternationalizationString.uPleaseInputPsw);
            }
            else if (formMode == FormMode.A确认新建密码
                || formMode == FormMode.A确认修改密码)
            {
                //请再次确认密码
                btnMsg.TextID = R.MyInternationalizationString.uPleaseConfirmPswAgain;
                title = Language.StringByID(R.MyInternationalizationString.uPleaseConfirmPswAgain);
            }
            else if (formMode == FormMode.A修改密码)
            {
                //修改密码,请输入新密码
                btnMsg.TextID = R.MyInternationalizationString.uEditorPswPleaseInputNewPsw;
                title = Language.StringByID(R.MyInternationalizationString.uEditorPswPleaseInputNewPsw);
            }
            //错误信息
            var msgControl = new NormalViewControl(bodyFrameLayout.Width, Application.GetRealHeight(58), false);
            msgControl.Y = Application.GetRealHeight(660);
            msgControl.TextAlignment = TextAlignment.Center;
            msgControl.TextColor = 0xfff75858;
            bodyFrameLayout.AddChidren(msgControl);
            //初始化验证码控件
            var btnCodeControl = new VerificationCodeControl(4);
            btnCodeControl.SecureTextEntry = true;
            btnCodeControl.Y = Application.GetRealHeight(464);
            bodyFrameLayout.AddChidren(btnCodeControl);
            btnCodeControl.InitControl();;
            btnCodeControl.TxtCodeChangeEvent += (sender, e) =>
            {
                if (msgControl.Visible == true)
                {
                    msgControl.Visible = false;
                }
            };
            btnCodeControl.FinishInputEvent += (value) =>
            //密码控件
            var pswControl = new PswNumberInputControl(title);
            //变更数字表盘背景色
            pswControl.NumberIconBackColor = UserCenterColor.Current.White;
            pswControl.Y = Application.GetRealHeight(104);
            pswControl.Gravity = Gravity.CenterHorizontal;
            bodyFrameLayout.AddChidren(pswControl);
            pswControl.InitControl();
            pswControl.FinishInputEvent += (password) =>
            {
                //校验密码
                this.DoAdjustPssword(value, msgControl);
                this.DoAdjustPssword(password, pswControl);
            };
            if (formMode == FormMode.A验证前回密码)
@@ -131,8 +119,8 @@
        /// 校验密码
        /// </summary>
        /// <param name="i_Psw"></param>
        /// <param name="msgControl"></param>
        private void DoAdjustPssword(string i_Psw, NormalViewControl msgControl)
        /// <param name="pswControl"></param>
        private void DoAdjustPssword(string i_Psw, PswNumberInputControl pswControl)
        {
            if (formMode == FormMode.A新建密码)
            {
@@ -146,8 +134,7 @@
                if (this.firstPssword != i_Psw)
                {
                    //确认密码错误,请重新设置
                    msgControl.Visible = true;
                    msgControl.TextID = R.MyInternationalizationString.SecondPswNotEqual2;
                    pswControl.SetErrorMsg(Language.StringByID(R.MyInternationalizationString.SecondPswNotEqual2));
                    return;
                }
                UserCenterResourse.Option.PswAuthentication = i_Psw;
@@ -159,11 +146,22 @@
            {
                if (UserCenterResourse.Option.PswAuthentication != i_Psw)
                {
                    UserCenterResourse.Option.PasswordInputCount--;
                    if (UserCenterResourse.Option.PasswordInputCount <= 0)
                    {
                        //管理员身份验证失败,请重新登录
                        string msg2 = Language.StringByID(R.MyInternationalizationString.uCheckAdministratorFailAndReload);
                        this.ShowMassage(ShowMsgType.Tip, msg2);
                        UserCenterLogic.ReLoginAgain(Common.Config.Instance.Account);
                        return;
                    }
                    //密码错误,请重新输入
                    msgControl.Visible = true;
                    msgControl.TextID = R.MyInternationalizationString.uOldPsswordIsError;
                    pswControl.SetErrorMsg(Language.StringByID(R.MyInternationalizationString.uOldPsswordIsError));
                    return;
                }
                //重置剩余密码次数
                UserCenterResourse.Option.ResetPasswordCount();
                formMode = FormMode.A修改密码;
                this.InitMiddleFrame();
            }
@@ -179,8 +177,7 @@
                if (this.firstPssword != i_Psw)
                {
                    //确认密码错误,请重新设置
                    msgControl.Visible = true;
                    msgControl.TextID = R.MyInternationalizationString.SecondPswNotEqual2;
                    pswControl.SetErrorMsg(Language.StringByID(R.MyInternationalizationString.SecondPswNotEqual2));
                    return;
                }
                UserCenterResourse.Option.PswAuthentication = i_Psw;