예제 #1
0
        public Operacoes Depositar(Operacoes operacao)
        {
            var validacao = new OperacoesValidadas(_operacoesRepositorio, _contaRepositorio);

            operacao = validacao.DepositarValidado(ref operacao);

            if (!operacao.Validacoes.Any())
            {
                operacao.Data = DateTime.Now;

                if (operacao.ContaCorrenteId == Guid.Empty)
                {
                    operacao.ContaCorrenteId = _contaRepositorio.Listar().FirstOrDefault().Id;
                }

                operacao = _operacoesRepositorio.Adicionar(operacao);

                var conta = _contaRepositorio.ObterPorId(operacao.ContaCorrenteId);
                conta.Saldo += operacao.Valor;

                _contaRepositorio.Atualizar(conta);
            }

            return(operacao);
        }
예제 #2
0
        private ContasCorrentes NenhumaContaAberta(ref ContasCorrentes contaCorrente)
        {
            var ExisteRegistro = _contaRepositorio.Listar().Count() > 0;

            if (ExisteRegistro)
            {
                contaCorrente.Validacoes.Add(new ItemValidacao()
                {
                    NomePropriedade = "Conta",
                    Mensagem        = "Já existe Conta aberta!"
                });
            }

            return(contaCorrente);
        }