public async Task <UserResponseDto> RegisterUser(RegisterUserQueryDto registerUserDto) { var check = await _userRepository.SingleUserNameAndEmail(username : registerUserDto.UserName, email : registerUserDto.Email); if (check != null) { // @TO-DO refactor var email = registerUserDto.Email == check.Email ? "Email - " : ""; var username = registerUserDto.UserName == check.UserName ? "UserName :"******""; throw new EntityAlreadyExistException("", $" {email} {username} already taken!"); } var user = _mapper.Map <User>(registerUserDto); var result = await RegisterNewUser(user, registerUserDto.Password); if (!result.Succeeded) { throw new InvalidFormException("", result.Errors .Select(e => e.Description) .Aggregate((x, res) => res += x + "\n")); } return(_mapper.Map <UserResponseDto>(registerUserDto)); }
public async Task <IActionResult> Create([FromBody] RegisterUserQueryDto registerUser) { var result = await _authService.RegisterUser(registerUser); return(Ok(result)); }