public void AdicionarCredito()
        {
            Balanco balanco = new Balanco();

            balanco.Add(new Credito(1000.00));
            Assert.Equals(1000.00, balanco.Saldo);
        }
예제 #2
0
        private void BuscaBalanco()
        {
            var empresa         = Usuario.Codempresa.ToString();
            var coddepartamento = Usuario.Coddepartamento.ToString();
            var databalanco     = txtdtBalanco.Text.Trim();

            //define um array de strings com nCOlunas
            string[] linhaDados = new string[4];

            //LIMPAR GRID
            Grid.Rows.Clear();
            Grid.Refresh();

            var dr = Balanco.SelectBalanco(int.Parse(empresa), int.Parse(coddepartamento), databalanco);

            if (dr.HasRows)
            {
                while (dr.Read())
                {
                    Grid.Columns["quantidade"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

                    linhaDados[0] = dr.GetString(dr.GetOrdinal("CODPRODUTO"));
                    linhaDados[1] = dr.GetString(dr.GetOrdinal("NOMEPRODUTO"));
                    linhaDados[2] = dr.GetString(dr.GetOrdinal("UNIDADE"));
                    linhaDados[3] = dr.GetString(dr.GetOrdinal("QUANTIDADE"));


                    Grid.Rows.Add(linhaDados);
                }
            }

            dr.Close();
            dr.Dispose();
        }
        public void AdicionarDebito()
        {
            Balanco balanco = new Balanco();

            balanco.Add(new Debito(650.25));
            Assert.Equals(349.75, balanco.Saldo);
        }
예제 #4
0
 public FormsForm1()
 {
     //como pego a lista ja instaciada na outra tela
     InitializeComponent();
     balanco = new Balanco();
     txt_ListaBalanco.Text = Convert.ToString(balanco.CalcularSaldo());
 }
예제 #5
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,data,valordebito,valorcredito,saldo")] Balanco balanco)
        {
            if (id != balanco.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(balanco);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!BalancoExists(balanco.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(balanco));
        }
        public void AdicionarDebitoCredito()
        {
            Balanco balanco = new Balanco();

            balanco.Add(new Debito(200.00));
            balanco.Add(new Credito(550.25));
            Assert.Equals(700.00, balanco.Saldo);
        }
예제 #7
0
 public FormsBalanco()
 {
     //como pego a lista ja instaciada na outra tela
     InitializeComponent();
     balanco   = new Balanco();
     categoria = new Categoria();
     banco     = new Banco <Categoria>();
     banco2    = new Banco <IOperacao>();
     ListarValores();
     CarregaCombCategoria();
 }
 public FormsBalanco()
 {
     //como pego a lista ja instaciada na outra tela
     InitializeComponent();
     balanco               = new Balanco();
     categoria             = new Categoria();
     banco                 = new Banco <CategoriaModel>();
     banco2                = new Banco <IOperacao>();
     txt_ListaBalanco.Text = Convert.ToString(balanco.CalcularSaldo());
     CarregaCombCategoria();
 }
        public Tuple <Balanco, List <Balanco> > ObterBalancoPorPerido(DateTime dataInicial, DateTime dataFinal)
        {
            IEnumerable <LancamentoFinanceiro> _lancamentos = _lancamentoFinanceiroRepository.Buscar(c => c.DataHora.Date >= dataInicial.Date &&
                                                                                                     c.DataHora.Date <= dataFinal.Date && c.Status == EStatus.CONCILIADO);

            List <Balanco> _balancos = new List <Balanco>();

            Balanco _balanc = null;

            foreach (var lanc in _lancamentos)
            {
                if (_balanc == null)
                {
                    _balanc = new Balanco
                    {
                        Data = lanc.DataHora
                    };
                }
                else if (!_balanc.Data.Date.Equals(lanc.DataHora.Date))
                {
                    _balancos.Add(_balanc);
                    _balanc = null;
                    _balanc = new Balanco
                    {
                        Data = lanc.DataHora
                    };
                }

                if (lanc.Tipo == ETipo.Credito)
                {
                    _balanc.ValorTotalCredito += lanc.Valor;
                    _balanc.ValorTotalSaldo   += lanc.Valor;
                }
                else
                {
                    _balanc.ValorTotalDebito += lanc.Valor;
                    _balanc.ValorTotalSaldo  -= lanc.Valor;
                }
            }

            if (_balanc != null)
            {
                _balancos.Add(_balanc);
            }

            _balanco.Data = DateTime.Today;
            _balanco.ValorTotalCredito = _balancos.Sum(c => c.ValorTotalCredito);
            _balanco.ValorTotalDebito  = _balancos.Sum(c => c.ValorTotalDebito);
            _balanco.ValorTotalSaldo   = _balancos.Sum(c => c.ValorTotalSaldo);

            return(new Tuple <Balanco, List <Balanco> >(_balanco, _balancos));
        }
예제 #10
0
        public async Task <IActionResult> Create([Bind("Id,data,valordebito,valorcredito,saldo")] Balanco balanco)
        {
            if (ModelState.IsValid)
            {
                balanco.saldo = balanco.valorcredito - balanco.valordebito;
                balanco.data  = DateTime.Now;
                _context.Add(balanco);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(balanco));
        }
예제 #11
0
        /*
         * A intenção do padrão Observe é definir uma dependência um-para-muitos entre objetos de modo que quando um objeto muda de estado, todos os seus dependentes
         * são notificados e atualizados automaticamente. ".
         *
         * Participantes:
         * Subject - conhece os seus observadores. Um número qualquer de objetos Observer pode observar um Subject;
         * Observer - define uma interface de atualização para objetos que deveriam ser notificados sobre mudanças em um Subject;
         * ConcreteSubject - armazena estados de interesse para obetos ConcreteObserver; envia uma notificação para os seus observadores quando seu estado muda;
         * ConcreteObserver - mantém uma refêrencia para um objeto ConcreteSubject; armazena estados que deveriam permanecer consistentes com os do Subject. implementa
         * a interface de atualização de Observer, para mater seus estados consistente com o do Subject;
         *
         */

        public void Observer()
        {
            // Concrete Subject
            Balanco balanco = new Balanco();
            // Concrete Observer
            Venda venda = new Venda(balanco);

            // adicionar os observadores
            balanco.AdionaObservador(venda);
            //processo...
            balanco.Iniciar();
            //balanco.Finalizar();
            // pode vender?
            venda.Iniciar();

            Response.Write(WriterMessages.GetAllMessages());
        }
예제 #12
0
        public async Task <List <Balanco> > GerarBalancoDiario(List <LancamentoFinanceiro> lancamentosFinanceiros)
        {
            lancamentosFinanceiros = lancamentosFinanceiros.OrderBy(l => l.DataHoraLancamento).ToList();

            var balancoDiario = new List <Balanco>();
            var saldoAnterior = 0M;

            foreach (var lancamento in lancamentosFinanceiros)
            {
                var balancoDia = new Balanco();

                if (lancamento.Tipo == (int)TipoLancamento.Debito)
                {
                    balancoDia.ValorTotalDebito = lancamento.Valor;
                    balancoDia.ValorSaldo      -= lancamento.Valor;
                }
                else if (lancamento.Tipo == (int)TipoLancamento.Credito)
                {
                    balancoDia.ValorTotalCredito = lancamento.Valor;
                    balancoDia.ValorSaldo       += lancamento.Valor;
                }

                saldoAnterior        += balancoDia.ValorSaldo;
                balancoDia.FluxoCaixa = saldoAnterior;

                balancoDia.DataBalanco = lancamento.DataHoraLancamento;

                balancoDiario.Add(balancoDia);
            }

            var balancoSoma = new Balanco
            {
                DataBalanco       = DateTime.MinValue,
                ValorSaldo        = balancoDiario.Sum(v => v.ValorSaldo),
                ValorTotalCredito = balancoDiario.Sum(v => v.ValorTotalCredito),
                ValorTotalDebito  = balancoDiario.Sum(v => v.ValorTotalDebito),
                FluxoCaixa        = saldoAnterior,
                Somatoria         = true,
            };

            balancoDiario.Add(balancoSoma);

            return(await Task.FromResult(balancoDiario));
        }
예제 #13
0
        private void Grid_CellDoubleClick1(object sender, DataGridViewCellEventArgs e)
        {
            var codempresa      = Usuario.Codempresa.ToString();
            var databalanco     = txtdtBalanco.Text.Trim();
            var coddepartamento = Usuario.Coddepartamento.ToString();

            DialogResult result = MessageBox.Show("Deseja alterar este item da Balanço ?", "Atenção !!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);

            if (result == DialogResult.Yes)
            {
                var RowsIndex = Grid.CurrentRow.Index;

                try
                {
                    txtCodProduto.Text  = Grid.Rows[RowsIndex].Cells[0].Value.ToString();
                    txtNomeProduto.Text = Grid.Rows[RowsIndex].Cells[1].Value.ToString();
                    txtQuantidade.Text  = Grid.Rows[RowsIndex].Cells[3].Value.ToString();

                    var b = new Balanco();

                    var resp = b.Delete(int.Parse(codempresa), int.Parse(coddepartamento), databalanco, int.Parse(txtCodProduto.Text));
                }
                catch
                {
                }


                if (Grid.CurrentRow == null)
                {
                    return;
                }
                Grid.Rows.RemoveAt(Grid.CurrentRow.Index);
            }
            else if (result == DialogResult.No)
            {
                //code for No

                txtCodProduto.Focus();
            }
        }
예제 #14
0
        private void Relatorio()
        {
            var cria = new Classes.Funcoes.CriaArquivo();

            cria.Cria_Balanco();

            var emp = Usuario.Codempresa;
            var dep = Usuario.Coddepartamento;



            // BUSCA E GRAVA NO REPOSITORIO
            var dr = Balanco.SelectRel(int.Parse(emp), int.Parse(dep), txtdtBalanco.Text.Trim());

            if (dr.HasRows)
            {
                while (dr.Read())
                {
                    var codempresa       = dr.GetInt32(dr.GetOrdinal("CODEMPRESA"));
                    var coddepartamento  = dr.GetInt32(dr.GetOrdinal("CODDEPARTAMENTO"));
                    var nomedepartamento = dr.GetString(dr.GetOrdinal("NOMEDEPARTAMENTO"));
                    var databalanco      = dr.GetString(dr.GetOrdinal("DATABALANCO"));
                    var codproduto       = dr.GetInt32(dr.GetOrdinal("CODPRODUTO"));
                    var nomeproduto      = dr.GetString(dr.GetOrdinal("NOMEPRODUTO"));
                    var quantidade       = dr.GetString(dr.GetOrdinal("QUANTIDADE"));

                    var respinclusao  = "";
                    var datainclusao  = "";
                    var respalteracao = "";
                    var dataalteracao = "";

                    try
                    {
                        var m = new Balanco();

                        m.InsertAccess(codempresa, coddepartamento, nomedepartamento, databalanco,
                                       codproduto, nomeproduto, quantidade);
                    }
                    catch (Exception erro)
                    {
                    }
                }
            }

            dr.Close();
            dr.Dispose();

            //CHAMA A TELA DE RELATORIO
            bool open = false;

            foreach (Form form in this.MdiChildren)
            {
                if (form is RelBalanco)
                {
                    form.BringToFront();
                    open = true;
                }
            }
            if (!open)
            {
                Form tela = new RelBalanco();
                tela.ShowDialog();
            }
        }
 public BalancoService(ILancamentoFinanceiroRepository lancamentoFinanceiroRepository, Balanco balanco)
 {
     _lancamentoFinanceiroRepository = lancamentoFinanceiroRepository;
     _balanco = balanco;
 }
예제 #16
0
        private void Gravar1()
        {
            var hoje       = DateTime.Now;
            var codempresa = Usuario.Codempresa.ToString();

            var databalanco = txtdtBalanco.Text.Trim();


            var coddepartamento = Usuario.Coddepartamento.ToString();


            var status = "ABERTO";

            var respinclusao  = Usuario.Nomeusuario.ToString();
            var datainclusao  = hoje.ToString();
            var respalteracao = Usuario.Nomeusuario.ToString();
            var dataalteracao = hoje.ToString();
            var excluido      = "N";

            try
            {
                //int total = Grid.Rows.Count;
                int i;
                var Produto  = "";
                var nome     = "";
                var qt       = "";
                var Lote     = "0";
                var Validade = "";

                //DialogResult result = MessageBox.Show("Deseja Incluir este item ?", "Atenção !!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                //if (result == DialogResult.Yes)
                //{

                //var Linhas = Grid.Rows.Count;

                //foreach (DataGridViewRow linha1 in Grid.Rows)
                //{

                Produto = txtCodProduto.Text;
                nome    = txtNomeProduto.Text;
                qt      = txtQuantidade.Text;

                var item = new Balanco(int.Parse(codempresa), int.Parse(coddepartamento), databalanco, int.Parse(Produto), Lote, Validade, int.Parse(qt), respinclusao.ToString(), datainclusao, respalteracao.ToString(), dataalteracao);

                var dr_i = Balanco.Select(int.Parse(codempresa), int.Parse(coddepartamento), databalanco, int.Parse(Produto));
                if (dr_i.HasRows)
                {
                    item.Update();
                }
                else
                {
                    item.Insert();
                }

                dr_i.Dispose();
                dr_i.Close();

                //}

                //}
                //MessageBox.Show("Registro Gravado com Sucesso !");
            }
            catch (Exception erro)
            {
                MessageBox.Show("Erro na Persistência");
            }

            //LimpaTela();
        }
        public void ValorSaldoInicial()
        {
            Balanco balanco = new Balanco();

            Assert.Equals(0.0, balanco.Saldo);
        }