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)); } }
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()); } }