コード例 #1
0
        public IActionResult FazerTransacao([FromBody] Transacao transacao)
        {
            try
            {
                ContaCorrente conta = contaService.Get(transacao.Id);
                conta.Saldo += transacao.Valor;
                contaService.Put <ContaCorrenteValidator>(conta);

                if (transacao.PrecisaNotificarCoaf())
                {
                    Correntista correntista = correntistaService.Get(conta.correntistaId);
                    coafService.NotificarCoafApi(correntista, transacao);
                }

                return(new ObjectResult(conta));
            }
            catch (ArgumentNullException ex)
            {
                return(NotFound(ex));
            }
            catch (InvalidOperationException ex)
            {
                return(Problem(ex.Message));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }