示例#1
0
        public IActionResult ResetPass([FromBody] ResetPassForm form)
        {
            //check email and update password for user account
            if (_userService.checkEmail(form.email) == false)
            {
                return(BadRequest(new { message = "Email không hợp lệ! Vui lòng kiểm tra lại." }));
            }
            UserEntity ueResetPass = _userService.getUserByEmail(form.email);

            if (EncodeUltis.MD5(form.newpass).Equals(ueResetPass.Password))
            {
                return(BadRequest(new { message = "Bạn đã sử dụng mật khẩu này gần đây. Hãy thử lại với mật khẩu mới!" }));
            }
            if (!form.newpass.Equals(form.repass))
            {
                return(BadRequest(new { message = "Mật khẩu không trùng khớp!" }));
            }
            string optCodeDB = ueResetPass.optCode;

            if (!optCodeDB.Equals(form.opt))
            {
                return(BadRequest(new { message = "Mã opt không hợp lệ. Vui lòng kiểm tra email và thực hiện lại." }));
            }
            else
            {
                ueResetPass.Password = EncodeUltis.MD5(form.newpass);
                ueResetPass.optCode  = null;
                //update on database
                _userService.save(ueResetPass);
                return(Ok("Thiết lập mật khẩu thành công. Hãy truy cập website bằng mật khẩu mới này nhé!"));
            }
            //check timeout for opt code
        }
示例#2
0
        public IActionResult UpdatePassword(ResetPassForm form)
        {
            if (form.id == 0)
            {
                return(BadRequest(new { message = "Thông tin request không hợp lệ 'id = 0'!" }));
            }
            UserEntity ueUpdate = _userService.getUserById(form.id);

            if (null != ueUpdate)
            {
                form.currentPass = EncodeUltis.MD5(form.currentPass);//check password hiện tại có đúng không ?
                if (form.checkOldPass(ueUpdate.Password) == false)
                {
                    return(BadRequest(new { message = "Mật khẩu hiện tại không đúng!" }));
                }
                if (form.checkRepass() == false)
                {
                    return(BadRequest(new { message = "Mật khẩu không trùng khớp!" }));
                }
                form.newpass = EncodeUltis.MD5(form.newpass);
                if (form.checkNewPassEqualsOldPass(ueUpdate.Password) == true)
                {
                    return(BadRequest(new { message = "Mật khẩu mới hiện tại đang được sử dụng. Hãy thử với mật khẩu mới!" }));
                }

                //saved password on database
                ueUpdate.Password = form.newpass;
                _userService.save(ueUpdate);

                return(Ok(_userService.createUserJWT(ueUpdate)));
            }
            return(BadRequest(new { message = "Hệ thống đang gặp sự cố. Vui lòng thực hiện sau!" }));
        }
示例#3
0
        public IActionResult ForgotPassword([FromBody] ResetPassForm fr)
        {
            Console.WriteLine(fr.email);
            if (_userService.checkEmail(fr.email) == false)
            {
                return(BadRequest(new { message = "Email không tồn tại trong hệ thống. Vui lòng thực hiện lại!" }));
            }
            string rdOtp = new Random().Next(10000000).ToString();

            return(SendEmail(fr.email, rdOtp));
        }