Пример #1
0
        //Load do formulario carrega todos os bancos no  cmbNumeroBanco caso
        //não tenha banco exibe formulario cadastro de banco frmCadBanco
        public void loadComboBanco()
        {
            //Realiza a busca no banco
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                var query = from conv in objGerenciador.Banco
                            select conv;
                var ListaBanco = query.ToList();

                //Verifica se tem retorno ( existe banco cadastrado )
                if (ListaBanco.Count == 0)
                {
                    //Se não tiver retorno oferece a oportunidade de cadastrar o banco
                    if (MessageBox.Show("Nenhum banco está cadastrado" + Environment.NewLine +
                                     "Gostaria de cadastrar um banco agora?", "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Question,
                                     MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.Yes)
                    {
                        frmCadBanco cadBanco = new frmCadBanco();
                        cadBanco.ShowDialog();
                        loadComboBanco();
                    }
                }

                else
                {
                    //Se tiver o banco preenche combobox
                    cmbNumeroBanco.DataSource = ListaBanco;
                    cmbNumeroBanco.DisplayMember = "numero";
                    cmbNumeroBanco.ValueMember = "numero";

                }
            }
        }
Пример #2
0
        //Atualiza grid
        public void atualizaGrid()
        {
            try
            {
                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    var qEmail = from conv in objGerenciador.email
                                 select new
                                 {
                                     conv.email1,
                                     conv.smtp,
                                     conv.porta

                                 };

                    var ListaEmail = qEmail.ToList();

                    dtgEmail.AutoGenerateColumns = false;
                    dtgEmail.DataSource = ListaEmail;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro:" + ex.Message);

            }
        }
Пример #3
0
        //Excluir o titulo selecionado
        private void btnExcluirEmail_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Deseja mesmo excluir a  Conta selecionado?", "Aviso", MessageBoxButtons.YesNo,
                MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == System.Windows.Forms.DialogResult.Yes)
            {
                try
                {

                    foreach (DataGridViewRow linha in dtgEmail.SelectedRows)
                    {
                        string idApagar = Convert.ToString(linha.Cells[0].Value);

                        using (var objGerenciador = new dbGerenciadorEntities())
                        {
                            var mensagem = (from deleteEmail in objGerenciador.email
                                            where (deleteEmail.email1 == idApagar)
                                            select deleteEmail).First();

                            objGerenciador.DeleteObject(mensagem);
                            objGerenciador.SaveChanges();

                            MessageBox.Show("Conta excluida!", "Aviso");
                            atualizaGrid();
                        }

                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);

                }
            }
        }
Пример #4
0
        //Carrega o combo com as contas de e-mail de destino
        public void carregaConta()
        {
            using (var objGerenciador = new dbGerenciadorEntities())
            {

                var qEmail = from rEmail in objGerenciador.email
                             select rEmail;
                var ListaEmail = qEmail.ToList();

                //Verifica se tem retorno
                if (ListaEmail.Count == 0)
                {
                    //Se não tiver retorno abre o formulario de cadastro
                    if (MessageBox.Show("Nenhum email está cadastrada" + Environment.NewLine +
                                      "Gostaria de cadastrar agora?", "Aviso", MessageBoxButtons.YesNo,
                                      MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.Yes)
                    {
                        frmCadEmail cadEmail = new frmCadEmail();
                        cadEmail.ShowDialog();
                        carregaConta();
                    }
                }

                else
                {
                    //Se tiver o banco preenche combobox

                    cmbDestEmail.DataSource = ListaEmail;
                    cmbDestEmail.DisplayMember = "email";
                    cmbDestEmail.ValueMember = "email1";

                }
            }
        }
Пример #5
0
        //Obtem as estimativas de saldo diponivel considerando os titulos
        public void calculaSaldo()
        {
            decimal somaSaldo = 0;
            decimal somaTituloMes = 0;
            decimal somaTituloAno = 0;

            //Percorre o saldo das contas no datagridview
            foreach (DataGridViewRow linha in dtgSaldoContas.Rows)
            {

                somaSaldo = somaSaldo + Convert.ToDecimal(linha.Cells[4].Value);

            }

            //Obtem o valor dos titulos de um mês
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                DateTime umMes = DateTime.Now.AddMonths(1).Date;

                var qTituloMes = from tituloMes in objGerenciador.Titulo
                                 where (tituloMes.vencimento <= umMes && tituloMes.baixado == null)
                                 select tituloMes.valor;
                var ListaTituloMes = qTituloMes.ToList();

                if (ListaTituloMes.Count != 0)
                {
                    foreach (Decimal tit in ListaTituloMes)
                    {
                        somaTituloMes += tit;

                    }
                }
            }

            //Obtem o valor dos titulos de um ano
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                DateTime umAno = DateTime.Now.AddYears(1).Date;

                var qTituloAno = from tituloAno in objGerenciador.Titulo
                                 where (tituloAno.vencimento <= umAno && tituloAno.baixado == null)
                                 select tituloAno.valor;
                var ListaTituloAno = qTituloAno.ToList();

                if (ListaTituloAno.Count != 0)
                {

                    foreach (Decimal tit in ListaTituloAno)
                    {
                        somaTituloAno += tit;

                    }

                }
            }

            lblProximo.Text = string.Format("{0:C}", (somaSaldo + somaTituloMes));
            lblAno.Text = string.Format("{0:C}", (somaSaldo + somaTituloAno));
        }
Пример #6
0
        //Confirma logitbm
        private void btnConfirmaLogin_Click(object sender, EventArgs e)
        {
            try
            {
                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    var qUsuario = from conv in objGerenciador.usuario
                                   where conv.nome == txtUsuario.Text
                                   select new
                                   {

                                       conv.nome,
                                       conv.senha

                                   };

                    var ListaFinal = qUsuario.ToList();

                    if (ListaFinal.Count == 0)
                    {
                        MessageBox.Show("Usuário ou senha invalidos", "Aviso");

                    }

                    else
                    {

                        //Verificar a senha em etapas com varias condições
                        ggRt04 val = new ggRt04();

                        if (val.somaSaldo(txtSenha.Text) == ListaFinal[0].senha)
                        {

                            frmPrincipal inicia = new frmPrincipal();
                            this.Hide();
                            inicia.ShowDialog();
                            Application.Exit();

                        }

                        else
                        {

                            MessageBox.Show("Usuário ou senha invalidos", "Aviso");

                        }

                    }

                }
            }
            catch (Exception ex)
            {

                MessageBox.Show("Erro:" + ex.Message);
            }
        }
Пример #7
0
        //Excluir o usuario
        private void btnExcluir_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Deseja mesmo excluir o usuario selecionado?", "Aviso", MessageBoxButtons.YesNo,
               MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == System.Windows.Forms.DialogResult.Yes)
            {
                try
                {

                    //Verifica se temos mais de uma conta (somente uma não exclui)
                    using (var objGerenciador1 = new dbGerenciadorEntities())
                    {

                        var query = from conv in objGerenciador1.usuario
                                    select conv;
                        var ListaFinal = query.ToList();

                        if (ListaFinal.Count > 1)
                        {
                            foreach (DataGridViewRow linha in dtgUsuario.SelectedRows)
                            {
                                string idusuario = Convert.ToString(linha.Cells[0].Value);

                                using (var objGerenciador = new dbGerenciadorEntities())
                                {
                                    var mensagem = (from deleteUsuario in objGerenciador.usuario
                                                    where (deleteUsuario.nome == idusuario)
                                                    select deleteUsuario).First();

                                    objGerenciador.DeleteObject(mensagem);
                                    objGerenciador.SaveChanges();

                                    dtgUsuario.AutoGenerateColumns = false;
                                    dtgUsuario.DataSource = carregaUser();
                                    MessageBox.Show("Usuário excluido!", "Aviso");

                                }

                            }
                        }
                        else
                        {
                            MessageBox.Show("Só existe uma conta de usuário cadastrada, para exclusão precisamos de no minimo 2 contas", "Aviso");

                        }
                    }

                }
                catch (Exception ex)
                {
                    MessageBox.Show("Erro: " + ex.Message, "Aviso");

                }
            }
        }
Пример #8
0
        //Função que carrega todos os titulos
        public object carregaTitulos()
        {
            try
            {
                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    DateTime hoje = DateTime.Now.Date;
                    var query = from conv in objGerenciador.Titulo
                                join convRel in objGerenciador.Relacao on
                                conv.relacao equals convRel.id
                                orderby conv.vencimento //descending
                                select new
                                {
                                    conv.id,
                                    conv.vencimento,
                                    conv.numero,
                                    relacao = (convRel.Nome),
                                    conv.natureza,
                                    conv.parcela,
                                    conv.valor,
                                    conv.descricao,
                                    conv.baixado,
                                    conv.dta_baixa,
                                    conv.conta_baixa,
                                    conv.codigoBarras

                                };

                    var ListaFinal = query.ToList();

                    if (ListaFinal.Count != 0)
                    {

                        return ListaFinal;
                    }

                    else
                    {
                        List<Titulo> lstVazia = new List<Titulo>();
                        return lstVazia;
                    }

                }
            }
            catch (Exception ex)
            {
                List<Titulo> lstVazia = new List<Titulo>();
                MessageBox.Show("Erro: " + ex.Message);
                return lstVazia;

            }
        }
Пример #9
0
        //Excluir natureza
        private void btnExcluir_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Deseja mesmo excluir o natureza selecionada?", "Aviso", MessageBoxButtons.YesNo,
               MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == System.Windows.Forms.DialogResult.Yes)
            {
                try
                {

                    //Verifica se temos mais de uma conta (somente uma não exclui)
                    using (var objGerenciador1 = new dbGerenciadorEntities())
                    {

                        var query = from conv in objGerenciador1.Natureza
                                    select conv;
                        var ListaFinal = query.ToList();

                        if (ListaFinal.Count > 0)
                        {

                            foreach (DataGridViewRow linha in dtgNatureza.SelectedRows)
                            {
                                string idNat = Convert.ToString(linha.Cells[0].Value);

                                using (var objGerenciador = new dbGerenciadorEntities())
                                {
                                    var mensagem = (from deleteNat in objGerenciador.Natureza
                                                    where (deleteNat.nome == idNat)
                                                    select deleteNat).First();

                                    objGerenciador.DeleteObject(mensagem);
                                    objGerenciador.SaveChanges();

                                    dtgNatureza.AutoGenerateColumns = false;
                                    dtgNatureza.DataSource = carregaNat();
                                    MessageBox.Show("Natureza excluida!", "Aviso");

                                }

                            }
                        }
                    }
                }
                catch (Exception ex)
                {

                    MessageBox.Show("Erro: " + ex.Message);
                }
            }
        }
Пример #10
0
        //Verifica primeira inicialização
        public bool valExisteUsuario()
        {
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                var query = from conv in objGerenciador.usuario
                            select conv;
                var ListaFinal = query.ToList();

                if (ListaFinal.Count == 0)
                {
                    return false;

                }
            }
            return true;
        }
Пример #11
0
        //Confirmar gravação no banco
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            //Chamar a função de validação dos campos
            Validar valida = new Validar();
            if (valida.valCampoVazio(this.Controls) == true)
            {
                if (_altera == false)
                {
                    //Incluir
                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objBanco = new Gerenciador.Data.Banco();

                    objBanco.numero = Convert.ToInt32(txtNumeroBanco.Text);
                    objBanco.descricao = txtNomeBanco.Text;
                    objGerenciador.AddToBanco(objBanco);
                    objGerenciador.SaveChanges();

                    MessageBox.Show("Banco Cadastrado com sucesso!", "Cadastro", MessageBoxButtons.OK,
                                     MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);
                    this.Close();
                }

                    //Alterar
                else
                {
                    using (var objGerenciador = new dbGerenciadorEntities())
                    {

                        var objBanco = new Gerenciador.Data.Banco();
                        objBanco = (from conv in objGerenciador.Banco
                                    where conv.numero == _numero
                                    select conv).First();

                        objBanco.descricao = txtNomeBanco.Text ;
                        objBanco.numero = Convert.ToInt32(txtNumeroBanco.Text);
                        objGerenciador.SaveChanges();

                        MessageBox.Show("Banco Alterado com sucesso!", "Cadastro", MessageBoxButtons.OK,
                                     MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);
                        this.Close();
                    }

                }

            }
        }
Пример #12
0
        //Devolve true ou false verificando se existe conta cadastrada
        public bool temConta()
        {
            using (var objGerenciador = new dbGerenciadorEntities())
            {

                var qContas = from contas in objGerenciador.Conta
                              select contas;
                var ListaFinal = qContas.ToList();

                if (ListaFinal.Count == 0)
                {
                    return false;
                }
            }

            return true;
        }
Пример #13
0
        //Confirma e grava agência no banco
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            //Chamar a função de validação dos campos (validação centralizada em uma classe)
            Validar valida = new Validar();

            if (valida.valCampoVazio(this.Controls) == true)
            {
                //Incluir
                if (_altera == false)
                {
                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objAgencia = new Gerenciador.Data.Agencia();

                    objAgencia.numero    = Convert.ToInt32(txtNumeroAgencia.Text);
                    objAgencia.banco     = Convert.ToInt32(cmbBancoCadAgencia.Text);
                    objAgencia.descricao = txtDescAgencia.Text;

                    objGerenciador.AddToAgencia(objAgencia);
                    objGerenciador.SaveChanges();

                    MessageBox.Show("Agência Cadastrada com sucesso!", "Cadastro", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                    MessageBoxDefaultButton.Button2);
                    this.Close();
                }
                //ALTERAR
                else
                {
                    using (var objGerenciador = new dbGerenciadorEntities())
                    {
                        var objAgencia = new Gerenciador.Data.Agencia();
                        objAgencia = (from conv in objGerenciador.Agencia
                                      where conv.numero == _numeroAG
                                      select conv).First();

                        objAgencia.numero    = Convert.ToInt32(txtNumeroAgencia.Text);
                        objAgencia.banco     = Convert.ToInt32(cmbBancoCadAgencia.Text);
                        objAgencia.descricao = txtDescAgencia.Text;
                        objGerenciador.SaveChanges();

                        MessageBox.Show("Agência alterada com sucesso!", "Cadastro", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                        MessageBoxDefaultButton.Button2);
                        this.Close();
                    }
                }
            }
        }
Пример #14
0
        //Confirmar gravação no banco
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            //Chamar a função de validação dos campos
            Validar valida = new Validar();

            if (valida.valCampoVazio(this.Controls) == true)
            {
                if (_altera == false)
                {
                    //Incluir
                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objBanco = new Gerenciador.Data.Banco();

                    objBanco.numero    = Convert.ToInt32(txtNumeroBanco.Text);
                    objBanco.descricao = txtNomeBanco.Text;
                    objGerenciador.AddToBanco(objBanco);
                    objGerenciador.SaveChanges();

                    MessageBox.Show("Banco Cadastrado com sucesso!", "Cadastro", MessageBoxButtons.OK,
                                    MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);
                    this.Close();
                }

                //Alterar
                else
                {
                    using (var objGerenciador = new dbGerenciadorEntities())
                    {
                        var objBanco = new Gerenciador.Data.Banco();
                        objBanco = (from conv in objGerenciador.Banco
                                    where conv.numero == _numero
                                    select conv).First();

                        objBanco.descricao = txtNomeBanco.Text;
                        objBanco.numero    = Convert.ToInt32(txtNumeroBanco.Text);
                        objGerenciador.SaveChanges();

                        MessageBox.Show("Banco Alterado com sucesso!", "Cadastro", MessageBoxButtons.OK,
                                        MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);
                        this.Close();
                    }
                }
            }
        }
Пример #15
0
        //Confirma cadastro da relação
        private void btnOkRelacao_Click(object sender, EventArgs e)
        {
            //Validar campos preechidos
            //Função de validação
            Validar valida = new Validar();
            if (valida.valCampoVazio(this.Controls) == true)
            {

                //Verificar se a relação já existe
                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    var query = from conv in objGerenciador.Relacao
                                where (conv.Nome == txtNomeRelacao.Text && conv.Tipo == cmbTipoRelacao.Text)
                                select conv;
                    var ListaFinal = query.ToList();

                    //Se não  tiver cadastrada realiza o cadastro
                    if (ListaFinal.Count == 0)
                    {

                        Gerenciador.Data.dbGerenciadorEntities objGerenciador1 = new Gerenciador.Data.dbGerenciadorEntities();
                        var objRelacao = new Gerenciador.Data.Relacao();
                        objRelacao.Nome = txtNomeRelacao.Text;
                        objRelacao.Tipo = cmbTipoRelacao.Text;
                        objGerenciador1.AddToRelacao(objRelacao);
                        objGerenciador1.SaveChanges();
                        MessageBox.Show("Relação cadastrada com sucesso", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                         MessageBoxDefaultButton.Button1);
                        txtNomeRelacao.Text = "";
                        txtNomeRelacao.Focus();
                    }
                    else
                    {
                        MessageBox.Show("Relação já cadastrada", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning,
                                         MessageBoxDefaultButton.Button1);
                        txtNomeRelacao.Text = "";

                    }

                }

            }
        }
Пример #16
0
        //Confirma cadastro da relação
        private void btnOkRelacao_Click(object sender, EventArgs e)
        {
            //Validar campos preechidos
            //Função de validação
            Validar valida = new Validar();

            if (valida.valCampoVazio(this.Controls) == true)
            {
                //Verificar se a relação já existe
                using (var objGerenciador = new dbGerenciadorEntities())
                {
                    var query = from conv in objGerenciador.Relacao
                                where (conv.Nome == txtNomeRelacao.Text && conv.Tipo == cmbTipoRelacao.Text)
                                select conv;
                    var ListaFinal = query.ToList();

                    //Se não  tiver cadastrada realiza o cadastro
                    if (ListaFinal.Count == 0)
                    {
                        Gerenciador.Data.dbGerenciadorEntities objGerenciador1 = new Gerenciador.Data.dbGerenciadorEntities();
                        var objRelacao = new Gerenciador.Data.Relacao();
                        objRelacao.Nome = txtNomeRelacao.Text;
                        objRelacao.Tipo = cmbTipoRelacao.Text;
                        objGerenciador1.AddToRelacao(objRelacao);
                        objGerenciador1.SaveChanges();
                        MessageBox.Show("Relação cadastrada com sucesso", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                        MessageBoxDefaultButton.Button1);
                        txtNomeRelacao.Text = "";
                        txtNomeRelacao.Focus();
                    }
                    else
                    {
                        MessageBox.Show("Relação já cadastrada", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Warning,
                                        MessageBoxDefaultButton.Button1);
                        txtNomeRelacao.Text = "";
                    }
                }
            }
        }
Пример #17
0
        //Carrega o grid
        List<Natureza> carregaNat()
        {
            try
            {
                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    var query = from conv in objGerenciador.Natureza
                                select conv;
                    var ListaFinal = query.ToList();

                    return ListaFinal;
                }

            }

            catch (Exception ex)
            {
                List<Natureza> padrao = new List<Natureza>();
                MessageBox.Show("Erro: " + ex.Message);
                return padrao;
            }
        }
Пример #18
0
        //Devolve uma lista com os bancos cadastrados
        public List<Banco> gridBanco()
        {
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                var qBanco = from banco in objGerenciador.Banco
                             select banco;

                var ListaBanco = qBanco.ToList();

                //Verifica se houve retorno
                if (ListaBanco.Count == 0)
                {
                    //Não tem banco devolve lista em branco
                    List<Banco> listaVazia = new List<Banco>();
                    return listaVazia;
                }

                else
                {
                    return ListaBanco;
                }
            }
        }
Пример #19
0
        //Carrega combo das agências baseado no banco se não existe exibe o frmCadAgencia
        public void loadComboAgencia()
        {
            //Realiza a busca no banco
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                int nBanco = Convert.ToInt32(cmbNumeroBanco.SelectedValue);

                var query = from conv in objGerenciador.Agencia
                            where conv.banco == nBanco
                            select conv;
                var ListaAgencia = query.ToList();

                //Verifica se tem retorno
                if (ListaAgencia.Count == 0)
                {
                    //Se não tiver retorno abre o formulario de cadastro

                    if (MessageBox.Show("Nenhuma Agência está cadastrada" + Environment.NewLine + " Gostaria de cadastrar uma agência agora?", "Aviso",
                                   MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == System.Windows.Forms.DialogResult.Yes)
                    {
                        frmCadAgencia cadAgencia = new frmCadAgencia(cmbNumeroBanco.SelectedValue.ToString());
                        cadAgencia.ShowDialog();
                        loadComboAgencia();
                    }
                }

                else
                {
                    //Se tiver o banco preenche combobox

                    cmbAgenciaNumero.DataSource = ListaAgencia;
                    cmbAgenciaNumero.DisplayMember = "numero";
                    cmbAgenciaNumero.ValueMember = "numero";

                }
            }
        }
Пример #20
0
        //Confirmar geral (GRAVAR A CONTA)
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            //Chama validação campos
            Validar valida = new Validar();

            if (valida.valCampoVazio(this.Controls) == true)
            {
                //Incluir
                Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                var objConta = new Gerenciador.Data.Conta();

                objConta.numero       = Convert.ToInt32(txtNumeroConta.Text);
                objConta.agencia      = Convert.ToInt32(cmbAgenciaNumero.SelectedValue);
                objConta.descricao    = txtDescricaoConta.Text;
                objConta.saldo        = Convert.ToDecimal(txtSaldoConta.Text);
                objConta.data_criacao = DateTime.Now.Date;
                objGerenciador.AddToConta(objConta);
                objGerenciador.SaveChanges();

                MessageBox.Show("Conta Cadastrado com sucesso!", "Cadastro", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                MessageBoxDefaultButton.Button2);
                this.Close();
            }
        }
Пример #21
0
        //Incluir Naturezas
        private void btnOkNatureza_Click(object sender, EventArgs e)
        {
            //Validar campos preechidos
            //Função de validação
            Validar valida = new Validar();

            if (valida.valCampoVazio(this.Controls) == true)
            {
                Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                var objNatureza = new Gerenciador.Data.Natureza();

                objNatureza.nome      = txtNomeNatureza.Text;
                objNatureza.descricao = txtDescNatureza.Text;
                objGerenciador.AddToNatureza(objNatureza);
                objGerenciador.SaveChanges();

                MessageBox.Show("Natureza cadastrada com sucesso!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                MessageBoxDefaultButton.Button2);

                txtDescNatureza.Text = "";
                txtNomeNatureza.Text = "";
                txtNomeNatureza.Focus();
            }
        }
Пример #22
0
        //Botão confirma gravação do e-mail
        private void btnOkEmail_Click(object sender, EventArgs e)
        {
            //Chamar a função de validação dos campos
            Validar valida = new Validar();

            //Valida o campos vazios o e-mail correto e a redigitação da senha
            if (valida.valCampoVazio(this.Controls) == true && ValidaEnderecoEmail(txtEmail.Text) == true && ValidaSenha() == true)
            {
                try
                {
                    ggRt04 pass = new ggRt04();


                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objEmail = new Gerenciador.Data.email();

                    objEmail.email1     = txtEmail.Text;
                    objEmail.smtp       = txtSmtp.Text;
                    objEmail.porta      = Convert.ToInt32(txtPorta.Text);
                    objEmail.senha      = pass.somaSaldo(txtSenha.Text);
                    objEmail.observacao = txtObs.Text;

                    objGerenciador.AddToemail(objEmail);
                    objGerenciador.SaveChanges();

                    MessageBox.Show("Email cadastrado com sucesso!", "Aviso", MessageBoxButtons.OK,
                                    MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                    this.Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Erro: " + ex.Message);
                }
            }
        }
Пример #23
0
        //Incluir Naturezas
        private void btnOkNatureza_Click(object sender, EventArgs e)
        {
            //Validar campos preechidos
            //Função de validação
            Validar valida = new Validar();
            if (valida.valCampoVazio(this.Controls) == true)
            {

                Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                var objNatureza = new Gerenciador.Data.Natureza();

                objNatureza.nome = txtNomeNatureza.Text;
                objNatureza.descricao = txtDescNatureza.Text;
                objGerenciador.AddToNatureza(objNatureza);
                objGerenciador.SaveChanges();

                MessageBox.Show("Natureza cadastrada com sucesso!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                MessageBoxDefaultButton.Button2);

                txtDescNatureza.Text = "";
                txtNomeNatureza.Text = "";
                txtNomeNatureza.Focus();
            }
        }
Пример #24
0
        //Devolve uma lista com as agências cadastradas
        public List<Agencia> gridAgencia()
        {
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                var qAgencia = from pAgencia in objGerenciador.Agencia
                               select pAgencia;

                var ListaAgencia = qAgencia.ToList();

                //Verifica se houve retorno
                if (ListaAgencia.Count == 0)
                {
                    //Não tem banco devolve lista em branco
                    List<Agencia> listaVazia = new List<Agencia>();
                    return listaVazia;
                }

                else
                {
                    return ListaAgencia;
                }

            }
        }
Пример #25
0
        //Função que retorna os saldos das contas
        public List<object> saldoContas()
        {
            //Lista guarda as contas e os saldos ela que será retornada
            List<object> saldoContas = new List<object>();

            using (var objGerenciador = new dbGerenciadorEntities())
            {
                //Selecionar todas as contas
                var contas = from conta in objGerenciador.Conta
                             select conta;
                var ListaContas = contas.ToList();

                //Verifica se retornou alguma conta
                if (ListaContas.Count != 0)
                {

                    //Percorre cada conta
                    foreach (Conta loopConta in ListaContas)
                    {

                        //Obtem numero do banco

                        //Variavel que obtem o numero do banco
                        int bancoNome;

                        using (var objNumeroBanco = new dbGerenciadorEntities())
                        {
                            var queryNomeBanco = from nomeBanco in objNumeroBanco.Banco
                                                 join agencia in objNumeroBanco.Agencia on
                                                 nomeBanco.numero equals agencia.banco
                                                 where (agencia.numero == loopConta.agencia)
                                                 select nomeBanco.numero;

                            var listaNome = queryNomeBanco.ToList();
                            bancoNome = listaNome[0];

                        }

                        //Verifica se a conta tem movimento
                        using (var objTemMovimento = new dbGerenciadorEntities())
                        {

                            var query = from mov in objTemMovimento.Movimento
                                        where (mov.conta == loopConta.numero)
                                        select mov;
                            var ListaTemMovimento = query.ToList();

                            //Se tiver movimento
                            if (ListaTemMovimento.Count != 0)
                            {

                                //Começo quando tem movimento
                                using (var objSaldoConta = new dbGerenciadorEntities())
                                {
                                    //Obter saldos das contas

                                    var querySaldo = from movimento in objSaldoConta.Movimento
                                                     where (movimento.conta == loopConta.numero)
                                                     group movimento.valor by movimento.conta into tSaldo

                                                     select new
                                                     {
                                                         banco = bancoNome,
                                                         loopConta.agencia,
                                                         loopConta.numero,
                                                         loopConta.descricao,
                                                         saldo = (loopConta.saldo + tSaldo.Sum(movimento => movimento))

                                                     };

                                    saldoContas.Add(querySaldo.First());

                                }//Fim quando tem movimento
                            }
                            //Quando a conta não tem movimento devolve o saldo
                            else
                            {
                                var retornoPadrao = new
                                {
                                    banco = bancoNome,
                                    loopConta.agencia,
                                    loopConta.numero,
                                    loopConta.descricao,
                                    loopConta.saldo

                                };

                                saldoContas.Add(retornoPadrao);

                            }

                        }

                    }
                }//Fim do if que verifica as contas(se existem)
            }//Fim primeiro using

            return saldoContas;
        }
Пример #26
0
        //Botão confirma gravação do e-mail
        private void btnOkEmail_Click(object sender, EventArgs e)
        {
            //Chamar a função de validação dos campos
            Validar valida = new Validar();

            //Valida o campos vazios o e-mail correto e a redigitação da senha
            if (valida.valCampoVazio(this.Controls) == true && ValidaEnderecoEmail(txtEmail.Text) == true && ValidaSenha() == true)
            {

                try
                {
                    ggRt04 pass = new ggRt04();

                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objEmail = new Gerenciador.Data.email();

                    objEmail.email1 = txtEmail.Text;
                    objEmail.smtp = txtSmtp.Text;
                    objEmail.porta = Convert.ToInt32(txtPorta.Text);
                    objEmail.senha = pass.somaSaldo(txtSenha.Text);
                    objEmail.observacao = txtObs.Text;

                    objGerenciador.AddToemail(objEmail);
                    objGerenciador.SaveChanges();

                    MessageBox.Show("Email cadastrado com sucesso!", "Aviso", MessageBoxButtons.OK,
                                     MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                    this.Close();
                }
                catch (Exception ex)
                {

                    MessageBox.Show("Erro: " + ex.Message);

                }

            }
        }
Пример #27
0
        //Função para conciliar
        public void startConc()
        {
            //Varivel que finalizara tudo caso o titulo não seja cadastrado
            bool sair;

            sair = false;

            //Percorrer todos os movimentos
            foreach (OFX_Movimento mov in movimentos)
            {
                //Verificar se a data do movimento maior data atual evitando
                //lançamentos futuros do extrato
                if (mov.Data.Date <= DateTime.Now.Date)
                {
                    //Verifica se já não existe o movimento evitando duplicidade
                    Decimal valor = Convert.ToDecimal(mov.Valor);

                    using (var objVerExiste = new dbGerenciadorEntities())
                    {
                        //Arrumei fazendo estas conversões pois não altera o banco
                        //Na hora de salvar na tabela movimento o parametro transforma em string em int
                        //Agora temos que fazer o contrario
                        int    ID  = Convert.ToInt32(mov.Id);
                        string sID = Convert.ToString(ID);

                        var query = from conv in objVerExiste.Movimento
                                    where (conv.data == mov.Data.Date && conv.valor == valor && conv.numero == sID)
                                    select conv;

                        var ListaFinal = query.ToList();

                        //Não tem duplicidade
                        if (ListaFinal.Count == 0)
                        {
                            using (var objPesqVctoValor = new dbGerenciadorEntities())
                            {
                                //Primeira pesquisa por Vencimento e Valor de titulos que não tenham sido baixados
                                var queryTitulo = from titulo in objPesqVctoValor.Titulo
                                                  join relacao in objPesqVctoValor.Relacao on
                                                  titulo.relacao equals relacao.id
                                                  where (titulo.vencimento == mov.Data.Date && titulo.valor == valor && titulo.baixado == null)
                                                  select new
                                {
                                    titulo.id,
                                    titulo.numero,
                                    relacao.Nome,
                                    titulo.tipo,
                                    titulo.parcela,
                                    titulo.valor,
                                    titulo.vencimento,
                                    titulo.natureza,
                                    titulo.descricao
                                };

                                var ListaTitulos = queryTitulo.ToList();

                                //A primeira pesquisa retornou valor
                                if (ListaTitulos.Count != 0)
                                {
                                    //Exibe o formulario com todos os titulos encontrado possibilitando escolha do titulo para baixa

                                    //Cria uma lista que será passada como ponteiro(ref) ao formulario concilia
                                    //Para que as alterações permanecam apos o fechamento do formulario
                                    frmConcilia.Conciliado passar = new frmConcilia.Conciliado();

                                    //Chama o formulario passando os objects retornados da busca com vencimento e valor, o movimento do OFX
                                    // e a lista de referência que será alterada
                                    frmConcilia formConcilia = new frmConcilia(ListaTitulos, mov, ref passar);
                                    formConcilia.ShowDialog();

                                    //Obtem o numero da conta
                                    string[] split = agConta.Split('/');
                                    //Depois do split realiza a conversão para inteiro
                                    int conta = Convert.ToInt32(split[1]);
                                    //Adiciona o numero da conta a classe conciliado
                                    passar.conta = conta;

                                    //Adiciona a lista de referência a lista de conciliados
                                    lstConciliado.Add(passar);
                                }

                                else
                                {
                                    using (var objPesqValor = new dbGerenciadorEntities())
                                    {
                                        //Se a primeira pesquisa não retornar vamos pesquisar apenas por valor que não tenha
                                        //sida anteriormente baixados

                                        var queryTitulo_val = from titulo in objPesqValor.Titulo
                                                              join relacao in objPesqValor.Relacao on
                                                              titulo.relacao equals relacao.id
                                                              where titulo.valor == valor && titulo.baixado == null
                                                              select new
                                        {
                                            titulo.id,
                                            titulo.numero,
                                            relacao.Nome,
                                            titulo.tipo,
                                            titulo.parcela,
                                            titulo.valor,
                                            titulo.vencimento,
                                            titulo.natureza,
                                            titulo.descricao
                                        };

                                        var ListaTitulos_val = queryTitulo_val.ToList();


                                        //A primeira pesquisa retornou valor
                                        if (ListaTitulos_val.Count != 0)
                                        {
                                            //Exibe o formulario com todos os titulos encontrado possibilitando escolha do titulo para baixa

                                            //Cria uma lista que será passada como ponteiro(ref) ao formulario concilia
                                            //Para que as alterações permanecam apos o fechamento do formulario
                                            frmConcilia.Conciliado passar = new frmConcilia.Conciliado();

                                            //Chama o formulario passando os objects retornados da busca com vencimento e valor, o movimento do OFX
                                            // e a lista de referência que será alterada
                                            frmConcilia formConcilia = new frmConcilia(ListaTitulos_val, mov, ref passar);
                                            formConcilia.ShowDialog();

                                            //Obtem o numero da conta
                                            string[] split = agConta.Split('/');
                                            //Depois do split realiza a conversão para inteiro
                                            int conta = Convert.ToInt32(split[1]);
                                            //Adiciona o numero da conta a classe conciliado
                                            passar.conta = conta;

                                            lstConciliado.Add(passar);
                                        }

                                        //Nenhuma pesquisa retornou agora precisamos cadastrar o titulo
                                        else
                                        {
                                            //Exibir Formulario para cadastrar ou editar Titulo

                                            //Informações do movimento para cadastrar um titulo
                                            DateTime dtMovimento = mov.Data;
                                            Double   vlMovimento = mov.Valor;

                                            //Exibe informação sobre o movimento sem titulo correnpondente encontrado
                                            MessageBox.Show("Título não encontrado:" + Environment.NewLine +
                                                            "Data:  " + dtMovimento.Date + Environment.NewLine +
                                                            "Valor:  " + vlMovimento + Environment.NewLine +
                                                            "Descrição: " + mov.Descricao, "Titulo x Movimento", MessageBoxButtons.OK,
                                                            MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                                            //Exibe o formulario para cadastrar o titulo
                                            frmCadTitulo cadMovimento = new frmCadTitulo(dtMovimento, vlMovimento);
                                            cadMovimento.ShowDialog();

                                            //Apos fechar o formulario realiza de novo busca
                                            using (var objNovaPesq = new dbGerenciadorEntities())
                                            {
                                                //Primeira pesquisa por Vencimento e Valor
                                                var queryNovoTitulo = from titulo in objNovaPesq.Titulo
                                                                      join relacao in objNovaPesq.Relacao on
                                                                      titulo.relacao equals relacao.id
                                                                      where (titulo.vencimento == mov.Data.Date && titulo.valor == valor && titulo.baixado == null)
                                                                      select new
                                                {
                                                    titulo.id,
                                                    titulo.numero,
                                                    relacao.Nome,
                                                    titulo.tipo,
                                                    titulo.parcela,
                                                    titulo.valor,
                                                    titulo.vencimento,
                                                    titulo.natureza,
                                                    titulo.descricao
                                                };

                                                var ListaNovosTitulos = queryNovoTitulo.ToList();

                                                //Verifica se houve retorno
                                                if (ListaNovosTitulos.Count != 0)
                                                {
                                                    //Exibe o formulario com todos os titulos encontrado possibilitando a baixa
                                                    frmConcilia.Conciliado passar = new frmConcilia.Conciliado();

                                                    frmConcilia formConcilia = new frmConcilia(ListaNovosTitulos, mov, ref passar);
                                                    formConcilia.ShowDialog();

                                                    //Obtem o numero da conta
                                                    string[] split = agConta.Split('/');
                                                    //Depois do split realiza a conversão para inteiro
                                                    int conta = Convert.ToInt32(split[1]);
                                                    //Adiciona o numero da conta a classe conciliado
                                                    passar.conta = conta;

                                                    lstConciliado.Add(passar);
                                                }
                                                else
                                                {
                                                    MessageBox.Show("Titulo ainda não foi cadastrado" + Environment.NewLine +
                                                                    "Para garantir a integridade do processo não podemos continuar" + Environment.NewLine +
                                                                    "Cadastre o titulo e tente novamente", "Aviso");
                                                    //Como se diz para garantir integridade não podemos terminar conciliação sem cadastrar
                                                    //todos os titulos que estão no movimento OFX
                                                    sair = true;
                                                    break;
                                                }
                                            }
                                        }
                                    } //Segundo using
                                }
                            }         //Terceiro using
                        }

                        else
                        {
                            MessageBox.Show("O Movimento já está cadastrado!", "Aviso", MessageBoxButtons.OK,
                                            MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                        }
                    }//using
                }

                //Condição quando a data do movimento for maior que a data atual (evitando lançamento futuros) que mudam descrição
                else
                {
                    MessageBox.Show("Lançamento com data futura não será incluido nesta conciliação." + Environment.NewLine +
                                    "será importado no documento com a data correta", "Aviso", MessageBoxButtons.OK,
                                    MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                }
            }//Fim do foreach

            //Aqui verificar se a lstConciliado não é vazia se não for vazia
            //loop na lista inserindo na tabela movimento e atualizando a tabela titulo

            if (lstConciliado.Count != 0 && sair == false)
            {
                MessageBox.Show("Vamos efetuar as alterações na base de dados", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                foreach (frmConcilia.Conciliado movBanco in lstConciliado)
                {
                    //Incluir as informações na tabela Movimento
                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objMovimento = new Gerenciador.Data.Movimento();

                    objMovimento.data      = movBanco.dtMovimento;
                    objMovimento.tipo      = movBanco.tipo;
                    objMovimento.valor     = Convert.ToDecimal(movBanco.vlBaixado);
                    objMovimento.numero    = Convert.ToString(movBanco.numero);
                    objMovimento.descricao = movBanco.descricao;
                    objMovimento.conta     = movBanco.conta;
                    objMovimento.id_titulo = movBanco.idTitulo;
                    objGerenciador.AddToMovimento(objMovimento);
                    objGerenciador.SaveChanges();

                    //Atualiza a tabela Titulo ( Com data da baixa, valor pago, em que banco foi pago)
                    using (var objUpdate = new dbGerenciadorEntities())
                    {
                        var objTitulo = new Gerenciador.Data.Titulo();

                        objTitulo = (from conv in objUpdate.Titulo
                                     where conv.id == movBanco.idTitulo
                                     select conv).First();

                        objTitulo.baixado       = Convert.ToString(movBanco.baixado);
                        objTitulo.dta_baixa     = movBanco.dtMovimento;
                        objTitulo.vlr_pagamento = Convert.ToDecimal(movBanco.vlBaixado);
                        objTitulo.conta_baixa   = movBanco.conta;
                        objUpdate.SaveChanges();
                    }
                }//FIm loop da inclusão

                MessageBox.Show("Atualizações efetuadas com sucesso!", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                MessageBoxDefaultButton.Button1);
            }//Fim atualização banco de dados
        }
Пример #28
0
        //Excluir conta
        private void btnExcluirConta_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Deseja mesmo excluir a conta selecionado?", "Aviso", MessageBoxButtons.YesNo,
               MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == System.Windows.Forms.DialogResult.Yes)
            {
                try
                {

                    foreach (DataGridViewRow linha in dtgConta.SelectedRows)
                    {
                        int idConta = Convert.ToInt32(linha.Cells[0].Value);

                        using (var objGerenciador = new dbGerenciadorEntities())
                        {
                            var mensagem = (from deleteConta in objGerenciador.Conta
                                            where (deleteConta.numero == idConta)
                                            select deleteConta).First();

                            objGerenciador.DeleteObject(mensagem);
                            objGerenciador.SaveChanges();
                            carregaGrids();
                            MessageBox.Show("Conta excluida!", "Aviso");

                        }

                    }

                }
                catch (Exception ex)
                {
                    MessageBox.Show("Erro: " + ex.Message , "Aviso");

                }
            }
        }
Пример #29
0
        //Função que retorna list com os titulos vencidos
        public object carregaVencidos()
        {
            try
            {
                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    DateTime hoje = DateTime.Now.Date;
                    var query = from conv in objGerenciador.Titulo
                                join convRel in objGerenciador.Relacao on
                                conv.relacao equals convRel.id
                                where (conv.vencimento < hoje && conv.baixado == null) //Menores que hoje e não baixados
                                select new
                                {

                                    conv.vencimento,
                                    relacao = (convRel.Nome),
                                    conv.valor,
                                    conv.natureza,
                                    conv.descricao,

                                };

                    var ListaFinal = query.ToList();

                    if (ListaFinal.Count != 0)
                    {
                        return ListaFinal;
                    }

                    else
                    {
                        //Devolve uma lista vazia
                        List<Titulo> lstVazia = new List<Titulo>();
                        return lstVazia;
                    }

                }
            }
            catch (Exception ex)
            {
                List<Titulo> lstVazia = new List<Titulo>();
                MessageBox.Show("Erro: " + ex.Message);
                return lstVazia;

            }
        }
Пример #30
0
        //Função para conciliar
        public void startConc()
        {
            //Percorrer todos os movimentos
            foreach (OFX_Movimento mov in movimentos)
            {
                //Verificar se a data do movimento maior data atual evitando
                //lançamentos futuros do extrato
                if (mov.Data.Date <= DateTime.Now.Date)
                {
                    //Verifica se já não existe o movimento evitando duplicidade
                    Decimal valor = Convert.ToDecimal(mov.Valor);

                    using (var objVerExiste = new dbGerenciadorEntities())
                    {
                        //FALTOU TESTAR - QUANDO INCLUIR MOVIMENTO
                        var query = from conv in objVerExiste.Movimento
                                    where (conv.data == mov.Data.Date && conv.valor == valor && conv.descricao == mov.Descricao)
                                    select conv;
                        var ListaFinal = query.ToList();

                        //Não tem duplicidade
                        if (ListaFinal.Count == 0)
                        {
                            using (var objPesqVctoValor = new dbGerenciadorEntities())
                            {
                                //Primeira pesquisa por Vencimento e Valor
                                var queryTitulo = from titulo in objPesqVctoValor.Titulo
                                                  join relacao in objPesqVctoValor.Relacao on
                                                  titulo.relacao equals relacao.id
                                                  where (titulo.vencimento == mov.Data.Date && titulo.valor == valor && titulo.baixado == null)
                                                  select new
                                {
                                    titulo.id,
                                    titulo.numero,
                                    relacao.Nome,
                                    titulo.tipo,
                                    titulo.parcela,
                                    titulo.valor,
                                    titulo.vencimento,
                                    titulo.natureza,
                                    titulo.descricao
                                };

                                var ListaTitulos = queryTitulo.ToList();

                                //A primeira pesquisa retornou valor
                                if (ListaTitulos.Count != 0)
                                {
                                    //Exibe o formulario com todos os titulos encontrado possibilitando a baixa
                                    frmConcilia.Conciliado passar = new frmConcilia.Conciliado();

                                    frmConcilia formConcilia = new frmConcilia(ListaTitulos, mov, ref passar);
                                    formConcilia.ShowDialog();

                                    //Obtem o numero da conta
                                    string[] split = agConta.Split('/');
                                    //Depois do split realiza a conversão para inteiro
                                    int conta = Convert.ToInt32(split[1]);
                                    //Adiciona o numero da conta a classe conciliado
                                    passar.conta = conta;

                                    lstConciliado.Add(passar);
                                }

                                else
                                {
                                    using (var objPesqValor = new dbGerenciadorEntities())
                                    {
                                        //Se a primeira pesquisa não retornar vamos pesquisar apenas por valor que não tenha
                                        //sida anteriormente baixados

                                        var queryTitulo_val = from titulo in objPesqValor.Titulo
                                                              join relacao in objPesqValor.Relacao on
                                                              titulo.relacao equals relacao.id
                                                              where titulo.valor == valor && titulo.baixado == null
                                                              select new
                                        {
                                            titulo.id,
                                            titulo.numero,
                                            relacao.Nome,
                                            titulo.tipo,
                                            titulo.parcela,
                                            titulo.valor,
                                            titulo.vencimento,
                                            titulo.natureza,
                                            titulo.descricao
                                        };

                                        var ListaTitulos_val = queryTitulo_val.ToList();


                                        //A primeira pesquisa retornou valor
                                        if (ListaTitulos_val.Count != 0)
                                        {
                                            //Exibe o formulario com todos os titulos encontrado possibilitando a baixa
                                            frmConcilia.Conciliado passar       = new frmConcilia.Conciliado();
                                            frmConcilia            formConcilia = new frmConcilia(ListaTitulos_val, mov, ref passar);
                                            formConcilia.ShowDialog();

                                            //Obtem o numero da conta
                                            string[] split = agConta.Split('/');
                                            //Depois do split realiza a conversão para inteiro
                                            int conta = Convert.ToInt32(split[1]);
                                            //Adiciona o numero da conta a classe conciliado
                                            passar.conta = conta;

                                            lstConciliado.Add(passar);
                                        }

                                        //Nenhuma pesquisa retornou agora precisamos cadastrar o titulo
                                        else
                                        {
                                            //Exibir Formulario para cadastrar ou editar Titulo

                                            //Informações do movimento para cadastrar um titulo
                                            DateTime dtMovimento = mov.Data;
                                            Double   vlMovimento = mov.Valor;

                                            MessageBox.Show("Título não encontrado:" + Environment.NewLine +
                                                            "Data:  " + dtMovimento.Date + Environment.NewLine +
                                                            "Valor:  " + vlMovimento + Environment.NewLine +
                                                            "Descrição: " + mov.Descricao, "Titulo x Movimento", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);


                                            frmCadTitulo cadMovimento = new frmCadTitulo(dtMovimento, vlMovimento);
                                            cadMovimento.ShowDialog();
                                            //Apos abrir o formulario realiza de novo busca
                                            using (var objNovaPesq = new dbGerenciadorEntities())
                                            {
                                                //Primeira pesquisa por Vencimento e Valor
                                                var queryNovoTitulo = from titulo in objNovaPesq.Titulo
                                                                      join relacao in objNovaPesq.Relacao on
                                                                      titulo.relacao equals relacao.id
                                                                      where (titulo.vencimento == mov.Data.Date && titulo.valor == valor && titulo.baixado == null)
                                                                      select new
                                                {
                                                    titulo.id,
                                                    titulo.numero,
                                                    relacao.Nome,
                                                    titulo.tipo,
                                                    titulo.parcela,
                                                    titulo.valor,
                                                    titulo.vencimento,
                                                    titulo.natureza,
                                                    titulo.descricao
                                                };

                                                var ListaNovosTitulos = queryNovoTitulo.ToList();

                                                //Verifica se houve retorno
                                                if (ListaNovosTitulos.Count != 0)
                                                {
                                                    //Exibe o formulario com todos os titulos encontrado possibilitando a baixa
                                                    frmConcilia.Conciliado passar = new frmConcilia.Conciliado();

                                                    frmConcilia formConcilia = new frmConcilia(ListaNovosTitulos, mov, ref passar);
                                                    formConcilia.ShowDialog();

                                                    //Obtem o numero da conta
                                                    string[] split = agConta.Split('/');
                                                    //Depois do split realiza a conversão para inteiro
                                                    int conta = Convert.ToInt32(split[1]);
                                                    //Adiciona o numero da conta a classe conciliado
                                                    passar.conta = conta;

                                                    lstConciliado.Add(passar);
                                                }
                                            }
                                        }
                                    } //Segundo using
                                }
                            }         //Terceiro using
                        }

                        else
                        {
                            MessageBox.Show("O Movimento já está cadastrado!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                        }
                    } //using
                }
            }         //Fim do foreach

            //Aqui verificar se a lstConciliado não é vazia se não for vazia
            //loop na lista inserindo na tabela movimento e atualizando a tabela titulo

            if (lstConciliado.Count != 0)
            {
                MessageBox.Show("Vamos efetuar as alterações na base de dados", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                foreach (frmConcilia.Conciliado movBanco in lstConciliado)
                {
                    //Incluir as informações na tabela Movimento
                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objMovimento = new Gerenciador.Data.Movimento();

                    objMovimento.data      = movBanco.dtMovimento;
                    objMovimento.tipo      = movBanco.tipo;
                    objMovimento.valor     = Convert.ToDecimal(movBanco.vlBaixado);
                    objMovimento.numero    = Convert.ToString(movBanco.numero);
                    objMovimento.descricao = movBanco.descricao;
                    objMovimento.conta     = movBanco.conta;
                    objMovimento.id_titulo = movBanco.idTitulo;
                    objGerenciador.AddToMovimento(objMovimento);
                    objGerenciador.SaveChanges();

                    //Atualiza a tabela Titulo
                    using (var objUpdate = new dbGerenciadorEntities())
                    {
                        var objTitulo = new Gerenciador.Data.Titulo();

                        objTitulo = (from conv in objUpdate.Titulo
                                     where conv.id == movBanco.idTitulo
                                     select conv).First();

                        objTitulo.baixado       = Convert.ToString(movBanco.baixado);
                        objTitulo.dta_baixa     = movBanco.dtMovimento;
                        objTitulo.vlr_pagamento = Convert.ToDecimal(movBanco.vlBaixado);
                        objTitulo.conta_baixa   = movBanco.conta;
                        objUpdate.SaveChanges();
                    }
                }//FIm loop da inclusão

                MessageBox.Show("Atualizações efetuadas com sucesso!", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
            }//Fim atualização banco de dados
        }
Пример #31
0
        //Carrega descrição do banco no textbox
        public void loadDescbanco()
        {
            //Preenche a descrição do banco
            using (var objGerenciador1 = new dbGerenciadorEntities())
            {
                int numeroBanco = Convert.ToInt32(cmbNumeroBanco.SelectedValue);

                var retDescr = (from nBanco in objGerenciador1.Banco
                                where nBanco.numero == numeroBanco
                                select nBanco.descricao).First();

                txtNomeBanco.Text = retDescr;

            }
        }
Пример #32
0
        //Confirmar geral (GRAVAR A CONTA)
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            //Chama validação campos
            Validar valida = new Validar();
            if (valida.valCampoVazio(this.Controls) == true)
            {

                //Incluir
                Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                var objConta = new Gerenciador.Data.Conta();

                objConta.numero = Convert.ToInt32(txtNumeroConta.Text);
                objConta.agencia = Convert.ToInt32(cmbAgenciaNumero.SelectedValue);
                objConta.descricao = txtDescricaoConta.Text;
                objConta.saldo = Convert.ToDecimal(txtSaldoConta.Text);
                objConta.data_criacao = DateTime.Now.Date;
                objGerenciador.AddToConta(objConta);
                objGerenciador.SaveChanges();

                MessageBox.Show("Conta Cadastrado com sucesso!", "Cadastro", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                MessageBoxDefaultButton.Button2);
                this.Close();

            }
        }
Пример #33
0
        //Carrega descrição agencia
        public void loadDescAgencia()
        {
            //Preenche a descrição do banco
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                int numeroAgencia = Convert.ToInt32(cmbAgenciaNumero.SelectedValue);

                if (cmbAgenciaNumero.Text != "")
                {
                    var retDescr = (from nAgencia in objGerenciador.Agencia
                                    where nAgencia.numero == numeroAgencia
                                    select nAgencia.descricao).First();

                    txtAgenciaDescricao.Text = retDescr;
                }
            }
        }
Пример #34
0
        //Função para conciliar
        public void startConc()
        {
            //Percorrer todos os movimentos
            foreach (OFX_Movimento mov in movimentos)
            {
                //Verificar se a data do movimento maior data atual evitando
                //lançamentos futuros do extrato
                if (mov.Data.Date <= DateTime.Now.Date)
                {

                    //Verifica se já não existe o movimento evitando duplicidade
                    Decimal valor = Convert.ToDecimal(mov.Valor);

                    using (var objVerExiste = new dbGerenciadorEntities())
                    {
                        //FALTOU TESTAR - QUANDO INCLUIR MOVIMENTO
                        var query = from conv in objVerExiste.Movimento
                                    where (conv.data == mov.Data.Date && conv.valor == valor && conv.descricao == mov.Descricao)
                                    select conv;
                        var ListaFinal = query.ToList();

                        //Não tem duplicidade
                        if (ListaFinal.Count == 0)
                        {
                            using (var objPesqVctoValor = new dbGerenciadorEntities())
                            {
                                //Primeira pesquisa por Vencimento e Valor
                                var queryTitulo = from titulo in objPesqVctoValor.Titulo
                                                  join relacao in objPesqVctoValor.Relacao on
                                                      titulo.relacao equals relacao.id
                                                  where (titulo.vencimento == mov.Data.Date && titulo.valor == valor && titulo.baixado == null)
                                                  select new
                                                  {
                                                      titulo.id,
                                                      titulo.numero,
                                                      relacao.Nome,
                                                      titulo.tipo,
                                                      titulo.parcela,
                                                      titulo.valor,
                                                      titulo.vencimento,
                                                      titulo.natureza,
                                                      titulo.descricao
                                                  };

                                var ListaTitulos = queryTitulo.ToList();

                                //A primeira pesquisa retornou valor
                                if (ListaTitulos.Count != 0)
                                {
                                    //Exibe o formulario com todos os titulos encontrado possibilitando a baixa
                                    frmConcilia.Conciliado passar = new frmConcilia.Conciliado();

                                    frmConcilia formConcilia = new frmConcilia(ListaTitulos, mov, ref passar);
                                    formConcilia.ShowDialog();

                                    //Obtem o numero da conta
                                    string[] split = agConta.Split('/');
                                    //Depois do split realiza a conversão para inteiro
                                    int conta = Convert.ToInt32(split[1]);
                                    //Adiciona o numero da conta a classe conciliado
                                    passar.conta = conta;

                                    lstConciliado.Add(passar);
                                }

                                else
                                {

                                    using (var objPesqValor = new dbGerenciadorEntities())
                                    {
                                        //Se a primeira pesquisa não retornar vamos pesquisar apenas por valor que não tenha
                                        //sida anteriormente baixados

                                        var queryTitulo_val = from titulo in objPesqValor.Titulo
                                                              join relacao in objPesqValor.Relacao on
                                                              titulo.relacao equals relacao.id
                                                              where titulo.valor == valor && titulo.baixado == null
                                                              select new
                                                              {
                                                                  titulo.id,
                                                                  titulo.numero,
                                                                  relacao.Nome,
                                                                  titulo.tipo,
                                                                  titulo.parcela,
                                                                  titulo.valor,
                                                                  titulo.vencimento,
                                                                  titulo.natureza,
                                                                  titulo.descricao
                                                              };

                                        var ListaTitulos_val = queryTitulo_val.ToList();

                                        //A primeira pesquisa retornou valor
                                        if (ListaTitulos_val.Count != 0)
                                        {

                                            //Exibe o formulario com todos os titulos encontrado possibilitando a baixa
                                            frmConcilia.Conciliado passar = new frmConcilia.Conciliado();
                                            frmConcilia formConcilia = new frmConcilia(ListaTitulos_val, mov, ref passar);
                                            formConcilia.ShowDialog();

                                            //Obtem o numero da conta
                                            string[] split = agConta.Split('/');
                                            //Depois do split realiza a conversão para inteiro
                                            int conta = Convert.ToInt32(split[1]);
                                            //Adiciona o numero da conta a classe conciliado
                                            passar.conta = conta;

                                            lstConciliado.Add(passar);

                                        }

                                        //Nenhuma pesquisa retornou agora precisamos cadastrar o titulo
                                        else
                                        {
                                            //Exibir Formulario para cadastrar ou editar Titulo

                                            //Informações do movimento para cadastrar um titulo
                                            DateTime dtMovimento = mov.Data;
                                            Double vlMovimento = mov.Valor;

                                            MessageBox.Show("Título não encontrado:" + Environment.NewLine +
                                                "Data:  " + dtMovimento.Date + Environment.NewLine +
                                                "Valor:  " + vlMovimento + Environment.NewLine +
                                                "Descrição: " + mov.Descricao, "Titulo x Movimento", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                                            frmCadTitulo cadMovimento = new frmCadTitulo(dtMovimento, vlMovimento);
                                            cadMovimento.ShowDialog();
                                            //Apos abrir o formulario realiza de novo busca
                                            using (var objNovaPesq = new dbGerenciadorEntities())
                                            {
                                                //Primeira pesquisa por Vencimento e Valor
                                                var queryNovoTitulo = from titulo in objNovaPesq.Titulo
                                                                      join relacao in objNovaPesq.Relacao on
                                                                          titulo.relacao equals relacao.id
                                                                      where (titulo.vencimento == mov.Data.Date && titulo.valor == valor && titulo.baixado == null)
                                                                      select new
                                                                      {
                                                                          titulo.id,
                                                                          titulo.numero,
                                                                          relacao.Nome,
                                                                          titulo.tipo,
                                                                          titulo.parcela,
                                                                          titulo.valor,
                                                                          titulo.vencimento,
                                                                          titulo.natureza,
                                                                          titulo.descricao
                                                                      };

                                                var ListaNovosTitulos = queryNovoTitulo.ToList();

                                                //Verifica se houve retorno
                                                if (ListaNovosTitulos.Count != 0)
                                                {
                                                    //Exibe o formulario com todos os titulos encontrado possibilitando a baixa
                                                    frmConcilia.Conciliado passar = new frmConcilia.Conciliado();

                                                    frmConcilia formConcilia = new frmConcilia(ListaNovosTitulos, mov, ref passar);
                                                    formConcilia.ShowDialog();

                                                    //Obtem o numero da conta
                                                    string[] split = agConta.Split('/');
                                                    //Depois do split realiza a conversão para inteiro
                                                    int conta = Convert.ToInt32(split[1]);
                                                    //Adiciona o numero da conta a classe conciliado
                                                    passar.conta = conta;

                                                    lstConciliado.Add(passar);
                                                }

                                            }
                                        }
                                    }//Segundo using
                                }
                            }//Terceiro using
                        }

                        else
                        {

                            MessageBox.Show("O Movimento já está cadastrado!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                        }

                    }//using

                }

            }//Fim do foreach

            //Aqui verificar se a lstConciliado não é vazia se não for vazia
            //loop na lista inserindo na tabela movimento e atualizando a tabela titulo

            if (lstConciliado.Count != 0)
            {
                MessageBox.Show("Vamos efetuar as alterações na base de dados", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

                foreach (frmConcilia.Conciliado movBanco in lstConciliado)
                {
                    //Incluir as informações na tabela Movimento
                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                    var objMovimento = new Gerenciador.Data.Movimento();

                    objMovimento.data = movBanco.dtMovimento;
                    objMovimento.tipo = movBanco.tipo;
                    objMovimento.valor = Convert.ToDecimal(movBanco.vlBaixado);
                    objMovimento.numero = Convert.ToString(movBanco.numero);
                    objMovimento.descricao = movBanco.descricao;
                    objMovimento.conta = movBanco.conta;
                    objMovimento.id_titulo = movBanco.idTitulo;
                    objGerenciador.AddToMovimento(objMovimento);
                    objGerenciador.SaveChanges();

                    //Atualiza a tabela Titulo
                    using (var objUpdate = new dbGerenciadorEntities())
                    {

                        var objTitulo = new Gerenciador.Data.Titulo();

                        objTitulo = (from conv in objUpdate.Titulo
                                     where conv.id == movBanco.idTitulo
                                     select conv).First();

                        objTitulo.baixado = Convert.ToString(movBanco.baixado);
                        objTitulo.dta_baixa = movBanco.dtMovimento;
                        objTitulo.vlr_pagamento = Convert.ToDecimal(movBanco.vlBaixado);
                        objTitulo.conta_baixa = movBanco.conta;
                        objUpdate.SaveChanges();

                    }

                }//FIm loop da inclusão

                MessageBox.Show("Atualizações efetuadas com sucesso!", "AVISO", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);

            }//Fim atualização banco de dados
        }
Пример #35
0
        //Função que verifica se a data lançamento é menor que a data de criação da conta
        public bool verDtLancamento()
        {
            foreach (OFX_Movimento mov in movimentos)
            {

                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    //agência e conta vem em uma unica string agencia/conta fiz split para obter separado
                    string[] split = agConta.Split('/');

                    //Depois do split realiza a conversão para inteiro
                    int conta = Convert.ToInt32(split[1]);

                    var query = from conv in objGerenciador.Conta
                                where conv.numero == conta
                                select conv.data_criacao;
                    var ListaFinal = query.ToList();

                    DateTime criacaoConta = Convert.ToDateTime(ListaFinal[0]);
                    //Verifica se a data do movimento é menor que a data dos movimentos
                    if (mov.Data < criacaoConta)
                    {
                        return false;

                    }

                }

            }

            return true;
        }
Пример #36
0
        //Verifica se a conta do OFX existe (TRUE FALSE)
        public bool verConta()
        {
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                //agência e conta vem em uma unica string agencia/conta fiz split para obter separado
                string[] split = agConta.Split('/');

                //Depois do split realiza a conversão para inteiro
                int agencia = Convert.ToInt32(split[0]);
                int conta = Convert.ToInt32(split[1]);

                var query = from conv in objGerenciador.Conta
                            where (conv.numero == conta && conv.agencia == agencia)
                            select conv;
                var ListaFinal = query.ToList();

                if (ListaFinal.Count == 0)
                {
                    return false;

                }
                else
                {

                    return true;
                }
            }
        }
Пример #37
0
        //Confirmar inclusão
        private void btnConfirmaTitulo_Click(object sender, EventArgs e)
        {
            //Função de validação
            Validar valida = new Validar();

            if (valida.valCampoVazio(this.Controls) == true)
            {
                if (Convert.ToInt32(txtParcelaTitulo.Text) >= 1)
                {
                    //Carrega o tipo do titulo correto
                    loadTipo();

                    //Verifica se é para alterar ou para incluir

                    //ALTERAR
                    if (altera == true)
                    {
                        //Acerta o valor de acordo com a operação (Positivo ou Negativo)
                        acertaPosNeg();

                        //Prorroga Vencimento proximo dia util
                        DateTime alteraVencimento = fimSemana();

                        using (var objGerenciador = new dbGerenciadorEntities())
                        {
                            var objTitulo = new Gerenciador.Data.Titulo();
                            //Seleciona o registro a ser alterado pela sua ID
                            objTitulo = (from conv in objGerenciador.Titulo
                                         where conv.id == _id
                                         select conv).First();

                            //Alterações
                            objTitulo.numero       = Convert.ToInt32(txtNumeroTitulo.Text);
                            objTitulo.relacao      = Convert.ToInt32(cmbRelacaoTitulo.SelectedValue);
                            objTitulo.tipo         = Convert.ToString(cmbTipoTitulo.Text);
                            objTitulo.qtd_parcela  = Convert.ToInt32(txtParcelaTitulo.Text);
                            objTitulo.valor        = Convert.ToDecimal(txtValorTitulo.Text);
                            objTitulo.vencimento   = alteraVencimento;
                            objTitulo.parcela      = Convert.ToInt32(txtParcelaTitulo.Text);
                            objTitulo.natureza     = Convert.ToString(cmbNaturezaTitulo.SelectedValue);
                            objTitulo.descricao    = txtDescricaoTitulo.Text;
                            objTitulo.codigoBarras = txtCodBar.Text;

                            //Grava no banco
                            objGerenciador.SaveChanges();

                            MessageBox.Show("Titulo Alterado com sucesso!", "Alterações", MessageBoxButtons.OK,
                                            MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);

                            //Apos alterar fecha ou reinicializa o formulario
                            if (vemOfx == true)
                            {
                                reloadForm();
                            }
                            else
                            {
                                this.Close();
                            }
                        }
                    }

                    //INCLUIR
                    else
                    {
                        //Verifica se o titulo já não esta cadastrado
                        using (var objGerenciador1 = new dbGerenciadorEntities())
                        {
                            int      tituloNumero  = Convert.ToInt32(txtNumeroTitulo.Text);
                            int      relacaoNumero = Convert.ToInt32(cmbRelacaoTitulo.SelectedValue);
                            decimal  valor         = Convert.ToDecimal(txtValorTitulo.Text);
                            DateTime vcto          = Convert.ToDateTime(dtpVctoTitulo.Text);

                            var query = from conv in objGerenciador1.Titulo
                                        where (conv.numero == tituloNumero && conv.relacao == relacaoNumero &&
                                               conv.valor == valor && conv.vencimento == vcto)
                                        select conv;
                            var ListaBanco = query.ToList();

                            //Titulo não está cadastrado
                            if (ListaBanco.Count == 0)
                            {
                                //Acerta o valor de acordo com a operação (Positivo ou Negativo)
                                acertaPosNeg();

                                //Prorroga o titulo proximo dia util
                                DateTime vencimento = new DateTime();
                                vencimento = fimSemana();

                                //Realizar loop de acordo com numero de parcelas

                                int numeroParcelas = Convert.ToInt32(txtParcelaTitulo.Text);
                                for (int i = 0; i < numeroParcelas; i++)
                                {
                                    //Incluir
                                    Gerenciador.Data.dbGerenciadorEntities objGerenciador = new Gerenciador.Data.dbGerenciadorEntities();
                                    var objTitulo = new Gerenciador.Data.Titulo();
                                    objTitulo.numero       = Convert.ToInt32(txtNumeroTitulo.Text);
                                    objTitulo.relacao      = Convert.ToInt32(cmbRelacaoTitulo.SelectedValue);
                                    objTitulo.tipo         = Convert.ToString(cmbTipoTitulo.Text);
                                    objTitulo.qtd_parcela  = Convert.ToInt32(txtParcelaTitulo.Text);
                                    objTitulo.valor        = (Convert.ToDecimal(txtValorTitulo.Text) / numeroParcelas); // Valor total divido pelas parcelas
                                    objTitulo.vencimento   = vencimento;
                                    objTitulo.parcela      = (i + 1);                                                   //Incrementa a parcela
                                    objTitulo.natureza     = Convert.ToString(cmbNaturezaTitulo.SelectedValue);
                                    objTitulo.descricao    = txtDescricaoTitulo.Text;
                                    objTitulo.codigoBarras = txtCodBar.Text;

                                    //Realiza a inclusão
                                    objGerenciador.AddToTitulo(objTitulo);
                                    objGerenciador.SaveChanges();

                                    //Incrementa mês
                                    vencimento = vencimento.AddMonths(1);

                                    //Joga para proximo dia util quando sabado ou domingo
                                    if (vencimento.DayOfWeek == DayOfWeek.Saturday)
                                    {
                                        vencimento = vencimento.AddDays(2);
                                    }

                                    else if (vencimento.DayOfWeek == DayOfWeek.Sunday)
                                    {
                                        vencimento = vencimento.AddDays(1);
                                    }
                                }

                                MessageBox.Show("Titulo Cadastrado com sucesso!", "Cadastro", MessageBoxButtons.OK, MessageBoxIcon.Information,
                                                MessageBoxDefaultButton.Button2);

                                //Verifica de onde vem OFX ou manual e da o tratamento
                                if (vemOfx == false)
                                {
                                    reloadForm();
                                }
                                else
                                {
                                    this.Close();
                                }
                            }


                            else
                            {
                                //Mensagem caso o titulo exista
                                MessageBox.Show("Titulo já existe verifique!", "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error,
                                                MessageBoxDefaultButton.Button2);
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Parcela não pode ser menor que 1", "Aviso");
                    txtParcelaTitulo.Text = "";
                    txtParcelaTitulo.Focus();
                }
            }
        }
Пример #38
0
        //Carrega o grid
        public object carregagrid()
        {
            try
            {
                //Carrega as variaveis utilizadas nas consultas
                DateTime dtaInicial = Convert.ToDateTime(dtpInicial.Text).Date;
                DateTime dtaFinal = Convert.ToDateTime(dtpFinal.Text).Date;

                //Lista que será retornada caso exista lançamento
                List<object> listaRetorno = new List<object>();

                //Obtem o saldo inicial de todas as contas
                decimal saldo = 0;
                using (var objGerenciador = new dbGerenciadorEntities())
                {

                    var saldoTodasContas = (from conta in objGerenciador.Conta
                                 select conta.saldo);
                    var ListaSaldoInicial = saldoTodasContas.ToList();

                    foreach (decimal sInicial in ListaSaldoInicial)
                    {

                        saldo += sInicial;

                    }
                }

                //Obtem todos os lançamentos com as datas menores a data incial do filtro
                using (var objSaldoAnterior = new dbGerenciadorEntities())
                {

                    var qSaldoAnterior = from sTitulo in objSaldoAnterior.Titulo
                                         where (sTitulo.vencimento < dtaInicial)
                                         orderby sTitulo.vencimento
                                         select sTitulo;
                    var ListaSaldoAnterior = qSaldoAnterior.ToList();

                    //Percorre os movimentos atualizando o saldo obtido da conta em questão
                    foreach (Titulo calcSaldoInicial in ListaSaldoAnterior)
                    {
                        //Esta variavel será o saldo inicial do periodo selecionado
                        saldo += calcSaldoInicial.valor;

                    }

                    //Define a label com o valor do saldo anterior
                    lblSaldoInicial.Text = string.Format("{0:C}", saldo);

                    //Obtem os lançamentos de acordo com a conta a data inicial e final
                    using (var objObtemMovimento = new dbGerenciadorEntities())
                    {
                        var queryMovimento = (from titulo in objObtemMovimento.Titulo
                                              where (titulo.vencimento <= dtaFinal && titulo.vencimento >= dtaInicial)
                                              orderby titulo.vencimento
                                              select titulo).ToList();

                        //Percorre os movimentos filtrados criando objetos personalizados
                        foreach (Titulo calculoFinal in queryMovimento)
                        {

                            saldo += calculoFinal.valor;

                            var objRetorno = new

                            {

                                calculoFinal.vencimento,
                                calculoFinal.numero,
                                calculoFinal.descricao,
                                calculoFinal.valor,
                                saldo

                            };

                            //Atualiza a situação saldo final
                            lblSaldoFinal.Text = string.Format("{0:C}", saldo);

                            //Adiciona na lista de retorno
                            listaRetorno.Add(objRetorno);

                        }

                        if (listaRetorno.Count != 0)
                        {
                            return listaRetorno;
                        }

                        else
                        {
                            List<Titulo> lstVazia = new List<Titulo>();
                            return lstVazia;
                        }

                    }
                }

            }
            catch (Exception ex)
            {
                List<Titulo> lstVazia = new List<Titulo>();
                MessageBox.Show("Erro: " + ex.Message);
                return lstVazia;

            }
        }
Пример #39
0
        //Obtem as estimativas de saldo diponivel considerando os titulos
        public void calculaSaldo()
        {
            decimal somaSaldo = 0;
            decimal somaTituloMes = 0;
            decimal somaTituloAno = 0;

            //Percorre o saldo das contas no datagridview
            foreach (DataGridViewRow linha in dtgSaldoContas.Rows)
            {

                somaSaldo = somaSaldo + Convert.ToDecimal(linha.Cells[4].Value);

            }

            //Obtem o valor dos titulos de um mês
            using (var objGerenciador = new dbGerenciadorEntities())
            {

                // Alteração dia 22/06/2013
                // Na tela dashboard no campo Disponivel Mês a logica estava errada
                // pegava a data atual adicionava um mês a data atual e buscava os titulos
                //Pega a data atual e adciona um mês
                //DateTime umMes = DateTime.Now.AddMonths(1).Date;

                //Obtem o ultimo dia do mês corrente CORRETO
                DateTime ultimoDia = new DateTime(DateTime.Now.Year, DateTime.Now.Month,
                                                  DateTime.DaysInMonth(DateTime.Now.Year,
                                                  DateTime.Now.Month));

                var qTituloMes = from tituloMes in objGerenciador.Titulo
                                 where (tituloMes.vencimento <= ultimoDia && tituloMes.baixado == null)
                                 select tituloMes.valor;
                var ListaTituloMes = qTituloMes.ToList();

                if (ListaTituloMes.Count != 0)
                {
                    foreach (Decimal tit in ListaTituloMes)
                    {
                        somaTituloMes += tit;

                    }
                }
            }

            //Obtem o valor dos titulos de um ano
            using (var objGerenciador = new dbGerenciadorEntities())
            {
                DateTime umAno = DateTime.Now.AddYears(1).Date;

                var qTituloAno = from tituloAno in objGerenciador.Titulo
                                 where (tituloAno.vencimento <= umAno && tituloAno.baixado == null)
                                 select tituloAno.valor;
                var ListaTituloAno = qTituloAno.ToList();

                if (ListaTituloAno.Count != 0)
                {

                    foreach (Decimal tit in ListaTituloAno)
                    {
                        somaTituloAno += tit;

                    }

                }
            }

            lblProximo.Text = string.Format("{0:C}", (somaSaldo + somaTituloMes));
            lblAno.Text = string.Format("{0:C}", (somaSaldo + somaTituloAno));
        }