public async Task <AuthResponseDto> RegisterAsync(RegistrationCommand userInput) { var userFound = await _userManager.FindByNameAsync(userInput.Username); if (userFound != null) { throw new RestException(HttpStatusCode.BadRequest, new { Username = "******" }); } var user = new User(userInput.Username, null, new PersonName("", "", ""), null); var created = await _userService.CreateUser(user, userInput.Password, userInput.Role); if (created) { return(new AuthResponseDto(_tokenGenerator.CreateJwtToken(user), user.UserName, new List <string> { userInput.Role }, DateTime.Now.AddHours(JwtExpireTimeEnum.HoursToExpire.GetValue()) )); } throw new SmartHubException("Problem Registering new User"); }
public async Task <ServiceResponse <AuthResponseDto> > Handle(RegistrationCommand request, CancellationToken cancellationToken) { var result = await _registrationService.RegisterAsync(request).ConfigureAwait(false); return(new ServiceResponse <AuthResponseDto>(result, true, "Successful")); }