public ValidationResult Lancamento(TransacaoEntity entrada) { var transacaoValidation = new TransacaoValidation().Valid(entrada); if (transacaoValidation.IsValid) { var contasLancamento = new Transacao().TransacaoAdapters(entrada); var clienteContaOrigem = new TransacaoRepository().ConsultarInformacaoCliente(contasLancamento.Conta); if (clienteContaOrigem != null) { var saldoOrigem = new TransacaoRepository().AtualizarSaldoCliente(entrada.ContaOrigem, (clienteContaOrigem.SALDO - entrada.ContaDestinoValorTransacao)); var clienteContaDestino = new TransacaoRepository().ConsultarInformacaoCliente(contasLancamento.ContaDestino); if (clienteContaDestino != null) { var saldodestino = new TransacaoRepository().AtualizarSaldoCliente(entrada.ContaDestino, (clienteContaDestino.SALDO + entrada.ContaDestinoValorTransacao)); if (saldoOrigem == 1 && saldodestino == 1) { var logtransacao = new TransacaoRepository().InserirLogTransacao(entrada, (clienteContaOrigem.SALDO - entrada.ContaDestinoValorTransacao), (clienteContaDestino.SALDO + entrada.ContaDestinoValorTransacao)); transacaoValidation.Success = true; } } } } else { transacaoValidation.Errors.ToList().ForEach(item => entrada.AdicionarResultadoDeValidacao(item)); } return(transacaoValidation); }
public TransacaoController(TransacaoRepository transacaoRepository, ContaRepository contaRepository, SalvaTransacaoService salvaTransacaoService, MovimentoRepository movimentoRepository) { this.transacaoRepository = transacaoRepository; this.contaRepository = contaRepository; this.salvaTransacaoService = salvaTransacaoService; this.movimentoRepository = movimentoRepository; }
public TransacoesController() { contaRepository = new ContaRepository(new ContextFactory()); categoriaRepository = new CategoriaRepository(new ContextFactory()); journalRepository = new JournalRepository(new ContextFactory()); transacaoRepository = new TransacaoRepository(new ContextFactory()); extratoServices = new ExtratoServices(); }
public UnitTest1() { var optionsBuilder = new DbContextOptionsBuilder <DBCoreContext>(); optionsBuilder.UseSqlServer(connection); var repoInjection = new TransacaoRepository(new DBCoreContext(optionsBuilder.Options)); injection = new App(repoInjection); }
public TransacaoRepositoryTest() { var transacoes = new LeitorCsvRepository().LerCSVParaListaTransacaoModel(Const.DadosCsv); RepositorioSobreTeste = new TransacaoRepository(transacoes); }
/// <summary> /// Contrutor default, recebendo DI os repositorios /// </summary> /// <param name="transacaoRepository">Repositorio de transação</param> /// <param name="contaRepository">Repositório de conta</param> public TransacaoController(TransacaoRepository transacaoRepository, ContaRepository contaRepository) { this.transacaoRepository = transacaoRepository; this.contaRepository = contaRepository; }