public async Task <IActionResult> Registrar(UsuarioRegistroVM viewModel) { if (!ModelState.IsValid) { return(CustomResponse(ModelState)); } var user = new User { UserName = viewModel.Email, Email = viewModel.Email, EmailConfirmed = true }; var result = await _authenticationService.UserManager.CreateAsync(user, viewModel.Senha); if (result.Succeeded) { var token = await _authenticationService.GerarJwt(viewModel.Email); return(CustomResponse(token)); } foreach (var item in result.Errors) { AdicionarErroProcessamento(item.Description); } return(CustomResponse()); }
public async Task <IActionResult> Registro(UsuarioRegistroVM model) { if (!ModelState.IsValid) { return(View(model)); } var resposta = await _autenticacaoService.Registro(model); if (ResponsePossuiErros(resposta.ErroResult)) { return(View(model)); } await _autenticacaoService.RealizarLogin(resposta); return(RedirectToAction("Index", "Catalogo")); }
public async Task <UsuarioRespostaLogin> Registro(UsuarioRegistroVM usuarioRegistro) { var registroContent = ObterConteudo(usuarioRegistro); var response = await _httpClient.PostAsync("/api/Auth/Registrar", registroContent); if (!TratarErrosResponse(response)) { return(new UsuarioRespostaLogin() { ErroResult = await DeserializarObjetoResponse <ResponseResult>(response) }); } var result = await DeserializarObjetoResponse <UsuarioRespostaLogin>(response); return(result); }
private async Task <ResponseMessage> RegistrarCliente(UsuarioRegistroVM usuarioRegistro) { var usuario = await _authenticationService.UserManager.FindByEmailAsync(usuarioRegistro.Email); var usuarioRegistrado = new UsuarioRegistradoIntegrationEvent( Guid.Parse(usuario.Id), usuarioRegistro.Nome, usuarioRegistro.Email, usuarioRegistro.Cpf); try { return(await _bus.RequestAsync <UsuarioRegistradoIntegrationEvent, ResponseMessage>(usuarioRegistrado)); } catch { await _authenticationService.UserManager.DeleteAsync(usuario); throw; } }