public async Task <IActionResult> Login([FromBody] LoginUserRequestDTO request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { var result = await _signInManager.PasswordSignInAsync(request.Email, request.Password, false, false); if (result.Succeeded) { var user = await _userManager.FindByEmailAsync(request.Email); var token = _accountsService.CreateToken(user); return(Ok(new { UserId = user.Id, Token = token })); } return(Unauthorized()); } catch (Exception exc) { return(BadRequest(exc.Message)); } }
public async Task <IActionResult> Login(LoginUserRequestDTO loginUserRequestDTO) { LoginUserValidator validator = new LoginUserValidator(); var validationResult = validator.Validate(loginUserRequestDTO); if (!validationResult.IsValid) { _logger.LogInformation("Not valid input."); ValidatorError validatorError = new ValidatorError(); return(BadRequest(new { message = validatorError.GetErrorMessagesAsString(validationResult.Errors) })); } var user = await _userRepo.LoginUser(loginUserRequestDTO.Email, loginUserRequestDTO.Password); if (user == null) { return(BadRequest(new { message = "Invalid email or passowrd." })); } return(Ok(user)); }
public static User ToUser(this LoginUserRequestDTO request) { return(new User { Email = request.Email, Password = request.Password }); }
public OperationResult <User> Post(LoginUserRequestDTO request) { return(this.UserBusinessLogic.LoginUser(request.Email, request.Password)); }