Пример #1
0
        public async Task Gerar(OperacaoUnariaDto dto)
        {
            operacaoServico.ValidarDescricao(dto.Descricao);

            var conta     = contaServico.ObterConta(dto.ContaId);
            var valorTaxa = dto.Valor * configuracaoServico.ObterPercentualTaxa();

            var cashOut = new CashOut(conta.Id, dto.Valor, dto.Descricao, conta.Saldo, valorTaxa);

            cashOutRepositorio.Post(cashOut);
            contaServico.VincularCashOut(conta, cashOut);

            await produtorClient.EnfileirarCashOut(new EfetivarOperacaoUnariaDto(cashOut.Id));
        }