示例#1
0
        public void Saque(int Id, [FromForm] decimal vlSaque)
        {
            if (_IRepoC.Saque(Id, vlSaque))
            {
                TransacaoModel Transacao = new TransacaoModel();

                Transacao.IdConta       = Id;
                Transacao.DataTransacao = DateTime.Now;
                Transacao.Valor         = -vlSaque;
                _IRepoT.Add(Transacao);
            }
        }
示例#2
0
 public IActionResult Saque(Transacao saque)
 {
     try
     {
         bool saqueEfetuado = _transacaoRepositorio.Saque(saque);
         if (saqueEfetuado)
         {
             _contaRepositorio.Saque(saque.numeroConta, saque.numeroContaOrigem, saque.valor);
         }
         else
         {
             return(new ObjectResult("Saque não efetuado."));
         }
     }
     catch (Exception e)
     {
         return(new ObjectResult(e));
     }
     return(new ObjectResult(_contaRepositorio.FindByContaOrigem(saque.numeroContaOrigem)));
 }
示例#3
0
        public IActionResult Create([FromBody] Transacao transacao)
        {
            var  _conta    = _contaRepositorio.FindByConta(transacao.numeroConta);
            bool validador = false;

            if (_contaRepositorio.FindByConta(transacao.numeroContaDestino) != null && transacao.numeroContaDestino != transacao.numeroConta)
            {
                validador = true;
            }

            if ((transacao.senhaTransacoes == _conta.senhaTransacoes))
            {
                if (transacao.idTipoTransacao == 1 && 0 < transacao.valor)
                {
                    transacao.dtTransacao = DateTime.Now.ToString("dd/MM/yyyy");
                    _contaRepositorio.Deposito(transacao.numeroConta, transacao.numeroContaDestino, transacao.valor);
                    _transacaoRepositorio.Deposito(transacao);
                }
                else if (transacao.idTipoTransacao == 2 && _conta.saldoAtual >= transacao.valor)
                {
                    transacao.dtTransacao = DateTime.Now.ToString("dd/MM/yyyy");
                    _contaRepositorio.Saque(transacao.numeroConta, transacao.numeroContaOrigem, transacao.valor);
                    _transacaoRepositorio.Saque(transacao);
                }
                else if (transacao.idTipoTransacao == 3 && _conta.saldoAtual >= transacao.valor && validador == true)
                {
                    transacao.dtTransacao = DateTime.Now.ToString("dd/MM/yyyy");
                    _contaRepositorio.Transferencia(transacao.numeroConta, transacao.numeroContaOrigem, transacao.numeroContaDestino, transacao.valor);
                    _transacaoRepositorio.Transferencia(transacao);
                }
                return(new ObjectResult(_transacaoRepositorio.FindByID(transacao.idTransacao)));
            }
            else
            {
                return(BadRequest());
            }
        }