public ContaService() { if (_repository == null) { _repository = new ContaRepository(); } }
private void AtualizarGrid() { Contas = ContaRepository.Obter(); gridContas.DataSource = null; gridContas.DataSource = Contas.ToList(); }
public TransacaoController(TransacaoRepository transacaoRepository, ContaRepository contaRepository, SalvaTransacaoService salvaTransacaoService, MovimentoRepository movimentoRepository) { this.transacaoRepository = transacaoRepository; this.contaRepository = contaRepository; this.salvaTransacaoService = salvaTransacaoService; this.movimentoRepository = movimentoRepository; }
private void gridContas_CellClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex > -1 && e.RowIndex > -1) { Conta itemSelecionado = (Conta)gridContas.Rows[e.RowIndex].DataBoundItem; if (gridContas.Columns[e.ColumnIndex].Name == "btnEditar") //Editar { FrmManutencaoConta frm = new FrmManutencaoConta(itemSelecionado.Id); frm.ShowDialog(); AtualizarGrid(); } if (gridContas.Columns[e.ColumnIndex].Name == "btnApagar") //Apagar { DialogResult resut = MessageBox.Show("Deseja apagar o item?", "Remover", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resut == DialogResult.Yes) { ContaRepository.Apagar(itemSelecionado.Id); AtualizarGrid(); } } } }
public void Initialize() { contaRepository = new ContaRepository(); Contas = new List <Conta>(); dgContas.AutoGenerateColumns = false; AtualizaGrid(); }
private void Salvar() { if (CadastroEhValido()) { Conta.Agencia = txtAgencia.Text; Conta.ContaCorrente = txtContaCorrente.Text; Conta.Limite = Convert.ToDecimal(txtLimite.Text); Conta.Saldo = Convert.ToDecimal(txtSaldo.Text); // var idCliente = cmbCliente.SelectedValue; // var objetoCliente = (Cliente)cmbCliente.SelectedItem; var idCliente = ((Cliente)cmbCliente.SelectedItem).Id; var idBanco = ((Banco)cmbBanco.SelectedItem).Id; Conta.ClienteId = idCliente; Conta.BancoId = idBanco; if (Conta.Id == 0) { ContaRepository.Inserir(Conta); MessageBox.Show("Cadastro Incluido com sucesso", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { ContaRepository.Editar(Conta); MessageBox.Show("Cadastro alterado com sucesso", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information); } Close(); } }
public void AoCadastrarContaApiDeveRetornar201() { //arrange var options = new DbContextOptionsBuilder <SocialContext>() .UseInMemoryDatabase("SocialContext") .Options; var contexto = new SocialContext(options); var repoConta = new ContaRepository(contexto); var repoTransf = new TransferenciaRepository(contexto); var contaService = new ContaService(repoConta); var transacoesService = new TransacoesService(repoTransf, repoConta); var controlador = new ContasController(contaService, transacoesService); var model = new ContaApi { Name = "Bruno", Description = "Daldegan", Status = "ACTIVE", Idenfifier = "65432" }; //act var retorno = controlador.Incluir(model); Assert.IsType <CreatedResult>(retorno); //201 }
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(); }
static void Main(string[] args) { ContaRepository repository = new ContaRepository(); #region Inserir Conta Conta conta = new Conta(); conta.Limite = 100; conta.Saldo = 1000; conta.ContaCorrente = "654321"; conta.Agencia = "7890"; conta.Banco = "Santander"; repository.Inserir(conta); #endregion #region Editar Conta Conta contaEditar = new Conta(); conta.Id = 1; conta.Limite = 100; conta.Saldo = 1000; conta.ContaCorrente = "654321"; conta.Agencia = "7890"; conta.Banco = "Santander"; #endregion #region Apagar Conta repository.Apagar(1); #endregion #region Obter uma conta Conta conta_1 = repository.Obter(1); #endregion #region Obter todas Contas IEnumerable <Conta> contas = repository.Obter(); foreach (var item in contas) { Console.WriteLine(item.Banco); } #endregion #region Saque Conta contaSaque = repository.Obter(1); #endregion #region Deposito Conta contaDeposito = repository.Obter(1); #endregion #region Transferencia Conta contaTransferencia = repository.Obter(1); #endregion Console.ReadKey(); }
private void Initialize() { ContaRepository = new ContaRepository(); Contas = new List <Conta>(); gridContas.AutoGenerateColumns = false; AtualizarGrid(); }
public bool Deposito(int idAgencia, int conta, decimal valor, out string mensagemErro) { mensagemErro = ""; var agencia = AgenciaRepository.GetById(idAgencia); if (agencia == null) { mensagemErro = "Agência inválida!"; return(false); } var contaCorrente = ContaRepository.GetById(idAgencia, conta); if (contaCorrente == null) { mensagemErro = "Conta inválida!"; return(false); } if (valor <= 0) { mensagemErro = "Valor do depósito deve ser maior do que 0!"; return(false); } contaCorrente.Saldo = contaCorrente.Saldo + valor; var extrato = new Extrato() { DataRegistro = DateTime.Today, AgenciaId = idAgencia, ContaId = conta, Valor = valor, Saldo = contaCorrente.Saldo, Descricao = "Depósito" }; try { using (var transaction = new TransactionScope()) { ContaRepository.Save(contaCorrente); ExtratoRepository.Save(extrato); transaction.Complete(); } } catch (Exception) { // incluir isso em um log... mensagemErro = "Ocorreu um erro ao fazer o depósito!"; return(false); } return(true); }
public List <ContaListItem> Get() { var repositorio = new ContaRepository(); ContaListViewModel viewModel = new ContaListViewModel(); viewModel.Filtro.UsuarioId = "cc21864d-41b2-44a1-917d-5fff5807edb6"; viewModel.Filtro.DataInicial = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); viewModel.Filtro.DataFinal = DateTime.Now; viewModel.ContaList = repositorio.ObterPorFiltro(viewModel.Filtro).ToList(); return(viewModel.ContaList); }
public bool Deposito(int agencia, int conta, decimal valor, out string mensagemErro) { mensagemErro = ""; var ag = AgenciaRepository.GetById(agencia); if (ag == null) { mensagemErro = "Agência Invalida"; return(false); } var cc = ContaRepository.GetById(agencia, conta); if (cc == null) { mensagemErro = "Conta Invalida"; return(false); } if (valor <= 0) { mensagemErro = "O valor do deposito for maior que zero!"; return(false); } cc.Saldo = cc.Saldo + valor; var extrato = new Extrato() { DataRegistro = DateTime.Now, AgenciaId = agencia, ContaId = conta, Valor = valor, Saldo = cc.Saldo, Descricao = "Deposito" }; try { using (var t = new TransactionScope()) { ContaRepository.Save(cc); ExtratoRepository.Save(extrato); t.Complete(); } } catch (Exception ex) { mensagemErro = "Ocorreu um problema ao fazer o depósito!"; return(false); } return(true); }
// GET api/<controller> public List <ContaListItem> Get() { var repositorio = new ContaRepository(); ContaListViewModel viewModel = new ContaListViewModel(); viewModel.Filtro.UsuarioId = "admin"; viewModel.Filtro.DataInicial = new DateTime(DateTime.Now.Year, 6, 1); viewModel.Filtro.DataFinal = DateTime.Now; viewModel.ContaList = repositorio.ObterPorFiltro(viewModel.Filtro).ToList(); return(viewModel.ContaList); }
public IList <Extrato> Extrato(int agencia, int conta, DateTime dataInicio, DateTime dataFim, out string mensagemErro) { mensagemErro = ""; var ag = AgenciaRepository.GetById(agencia); if (ag == null) { mensagemErro = "Agencia Invalida"; return(null); } var cc = ContaRepository.GetById(agencia, conta); if (cc == null) { mensagemErro = "Conta Invalida"; return(null); } if (dataInicio > dataFim) { mensagemErro = "Data inicio deve ser menor que a data de fim!"; return(null); } if ((dataFim - dataInicio).Days > 120) { mensagemErro = "O perido nao deve ser superior a 120 dias!"; return(null); } try { var extrato = ExtratoRepository.GetByPeriodo(agencia, conta, dataInicio, dataFim); var linhaSaldo = new Extrato() { Descricao = "Saldo anterior", Saldo = ExtratoRepository.GetSaldoAnterior(agencia, conta, dataInicio, dataFim) }; extrato.Insert(0, linhaSaldo); return(extrato); } catch (Exception ex) { mensagemErro = "Ocorreu um problema ao obter o extrato!"; return(null); } }
public void AdicionarTransacaoManualTestFakery() { ///AAA - Arrange, Act, Assert ///Arrange var contaa = Conta.CriarConta(Conta.TipoConta.Bronze); var fakeRepo = new ContaRepository(contaa); //esse repositório foi montado para servir de repositório falso, equanto o oficial não foi desenvolvido var sutt = new ContaService(fakeRepo); //Act sutt.AdicionarTransacao("ContaComercial", 200m); //Assert Assert.AreEqual(200m, contaa.Saldo); }
public FrmManutencaoConta(int id) { InitializeComponent(); ContaRepository = new ContaRepository(); BancoRepository = new BancoRepository(); ClienteRepository = new ClienteRepository(); PreencherComboCliente(); PreencherComboBanco(); Obter(id); }
private void btnSalvar_Click(object sender, EventArgs e) { ContaRepository contaRepository = new ContaRepository(); Conta conta = new Conta(); conta.Limite = Convert.ToDecimal(edLimite.Text); conta.Saldo = Convert.ToDecimal(edSaldo.Text); conta.ContaCorrente = edNrConta.Text; conta.Agencia = edAgencia.Text; conta.BancoId = Convert.ToInt32(cbBanco.Text[0].ToString()); conta.ClienteId = Convert.ToInt32(cbCliente.Text[0].ToString()); contaRepository.Inserir(conta); MessageBox.Show("Registro incluído com sucesso"); Close(); }
public void Setup() { var connection = DbConnectionFactory.CreatePersistent(Guid.NewGuid().ToString()); _context = new FakeDbContext(connection); _repository = new ContaRepository(_context); _conta = ContaObjectMother.GetContaValida(); //Seed _contaSeed = ContaObjectMother.GetContaValida(); _context.Contas.Add(_contaSeed); _context.Clientes.Add(_contaSeed.Cliente); _context.Clientes.Add(_conta.Cliente); _context.SaveChanges(); }
public async Task ReturnsList() { var optionsBuilder = new DbContextOptionsBuilder <DataContext>(); optionsBuilder.UseSqlServer("Server=(localdb)\\MSSQLLocalDB;Database=ContasExtensoDatabase;Trusted_Connection=True;MultipleActiveResultSets=true"); var context = new DataContext(optionsBuilder.Options); var contaRepo = new ContaRepository(context); var regraRepo = new RegraRepository(context); var service = new ContaService(contaRepo, regraRepo); var sut = new ContasController(service, new NullLogger <ContasController>()); var result = await sut.GetAll() as ObjectResult; Assert.IsType <List <Conta> >(result.Value); Assert.Equal(200, result.StatusCode); }
public IList <Extrato> Extrato(int idAgencia, int conta, DateTime dataInicio, DateTime dataFim, out string mensagemErro) { mensagemErro = ""; var agencia = AgenciaRepository.GetById(idAgencia); if (agencia == null) { mensagemErro = "Agência inválida!"; return(null); } var contaCorrente = ContaRepository.GetById(idAgencia, conta); if (contaCorrente == null) { mensagemErro = "Conta de origem é invalida!"; return(null); } if (dataInicio > dataFim) { mensagemErro = "A data de inicio deve ser menor do que a data fim!"; return(null); } if ((dataFim - dataInicio).Days > 120) { mensagemErro = "O período não deve ser superior a 120 dias!"; return(null); } try { var extratoLista = ExtratoRepository.GetByPeriodo(agencia.Id, conta, dataInicio, dataFim); return(extratoLista); } catch (Exception) { mensagemErro = "Ocorreu um erro ao fazer obter o extrato!"; return(null); } }
public async Task CreatesEntry() { var optionsBuilder = new DbContextOptionsBuilder <DataContext>(); optionsBuilder.UseInMemoryDatabase("InMemoryDatabaseName"); var context = new DataContext(optionsBuilder.Options); var contaRepo = new ContaRepository(context); var regraRepo = new RegraRepository(context); var service = new ContaService(contaRepo, regraRepo); var sut = new ContasController(service, new NullLogger <ContasController>()); var result = await sut.Create(new ContaTransfer { Nome = "Conta", Valor = 20.8m, Vencimento = new DateTime(2020, 12, 10), Pagamento = new DateTime(2020, 12, 20) }) as ObjectResult; Assert.Equal(200, result.StatusCode); }
public decimal Saldo(int agencia, int conta, out string mensagemErro) { mensagemErro = ""; var ag = AgenciaRepository.GetById(agencia); if (ag == null) { mensagemErro = "Agencia Invalida"; return(0); } var cc = ContaRepository.GetById(agencia, conta); if (cc == null) { mensagemErro = "Conta Invalida"; return(0); } return(cc.Saldo); }
public decimal Saldo(int agencia, int conta, out string mensagemErro) { mensagemErro = ""; var ag = AgenciaRepository.GetById(agencia); if (agencia == 0) { mensagemErro = "Agência inválida!"; return(0); } var contaCorrente = ContaRepository.GetById(agencia, conta); if (contaCorrente == null) { mensagemErro = "Conta inválida!"; return(0); } return(contaCorrente.Saldo); }
private void Obter(int id) { Conta = ContaRepository.Obter(id); if (Conta == null) // Então é novo { Conta = new Conta(); } else // Editar conta existente { combo_Banco.SelectedValue = Conta.BancoId; combo_Banco.Refresh(); combo_Cliente.SelectedValue = Conta.ClientId; combo_Cliente.Refresh(); txt_Agencia.Text = Conta.Agencia; txt_ContaCorrente.Text = Conta.ContaCorrente; txt_Limite.Text = Conta.Limite.ToString(); txt_Saldo.Text = Conta.Saldo.ToString(); } }
private void Obter(int id) { Conta = ContaRepository.Obter(id); if (Conta == null) //Novo { Conta = new Conta(); } else //Editar { lblId.Text = Conta.Id.ToString(); txtAgencia.Text = Conta.Agencia; txtContaCorrente.Text = Conta.ContaCorrente; txtLimite.Text = Conta.Limite.ToString(); txtSaldo.Text = Conta.Saldo.ToString(); cmbCliente.SelectedValue = Conta.ClienteId; cmbCliente.Refresh(); cmbBanco.SelectedValue = Conta.BancoId; cmbBanco.Refresh(); } }
public void Setup() { this.unitOfWork = Dependency.Resolve <IUnitOfWork>(); this.contaRepository = Dependency.Resolve <ContaRepository>(); this.categoriaRepository = Dependency.Resolve <CategoriaRepository>(); this.fechaMovimento = Dependency.Resolve <FechaMovimentoService>(); this.transferenciaService = Dependency.Resolve <TransferenciaService>(); this.gastoService = Dependency.Resolve <GastoService>(); this.recebimentoService = Dependency.Resolve <RecebimentoService>(); this.abreMovimentoService = Dependency.Resolve <AbreMovimentoService>(); this.fluxoCaixaService = Dependency.Resolve <FluxoCaixaService>(); using (this.unitOfWork.Begin()) { Dependency.Resolve <DatabaseCleaner>().Execute(); } using (this.unitOfWork.Begin()) { this.contaRepository.Seed(); this.categoriaRepository.Seed(); } using (this.unitOfWork.Begin()) { this.caixa = this.contaRepository.ById(Conta.CaixaId); this.itau = this.contaRepository.ById(Conta.ItauId); this.proLabore = this.categoriaRepository.ByNome("Pró-Labore"); this.aluguel = this.categoriaRepository.ByNome("Aluguel"); this.vendas = this.categoriaRepository.ByNome("Vendas 206"); this.compras = this.categoriaRepository.ByNome("Compras"); this.combustivel = this.categoriaRepository.ByNome("Combustível"); this.energia = this.categoriaRepository.ByNome("Energia"); } }
public ContaController() { contaRepository = new ContaRepository(new ContextFactory()); }
public bool Saque(int idAgencia, int conta, decimal valor, out string mensagemErro) { mensagemErro = ""; var agencia = AgenciaRepository.GetById(idAgencia); if (agencia == null) { mensagemErro = "Agência inválida!"; return(false); } var contaCorrente = ContaRepository.GetById(idAgencia, conta); if (contaCorrente == null) { mensagemErro = "Conta inválida!"; return(false); } if (valor <= 0) { mensagemErro = "O valor do saque precisa ser maior que zero!"; return(false); } if (valor > contaCorrente.Saldo) { mensagemErro = "O valor do saque precisa ser menor ou igual ao saldo da conta!"; return(false); } contaCorrente.Saldo = contaCorrente.Saldo - valor; var extrato = new Extrato() { DataRegistro = DateTime.Now, AgenciaId = idAgencia, ContaId = conta, Valor = valor * -1, Saldo = contaCorrente.Saldo, Descricao = "Saque" }; try { using (var transaction = new TransactionScope()) { ContaRepository.Save(contaCorrente); ExtratoRepository.Save(extrato); transaction.Complete(); } } catch (Exception) { // incluir isso em um log... mensagemErro = "Ocorreu um erro ao fazer o saque!"; return(false); } return(true); }
public ContaTests() { contaRepository = new ContaRepository(new ContextFactory()); owner = "test"; }
public bool Transferencia(int agenciaOrigem, int contaOrigem, decimal valor, int agenciaDestino, int contaDestino, out string mensagemErro) { mensagemErro = ""; var agOrigem = AgenciaRepository.GetById(agenciaOrigem); if (agOrigem == null) { mensagemErro = "Agência de origem inválida!"; return(false); } var contaCorrenteOrigem = ContaRepository.GetById(agenciaOrigem, contaOrigem); if (contaCorrenteOrigem == null) { mensagemErro = "Conta de origem inválida!"; return(false); } if (valor <= 0) { mensagemErro = "O valo deve ser maior do que zero!"; return(false); } if (valor > contaCorrenteOrigem.Saldo) { mensagemErro = "O valor do saque precisa ser menor ou igual ao saldo da conta!"; return(false); } var agDestino = AgenciaRepository.GetById(agenciaDestino); if (agDestino == null) { mensagemErro = "Agência de destino inválida!"; return(false); } var contaCorrenteDestino = ContaRepository.GetById(agenciaDestino, contaDestino); if (contaCorrenteDestino == null) { mensagemErro = "Conta de destino inválida!"; return(false); } contaCorrenteOrigem.Saldo = contaCorrenteOrigem.Saldo - valor; var extratoOrigem = new Extrato() { DataRegistro = DateTime.Now, AgenciaId = agenciaOrigem, ContaId = contaCorrenteOrigem.Id, Valor = valor * -1, Saldo = contaCorrenteDestino.Saldo, Descricao = $"Transferência para Ag {agenciaDestino} Cc {contaCorrenteDestino} ", }; contaCorrenteDestino.Saldo = contaCorrenteDestino.Saldo + valor; var extratoDestino = new Extrato() { DataRegistro = DateTime.Now, AgenciaId = agenciaDestino, ContaId = contaCorrenteDestino.Id, Valor = valor, Saldo = contaCorrenteDestino.Saldo, Descricao = $"Transferência de Ag {agenciaOrigem} Cc {contaCorrenteOrigem} ", }; try { using (var transaction = new TransactionScope()) { ContaRepository.Save(contaCorrenteOrigem); ExtratoRepository.Save(extratoOrigem); ExtratoRepository.Save(extratoDestino); transaction.Complete(); } } catch (Exception) { mensagemErro = "Ocorreu um problema ao fazer a tranferência!"; return(false); } return(true); }
/// <summary> /// Construtor padrão /// </summary> /// <param name="contaRepository">repositorio da conta</param> public TransacaoRepositoryMock(ContaRepository contaRepository) { this.contaRepository = contaRepository; listaTransacoes = new List <TransacaoDTO>(); popularLista(); }
static void Main(string[] args) { ClienteRepository ClienteRepositorio = new ClienteRepository(); #region InserirCliente DateTime DtaNasc = Convert.ToDateTime("13/03/1983"); Cliente cliente = new Cliente(); cliente.Nome = "Bruno Linhari"; cliente.DataNascimento = DtaNasc; //ClienteRepositorio.Inserir(cliente); #endregion #region InserirBanco BancoRepository BancoRepositorio = new BancoRepository(); Banco banco = new Banco(); banco.Codigo = 243; banco.Nome = "Itaú"; //BancoRepositorio.Inserir(banco); #endregion #region InserirConta ContaRepository repository = new ContaRepository(); Conta conta = new Conta(); conta.Limite = 100; conta.Saldo = 1000; conta.ContaCorrente = "123456"; conta.Agencia = "123"; conta.BancoId = 1; conta.ClienteId = 1; //repository.Inserir(conta); #endregion } #region Editar Conta Conta contaEditar = new Conta(); contaEditar.Id = 3; contaEditar.Limite = 100; contaEditar.Saldo = 1000; contaEditar.ContaCorrente = "123456"; contaEditar.Agencia = "123"; //contaEditar.Banco = "Itaú"; //repository.Editar(contaEditar); #endregion #region Apagar Conta //repository.Apagar(2); #endregion #region Ralizar Saque Conta contaSaque = repository.Obter(1); //repository.RealizarSaque(contaSaque, 10); #endregion #region Ralizar Deposito Conta contaDeposito = repository.Obter(2); //repository.RealizarSaque(contaDeposito, 20); #endregion #region Ralizar Transferencia Conta contaOrigem = repository.Obter(3); Conta contaDestino = repository.Obter(4); //repository.RealizarTransferencia(contaOrigem, contaDestino, 10); #endregion #region Obter apenas uma Conta Conta conta_1 = repository.Obter(1); Console.WriteLine(conta_1); #endregion #region Obter Todas as Contas IEnumerable <Conta> contas = repository.Obter(); foreach (var item in contas) { Console.Write(item.Saldo + " - "); Console.Write(item.Limite + " - "); Console.Write(item.Agencia + " - "); Console.WriteLine(item.ContaCorrente); } #endregion Console.ReadKey(); }