public async Task <IActionResult> Authenticate([FromBody] SignUpUserDto userDto) { User user; try { user = await Task.Run(() => _userService.Authenticate(userDto.Username, userDto.Password)); } catch (UserServiceException ex) { return(BadRequest(BaseStatusDto.CreateErrorDto(ex.Message))); } catch (Exception ex) { return(BadRequest(BaseStatusDto.CreateErrorDto(ex.Message))); } string tokenString = _userService.GetUserToken(user, _appSettings.Secret); SignInUserDto signInUser = _mapper.Map <SignInUserDto>(user); signInUser.Token = tokenString; signInUser.CreateSuccess(); return(Ok(signInUser)); }
public async Task <IActionResult> Signup([FromBody] SignUpUserDto user) { var account = await _userAccountRepository.GetByUserName(user.UserName); if (account != null) { return(BadRequest($"There is already an account registered with username: {user.UserName}")); } var _user = new UserAccountEntity().Create(user.UserName, user.Password.ComputeSha256Hash(), user.Role); await _userAccountRepository.CreateUser(_user); return(Ok()); }
public async Task <IActionResult> Register([FromBody] SignUpUserDto userDto) { var user = _mapper.Map <User>(userDto); try { await Task.Run(() => _userService.Create(user, userDto.Password)); return(Ok(BaseStatusDto.CreateSuccessDto())); } catch (UserServiceException ex) { return(BadRequest(BaseStatusDto.CreateErrorDto(ex.Message.ToString()))); } }
public async Task <ActionResult <UserDto> > SignUp([FromBody] SignUpUserDto signUpUser) { try { var signUpResult = await _userUseCases.SignUp(signUpUser); return(UseCaseResponse(signUpResult)); } catch (PlantedException ex) { _logger.LogDebug(ex.Message); return(BadRequest(ex.Message)); } catch (Exception ex) { _logger.LogDebug(ex.Message); return(BadRequest(ExceptionMessage.Unexpected)); } }
public async Task <IActionResult> SignUp([FromForm, FromBody] SignUpUserDto dto) { var user = new AppUser { FirstName = dto.FirstName, UserName = dto.Email, LastName = dto.LastName, Email = dto.Email }; var userCreateResult = await _userManager.CreateAsync(user, dto.Password); if (userCreateResult.Succeeded) { return(new CreatedResult(string.Empty, string.Empty)); } return(new BadRequestResult()); }
public async Task <IUseCaseResult <UserDto> > SignUp(SignUpUserDto signUpUserDto) { // Check if user exists var user = await _userService.GetUserByEmailAsync(signUpUserDto.EmailAddress); if (user != null) { return(UseCase.Fail <UserDto>(null, ResponseMessage.EmailExists)); } // Hash Password signUpUserDto.Password = _authenticationService.CreatePasswordHash(signUpUserDto.Password); // Create User var newUser = await _userService.CreateUserAsync(signUpUserDto); // Create JWT (access token) var accessToken = _authenticationService.CreateAccessToken(newUser.EmailAddress); newUser.Token = accessToken.Token; return(UseCase.Success(newUser)); }