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));
        }