public GenericCommandResult SignIn( [FromBody] LogarCommand command, [FromServices] LogarCommandHandler handler ) { var resultado = (GenericCommandResult)handler.Handle(command); if (resultado.Sucesso) { Usuario usuario = (Usuario)resultado.Data; var token = new Token( Configuration["Token:issuer"], Configuration["Token:audience"], Configuration["Token:secretKey"] ) .GerarJsonWebToken( usuario.Id, usuario.Nome, usuario.Email, usuario.TipoUsuario.ToString() ); return(new GenericCommandResult(true, "Usuário logado", new { token = token })); } return(resultado); }
public ICommandResult Entrar(LogarCommand command, [FromServices] LogarCommandHandler handler) { var resultado = (GenericCommandResult)handler.Handle(command); if (resultado.Sucesso) { var usuario = (Usuario)resultado.Dados; var token = JWT.Gerar(usuario.Nome, usuario.Email, usuario.Id, 120); return(new GenericCommandResult(resultado.Sucesso, resultado.Mensagem, token)); } return(resultado); }