コード例 #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
        public ContasCorrentes Atualizar(ContasCorrentes contaCorrente)
        {
            var validacao = new ContasCorrentesValidadas(_contaCorrenteRepositorio);

            contaCorrente = validacao.ContaValidada(ref contaCorrente);

            if (!contaCorrente.Validacoes.Any())
            {
                contaCorrente.UltimaMovimentacao = DateTime.Now;
                contaCorrente = _contaCorrenteRepositorio.Atualizar(contaCorrente);
            }

            return(contaCorrente);
        }