public async Task <ActionResult> ChangePassword([FromBody] UserChangePassDTO userInfo)
 {
     try
     {
         if (await _userService.ChangePassword(userInfo))
         {
             return(Ok());
         }
         return(BadRequest(new JsonResult("Incorrect old password")));
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Пример #2
0
        public async Task <bool> ChangePassword(UserChangePassDTO userInfo)
        {
            using (_unitOfWork)
            {
                User user = await _unitOfWork.UserRepository.FindByID(userInfo.UserId);

                if (!PasswordEncryptionService.IsPasswordCorrect(user.Password, userInfo.OldPassword, _appSettings.SaltLength))
                {
                    return(false);
                }

                user.Password = PasswordEncryptionService.EncryptPassword(userInfo.NewPassword, _appSettings.SaltLength);
                _unitOfWork.UserRepository.Update(user);

                return(await _unitOfWork.Save());
            }
        }