public async Task <IActionResult> GerarTransferencia(DadosOperacaoBinaria dados) { if (!ModelState.IsValid) { return(BadRequest(ErroRespostaDto.Para(ModelState))); } var token = Request.Headers[HeaderNames.Authorization]; var contaOrigemId = requisicaoServico.ObterContaDoCliente(token); var contaDestinoId = contaServico.ObterIdPeloTitular(dados.UsuarioDestino); await transferenciaServico.Gerar(new OperacaoBinariaDto(contaOrigemId, contaDestinoId, dados.Valor, dados.Descricao)); var movimentacaoUri = Url.Action("ConsultarExtrato", "Contas", null, HttpContext.Request.Scheme); return(Created(movimentacaoUri, null)); }
public int ObterContaDoCliente(string token) { var usuario = jwtServico.ObterSubject(token); return(contaServico.ObterIdPeloTitular(usuario)); }