public void carregaCbbDespesa()
        {
            Controller.DespesaController _ctrlDespe = new Controller.DespesaController();

            DataTable dtDespesa = _ctrlDespe.retronaDespesa();

            if (dtDespesa != null && dtDespesa.Rows.Count > 0)
            {
                DataRow dr = dtDespesa.Rows[0];

                tipoDespesa = dr["desp_status"].ToString();
                this.cbbDespesa.ValueMember   = "coddespesa";
                this.cbbDespesa.DisplayMember = "desp_descricao";
                this.cbbDespesa.DataSource    = dtDespesa;
            }
        }
Exemple #2
0
        private void btnExcluir_Click(object sender, EventArgs e)
        {
            try
            {
                Controller.DespesaController _ctlDesp = new Controller.DespesaController();

                int intCod = 0;

                int.TryParse(ttbCodigo.Text, out intCod);

                if (intCod > 0)
                {
                    if (MessageBox.Show("Confirma exclusão da Despesa?", "Despesa", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                    {
                        bool blnExcluiu = _ctlDesp.excluirDespesa(intCod);
                        if (blnExcluiu)
                        {
                            MessageBox.Show("Despesa Excluída");
                            _limpaCampos();
                            pesquisaDespesa();
                            _btnNovo();
                        }
                        else
                        {
                            MessageBox.Show("Erro ao excluir!");
                        }
                    }
                    else
                    {
                        MessageBox.Show("cancela ?");
                    }
                }
            }
            catch (Exception)
            {
            }
        }
Exemple #3
0
        private void btnGravar_Click(object sender, EventArgs e)
        {
            Controller.DespesaController _ctrlDespesa = new Controller.DespesaController();

            string strMensagem = string.Empty;

            try
            {
                //validações
                int intCodigo = 0;
                if (intCodDespesa != 0)
                {
                    if (!int.TryParse(ttbCodigo.Text, out intCodigo))
                    {
                        strMensagem += $"Código inválido{Environment.NewLine}";
                    }
                }


                if (string.IsNullOrWhiteSpace(ttbDescricao.Text))
                {
                    strMensagem += $"Informe a despesa.";
                }

                string status = "";

                if (rbFixa.Checked == true)
                {
                    status = "FIXA";
                }

                if (rbVariavel.Checked == true)
                {
                    status = "VARIAVEL";
                }
                //verificar se houve alguma anormalidade no cadastro
                if (string.IsNullOrEmpty(strMensagem))
                {
                    int intRetorno = _ctrlDespesa.gravaDespesa(intCodigo, ttbDescricao.Text, status);


                    if (intRetorno == 1)
                    {
                        MessageBox.Show("Gravado com sucesso!");
                    }
                    else
                    {
                        MessageBox.Show("Erro ao Gravar.");
                    }
                    _limpaCampos();
                    _inicializa();
                }
                else
                {
                    MessageBox.Show(strMensagem, "Aviso!!");
                }
            }
            catch (Exception Ex)
            {
                MessageBox.Show(Ex + "");
            }
        }
        private void carregaTela(int cod, int parc)
        {
            Controller.DespesaController   dc    = new Controller.DespesaController();
            Controller.CompraController    cc    = new Controller.CompraController();
            Controller.PessoaController    pc    = new Controller.PessoaController();
            Controller.CaixaController     cxc   = new Controller.CaixaController();
            Controller.UsuarioController   uc    = new Controller.UsuarioController();
            Controller.PagamentoController pagc  = new Controller.PagamentoController();
            Controller.ComissaoController  comic = new Controller.ComissaoController();

            Entidades.Despesa        desp    = new Entidades.Despesa();
            Entidades.Compra         compra  = new Entidades.Compra();
            Entidades.Pessoa         pes     = new Entidades.Pessoa();
            Entidades.Caixa          caixa   = new Entidades.Caixa();
            Entidades.Usuario        usuario = new Entidades.Usuario();
            Entidades.FormaPagamento formap  = new Entidades.FormaPagamento();
            Entidades.Comissao       comis   = new Entidades.Comissao();
            Entidades.ContasPagar    cp      = new Entidades.ContasPagar();

            List <Entidades.CompraProduto> listaItens = new List <Entidades.CompraProduto>();

            ttbCodigo.Text = cod + "";
            DataTable dtGeral = cpc.retornaContaCodParc(cod, parc);

            if (dtGeral != null && dtGeral.Rows.Count > 0)
            {
                DataRow   drGeral   = dtGeral.Rows[0];
                DataTable dtDespesa = dc.retornaObjDespesa(Convert.ToInt32(drGeral["coddespesa"].ToString()));
                if (dtDespesa != null && dtDespesa.Rows.Count > 0)
                {
                    DataRow drDespesa = dtDespesa.Rows[0];
                    desp.Codigo     = Convert.ToInt32(drDespesa["coddespesa"].ToString());
                    desp.Descricao  = drDespesa["desp_descricao"].ToString();
                    desp.Status     = drDespesa["desp_status"].ToString();
                    ttbDespesa.Text = desp.Descricao;
                }
                if (desp.Codigo == 2)
                {
                    listaItens = cc.retornaLista(Convert.ToInt32(drGeral["codcompra"].ToString()));
                }
                DataTable dtCompra = cc.retornaCompra(Convert.ToInt32(drGeral["codcompra"].ToString()));
                if (dtCompra != null && dtCompra.Rows.Count > 0)
                {
                    DataRow drCompra = dtCompra.Rows[0];
                    compra.Despesa    = desp;
                    compra.Codigo     = Convert.ToInt32(drCompra["codcompra"].ToString());
                    compra.Data       = Convert.ToDateTime(drCompra["comp_datacompra"].ToString());
                    compra.Situacao   = drCompra["comp_situacao"].ToString();
                    compra.Lista      = listaItens;
                    compra.Obs        = drCompra["comp_obs"].ToString();
                    compra.ValorTotal = Convert.ToDouble(drCompra["comp_valortotal"].ToString());
                    DataTable dtPessoa = pc.retornaPessoaCod(drCompra["codpessoa"].ToString());
                    if (dtPessoa != null && dtPessoa.Rows.Count > 0)
                    {
                        DataRow drPessoa = dtPessoa.Rows[0];
                        pes.Codigo       = Convert.ToInt32(drPessoa["codpessoa"].ToString());
                        pes.Nome         = drPessoa["pes_nome"].ToString();
                        pes.DataCadastro = Convert.ToDateTime(drPessoa["pes_datacadastro"].ToString());
                        pes.TipoPessoa   = drPessoa["pes_tipopessoa"].ToString();
                        pes.StatusPessoa = Convert.ToBoolean(drPessoa["pes_statuspessoa"].ToString());
                        pes.Observacao   = drPessoa["pes_obs"].ToString();
                        pes.Fiado        = Convert.ToBoolean(drPessoa["pes_fiado"].ToString());
                        pes.Email        = drPessoa["pes_email"].ToString();
                        pes.Telefone     = drPessoa["pes_fone"].ToString();
                        pes.Celular      = drPessoa["pes_cel"].ToString();
                    }
                    compra.Pessoa = pes;
                }
                DataTable dtCaixa = cxc.retornacaixaAbetoDia();
                if (dtCaixa != null && dtCaixa.Rows.Count > 0)
                {
                    DataRow drCaixa = dtCaixa.Rows[0];
                    caixa.CodCaixa       = Convert.ToInt32(drCaixa["codcaixa"].ToString());
                    caixa.DataAbertura   = Convert.ToDateTime(drCaixa["caixa_datahoraabertura"].ToString());
                    caixa.DataFechamento = Convert.ToDateTime(drCaixa["caixa_datahorafecha"].ToString());
                    caixa.SaldoInicial   = Convert.ToDouble(drCaixa["caixa_saldoinicial"].ToString());
                    caixa.Troco          = Convert.ToDouble(drCaixa["caixa_troco"].ToString());
                    caixa.TotalEntrada   = Convert.ToDouble(drCaixa["caixa_totalentra"].ToString());
                    caixa.TotalSaida     = Convert.ToDouble(drCaixa["caixa_totalsaida"].ToString());
                    DataTable dtUsuario = uc.retornaObjUsuario(Convert.ToInt32(drCaixa["codusuario"].ToString()));
                    if (dtUsuario != null && dtUsuario.Rows.Count > 0)
                    {
                        DataRow drUsuario = dtUsuario.Rows[0];
                        usuario.UsuarioCodigo = Convert.ToInt32(drUsuario["codusuario"].ToString());
                        usuario.Login         = drUsuario["usu_usuario"].ToString();
                        usuario.Senha         = drUsuario["usu_senha"].ToString();
                        usuario.Nivel         = Convert.ToInt32(drUsuario["usu_nivel"].ToString());
                        usuario.PessoaCod     = Convert.ToInt32(drUsuario["codpessoa"].ToString());
                    }
                    caixa.Usuario = usuario;
                    Entidades.Pessoa p   = new Entidades.Pessoa();
                    DataTable        dtP = pc.retornaPessoaCod(drCaixa["codpessoa"].ToString());
                    if (dtP != null && dtP.Rows.Count > 0)
                    {
                        DataRow drPessoa = dtP.Rows[0];
                        p.Codigo       = Convert.ToInt32(drPessoa["codpessoa"].ToString());
                        p.Nome         = drPessoa["pes_nome"].ToString();
                        p.DataCadastro = Convert.ToDateTime(drPessoa["pes_datacadastro"].ToString());
                        p.TipoPessoa   = drPessoa["pes_tipopessoa"].ToString();
                        p.StatusPessoa = Convert.ToBoolean(drPessoa["pes_statuspessoa"].ToString());
                        p.Observacao   = drPessoa["pes_obs"].ToString();
                        p.Fiado        = Convert.ToBoolean(drPessoa["pes_fiado"].ToString());
                        p.Email        = drPessoa["pes_email"].ToString();
                        p.Telefone     = drPessoa["pes_fone"].ToString();
                        p.Celular      = drPessoa["pes_cel"].ToString();
                    }
                    caixa.Pessoa = p;
                }
                DataTable dtForma = pagc.retornaObjFormaPagamento(Convert.ToInt32(drGeral["codformapag"].ToString()));
                if (dtForma != null && dtForma.Rows.Count > 0)
                {
                    DataRow drForma = dtForma.Rows[0];
                    formap.Codigo = Convert.ToInt32(drForma["codformapag"].ToString());
                    formap.Forma  = drForma["formpag_descricao"].ToString();
                }
                DataTable dtComissao = comic.retornaComissao(Convert.ToInt32(drGeral["codcomissao"].ToString()));
                if (dtComissao != null && dtComissao.Rows.Count > 0)
                {
                    DataRow drComis = dtComissao.Rows[0];
                    comis.CodigoComissao  = Convert.ToInt32(drComis["codcomissao"].ToString());
                    comis.DataPagamento   = Convert.ToDateTime(drComis["comis_datapagamento"].ToString());
                    comis.ValorTotal      = Convert.ToDouble(drComis["comis_valortotal"].ToString());
                    comis.ValorPago       = Convert.ToDouble(drComis["comis_valorpago"].ToString());
                    comis.ValorDevolver   = Convert.ToDouble(drComis["comis_valordevedor"].ToString());
                    comis.StatusComissao  = drComis["comis_statuscomissao"].ToString();
                    comis.StatusPagamento = drComis["comis_statuspagamento"].ToString();
                }
                //carrega objeto
                cp.CodigoContasaPagar = cod;
                cp.DataVencimento     = Convert.ToDateTime(drGeral["contpag_datavencimento"].ToString());
                cp.DataPagamento      = Convert.ToDateTime(drGeral["contpag_datapagamento"].ToString());
                cp.ValorTotal         = Convert.ToDouble(drGeral["contpag_valortotal"].ToString());
                cp.ValorPago          = Convert.ToDouble(drGeral["contpag_valorpago"].ToString());
                cp.Observacao         = drGeral["contpag_obs"].ToString();
                cp.Status             = Convert.ToBoolean(drGeral["contpag_status"].ToString());
                cp.Parcela            = Convert.ToInt32(drGeral["contpag_numparc"].ToString());
                cp.Compra             = compra;
                cp.Despesa            = desp;
                cp.Caixa          = caixa;
                cp.FormaPagamento = formap;
                cp.Comissao       = comis;
                cp.ValorParcela   = Convert.ToDouble(drGeral["contPag_valorParcela"].ToString());
                cp.CodParcela     = Convert.ToInt32(drGeral["contPag_Parcela"].ToString());
                this.cpagar       = cp;
                mskTotal.Text     = cp.ValorParcela + "";
                mskRestante.Text  = cp.ValorParcela + "";
                mskSubtotal.Text  = cp.ValorParcela + "";
                carregaDGV(listaItens);
            }
        }
        private void btnGravar_Click(object sender, EventArgs e)
        {
            try
            {
                Controller.ContasPagarController _ctrlContas = new Controller.ContasPagarController();
                Entidades.ContasPagar            contasPagar = new Entidades.ContasPagar();

                Controller.DespesaController despesaController = new Controller.DespesaController();
                Entidades.Despesa            despesa           = new Entidades.Despesa();

                Controller.CaixaController caixaController = new Controller.CaixaController();
                Entidades.Caixa            caixa           = new Entidades.Caixa();

                int codigo = 0;

                if (!string.IsNullOrWhiteSpace(ttbCodigo.Text))
                {
                    codigo = Convert.ToInt32(ttbCodigo.Text);
                }

                if (codigo == 0)
                {
                    codigo = _ctrlContas.retornaMax() + 1;
                }


                double valor = 0;
                if (!string.IsNullOrWhiteSpace(mskValor.Text))
                {
                    valor = Convert.ToDouble(mskValor.Text);
                }

                despesa.Codigo = Convert.ToInt32(cbbDespesa.SelectedValue);

                // Preenchendo Campos obj Contas a Pagar
                contasPagar.DataVencimento     = dtpVencimento.Value;
                contasPagar.DataPagamento      = DateTime.MaxValue;
                contasPagar.ValorTotal         = valor;
                contasPagar.ValorPago          = 0;
                contasPagar.Observacao         = ttbObservacao.Text;
                contasPagar.Status             = false;
                contasPagar.Parcela            = 1;
                contasPagar.Compra             = new Entidades.Compra();
                contasPagar.Despesa            = despesa;
                contasPagar.Caixa              = new Entidades.Caixa();
                contasPagar.FormaPagamento     = new Entidades.FormaPagamento();
                contasPagar.Comissao           = new Entidades.Comissao();
                contasPagar.ValorParcela       = valor;
                contasPagar.CodigoContasaPagar = codigo;
                contasPagar.CodParcela         = 1;


                int result = _ctrlContas.insereLancamento(contasPagar);
                if (result > 0)
                {
                    MessageBox.Show("Gravado com sucesso");
                    _limpaCampos();
                    _inicializa();
                }
                else
                {
                    MessageBox.Show("Erro ao gravar!");
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
        private void btnGerarCompra_Click(object sender, EventArgs e)
        {
            int    codigo = 0, despesa = 0, codPessoa = 0;
            bool   consignado = false;
            double valorTotal = 0;

            //verifica se tem codigo
            if (ttbCodigo.Text != null && ttbCodigo.Text != "")
            {
                codigo = Convert.ToInt32(ttbCodigo.Text.ToString());
            }
            // busca despesa compra;
            Controller.DespesaController _ctrlDespesa = new Controller.DespesaController();
            DataTable dtRetorno = _ctrlDespesa.retornaObjDespesa("Compra");

            if (dtRetorno != null && dtRetorno.Rows.Count > 0)
            {
                DataRow dr = dtRetorno.Rows[0];
                despesa = Convert.ToInt32(dr["coddespesa"].ToString());
            }
            //retorna pessoa pelo nome
            Controller.PessoaController pc = new PessoaController();
            DataTable dtPessoa             = pc.retornaPessoaCompra(ttbFornecedor.Text.ToString());

            if (dtPessoa != null && dtPessoa.Rows.Count > 0)
            {
                DataRow drPessoa = dtPessoa.Rows[0];
                codPessoa = Convert.ToInt32(drPessoa["codpessoa"].ToString());
            }
            //verifica consignado
            if (rbSim.Checked)
            {
                consignado = true;
            }
            else
            {
                consignado = false;
            }
            //convert o valor total
            valorTotal = Convert.ToDouble(totalCompra.Text.ToString());

            if (codigo > 0)
            {
                DialogResult resulta = MessageBox.Show("Deseja fazer um novo pedido", "caption", MessageBoxButtons.YesNo);
                if (resulta == DialogResult.Yes)
                {
                    //chama o gravar
                    int rest = cc.geravaCompra(0, despesa, DateTime.Now, "aberta", consignado, valorTotal, ttbObservacao.Text.ToString(), codPessoa, lista);


                    if (rest > 0)
                    {
                        MessageBox.Show("Gravado com sucesso!");

                        Views.Funcoes_Fundamentais.RF_F5.GerarContaPagar gerarContaPagar = new RF_F5.GerarContaPagar();
                        gerarContaPagar.ShowDialog();

                        limpaCampos();
                        inicializa(false);
                    }
                    else
                    {
                        MessageBox.Show("Erro ao gravar dados. Falta cadastrar Despesa Tipo: Compra");
                    }
                }
            }
            else
            {
                int rest = cc.geravaCompra(0, despesa, DateTime.Now, "aberta", consignado, valorTotal, ttbObservacao.Text.ToString(), codPessoa, lista);


                if (rest > 0)
                {
                    MessageBox.Show("Gravado com sucesso!");

                    Views.Funcoes_Fundamentais.RF_F5.GerarContaPagar gerarContaPagar = new RF_F5.GerarContaPagar();
                    gerarContaPagar.ShowDialog();

                    limpaCampos();
                    inicializa(false);
                }
                else
                {
                    MessageBox.Show("Erro ao gravar dados. Falta cadastrar Despesa Tipo: Compra");
                }
            }
        }
Exemple #7
0
        private void cancelarClose()
        {
            Controller.ContasPagarController contasPagarController = new Controller.ContasPagarController();

            Controller.CompraController compraController = new Controller.CompraController();
            Entidades.Compra            compra           = new Entidades.Compra();

            Controller.DespesaController despesaController = new Controller.DespesaController();
            Entidades.Despesa            despesa           = new Entidades.Despesa();

            Controller.PessoaController pessoaController = new Controller.PessoaController();
            Entidades.Pessoa            pessoa           = new Entidades.Pessoa();

            Controller.CaixaController caixaController = new Controller.CaixaController();
            Entidades.Caixa            caixa           = new Entidades.Caixa();
            string codPessoa          = "";
            double valorParcelasTotal = Convert.ToDouble(mskValorTotal.Text.ToString());

            DataTable dt = compraController.retornaCompra(codCompra);

            if (dt != null && dt.Rows.Count > 0)
            {
                DataRow dr = dt.Rows[0];
                compra        = new Entidades.Compra();
                compra.Codigo = Convert.ToInt32(dr["codcompra"].ToString());

                compra.Data       = Convert.ToDateTime(dr["comp_datacompra"].ToString());
                compra.Situacao   = dr["comp_situacao"].ToString();
                compra.Consignado = Convert.ToBoolean(dr["comp_statusconsignado"].ToString());
                compra.ValorTotal = Convert.ToDouble(dr["comp_valortotal"].ToString());
                compra.Obs        = dr["comp_obs"].ToString();

                codPessoa            = dr["codpessoa"].ToString();
                compra.Pessoa.Codigo = Convert.ToInt32(dr["codpessoa"].ToString());

                DataTable dtDespesa = despesaController.retornaObjDespesa("Compra");

                if (dtDespesa != null && dt.Rows.Count > 0)
                {
                    DataRow drDespesa = dtDespesa.Rows[0];
                    despesa.Codigo    = Convert.ToInt32(drDespesa["coddespesa"].ToString());
                    despesa.Descricao = drDespesa["desp_descricao"].ToString();
                    despesa.Status    = drDespesa["desp_status"].ToString();
                }

                compra.Despesa = despesa;

                DataTable dtPessoa = pessoaController.retornaPessoaCod(codPessoa);

                if (dtPessoa != null && dtPessoa.Rows.Count > 0)
                {
                    DataRow drPessoa = dtPessoa.Rows[0];
                    pessoa.Codigo = Convert.ToInt32(drPessoa["codPessoa"].ToString());
                    pessoa.Nome   = drPessoa["pes_nome"].ToString();
                }

                compra.Pessoa = pessoa;
            }

            DataTable dtCaixa = caixaController.retornacaixaAbetoDia();

            if (dtCaixa != null && dtCaixa.Rows.Count > 0)
            {
                DataRow drCaixa = dtCaixa.Rows[0];
                caixa.DataAbertura   = Convert.ToDateTime(drCaixa["caixa_datahoraabertura"].ToString());
                caixa.DataFechamento = Convert.ToDateTime(drCaixa["caixa_datahorafecha"].ToString());
                caixa.SaldoInicial   = Convert.ToDouble(drCaixa["caixa_saldoinicial"].ToString());
                caixa.Troco          = Convert.ToDouble(drCaixa["caixa_troco"].ToString());
                caixa.TotalEntrada   = Convert.ToDouble(drCaixa["caixa_totalentra"].ToString());
                caixa.TotalSaida     = Convert.ToDouble(drCaixa["caixa_totalsaida"].ToString());
            }



            if (dtpDataVencimento.Value.Date >= DateTime.Now.Date)
            {
                for (int i = 0; i < 1; i++)
                {
                    ContasPagar                = new Entidades.ContasPagar();
                    ContasPagar.Parcela        = 1;
                    ContasPagar.ValorTotal     = valorParcelasTotal;
                    ContasPagar.DataVencimento = dtpDataVencimento.Value.AddDays(30);
                    ContasPagar.CodParcela     = i + 1;
                    ContasPagar.ValorParcela   = valorParcelasTotal;
                    ContasPagar.Status         = false;
                    ContasPagar.Compra         = compra;
                    ContasPagar.Despesa        = despesa;
                    ContasPagar.Caixa          = caixa;
                    ContasPagar.FormaPagamento = new Entidades.FormaPagamento();
                    ContasPagar.Comissao       = new Entidades.Comissao();


                    listacontasPagars.Add(ContasPagar);
                }
                mskValorTotoalPagar.Text = Convert.ToString(valorParcelasTotal);
                mskValorTotoalPagar.Text = Convert.ToDouble(mskValorTotoalPagar.Text).ToString("###,###,##0.00");
            }



            int cod = contasPagarController.retornaMax();

            cod += 1;

            try
            {
                int  i     = 0;
                bool retur = false;

                while (i < listacontasPagars.Count && !retur)
                {
                    listacontasPagars.ElementAt(i).CodigoContasaPagar = cod;
                    listacontasPagars.ElementAt(i).Parcela            = listacontasPagars.Count;
                    int res = contasPagarController.insereLancamento(listacontasPagars.ElementAt(i));

                    if (res < 0)
                    {
                        MessageBox.Show("Erro");
                        retur = true;
                    }
                    else
                    {
                        i++;
                    }
                }
                if (listacontasPagars.ElementAt(0).DataVencimento.ToString("dd/MM/yyyy").Equals(DateTime.Now.ToString("dd/MM/yyyy")))
                {
                    mskValorTotal.Text = "";
                    Close();
                    Views.Funcoes_Fundamentais.QuitarDespesa quitarDespesas = new QuitarDespesa();
                    quitarDespesas.ShowDialog();
                }
                else
                {
                    MessageBox.Show("Parcelas geradas com sucesso!");
                    mskValorTotal.Text = "";
                    Close();
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Exemple #8
0
        private void btnIncluir_Click(object sender, EventArgs e)
        {
            Controller.ContasPagarController contasPagarController = new Controller.ContasPagarController();

            Controller.CompraController compraController = new Controller.CompraController();
            Entidades.Compra            compra           = new Entidades.Compra();

            Controller.DespesaController despesaController = new Controller.DespesaController();
            Entidades.Despesa            despesa           = new Entidades.Despesa();

            Controller.PessoaController pessoaController = new Controller.PessoaController();
            Entidades.Pessoa            pessoa           = new Entidades.Pessoa();

            Controller.CaixaController caixaController = new Controller.CaixaController();
            Entidades.Caixa            caixa           = new Entidades.Caixa();
            string    codPessoa = "";
            int       k         = listacontasPagars.Count;
            DataTable dt        = compraController.retornaCompra(codCompra);

            double valorParcelasTotal = 0;

            if (dt != null && dt.Rows.Count > 0)
            {
                DataRow dr = dt.Rows[0];
                compra        = new Entidades.Compra();
                compra.Codigo = Convert.ToInt32(dr["codcompra"].ToString());

                compra.Data       = Convert.ToDateTime(dr["comp_datacompra"].ToString());
                compra.Situacao   = dr["comp_situacao"].ToString();
                compra.Consignado = Convert.ToBoolean(dr["comp_statusconsignado"].ToString());
                compra.ValorTotal = Convert.ToDouble(dr["comp_valortotal"].ToString());
                compra.Obs        = dr["comp_obs"].ToString();

                codPessoa            = dr["codpessoa"].ToString();
                compra.Pessoa.Codigo = Convert.ToInt32(dr["codpessoa"].ToString());

                DataTable dtDespesa = despesaController.retornaObjDespesa("Compra");

                if (dtDespesa != null && dt.Rows.Count > 0)
                {
                    DataRow drDespesa = dtDespesa.Rows[0];
                    despesa.Codigo    = Convert.ToInt32(drDespesa["coddespesa"].ToString());
                    despesa.Descricao = drDespesa["desp_descricao"].ToString();
                    despesa.Status    = drDespesa["desp_status"].ToString();
                }

                compra.Despesa = despesa;

                DataTable dtPessoa = pessoaController.retornaPessoaCod(codPessoa);

                if (dtPessoa != null && dtPessoa.Rows.Count > 0)
                {
                    DataRow drPessoa = dtPessoa.Rows[0];
                    pessoa.Codigo = Convert.ToInt32(drPessoa["codPessoa"].ToString());
                    pessoa.Nome   = drPessoa["pes_nome"].ToString();
                }

                compra.Pessoa = pessoa;
            }

            DataTable dtCaixa = caixaController.retornacaixaAbetoDia();

            if (dtCaixa != null && dtCaixa.Rows.Count > 0)
            {
                DataRow drCaixa = dtCaixa.Rows[0];
                caixa.DataAbertura   = Convert.ToDateTime(drCaixa["caixa_datahoraabertura"].ToString());
                caixa.DataFechamento = Convert.ToDateTime(drCaixa["caixa_datahorafecha"].ToString());
                caixa.SaldoInicial   = Convert.ToDouble(drCaixa["caixa_saldoinicial"].ToString());
                caixa.Troco          = Convert.ToDouble(drCaixa["caixa_troco"].ToString());
                caixa.TotalEntrada   = Convert.ToDouble(drCaixa["caixa_totalentra"].ToString());
                caixa.TotalSaida     = Convert.ToDouble(drCaixa["caixa_totalsaida"].ToString());
            }

            if (!cbManual.Checked)
            {
                try
                {
                    if (string.IsNullOrWhiteSpace(ttbQtdeParcela.Text))
                    {
                        MessageBox.Show("Informe uma valor para a parcela ou 0");
                    }


                    if (dtpDataVencimento.Value.Date >= DateTime.Now.Date)
                    {
                        double valorParc = Convert.ToDouble(mskValorTotal.Text) / Convert.ToInt32(ttbQtdeParcela.Text);
                        valorParc = Convert.ToDouble(valorParc.ToString("#.##"));
                        double resto = Convert.ToDouble(mskValorTotal.Text) - (Convert.ToInt32(ttbQtdeParcela.Text) * valorParc);
                        if (resto > 0)
                        {
                            resto = Convert.ToDouble(resto.ToString("#.##"));
                        }

                        for (int i = 0; i < Convert.ToInt32(ttbQtdeParcela.Text); i++)
                        {
                            ContasPagar                = new Entidades.ContasPagar();
                            ContasPagar.Parcela        = Convert.ToInt32(ttbQtdeParcela.Text);
                            ContasPagar.ValorTotal     = Convert.ToDouble(mskValorTotal.Text);
                            ContasPagar.DataVencimento = dtpDataVencimento.Value.AddDays(i * 30);
                            ContasPagar.CodParcela     = i + 1;
                            if (i + 1 == Convert.ToInt32(ttbQtdeParcela.Text))
                            {
                                ContasPagar.ValorParcela = valorParc + resto;
                            }
                            else
                            {
                                ContasPagar.ValorParcela = valorParc;
                            }
                            ContasPagar.Status         = false;
                            ContasPagar.Compra         = compra;
                            ContasPagar.Despesa        = despesa;
                            ContasPagar.Caixa          = caixa;
                            ContasPagar.FormaPagamento = new Entidades.FormaPagamento();
                            ContasPagar.Comissao       = new Entidades.Comissao();


                            listacontasPagars.Add(ContasPagar);
                        }
                        valorParcelasTotal      += ContasPagar.Parcela * ContasPagar.ValorParcela;
                        mskValorTotoalPagar.Text = Convert.ToString(valorParcelasTotal);
                        mskValorTotoalPagar.Text = Convert.ToDouble(mskValorTotoalPagar.Text).ToString("###,###,##0.00");
                        carregaDGV(listacontasPagars);
                    }
                    else
                    {
                        MessageBox.Show("Data inválida.");
                    }
                }
                catch (Exception)
                {
                    throw;
                }
            }
            else
            {
                //insere parcela manual

                double total   = Convert.ToDouble(mskValorTotal.Text);
                double parcela = Convert.ToDouble(mskValorParcela.Text);
                parcela = Convert.ToDouble(parcela.ToString("#.##"));
                if (total >= somaValor(listacontasPagars) + parcela)
                {
                    ContasPagar                = new Entidades.ContasPagar();
                    ContasPagar.ValorTotal     = total;
                    ContasPagar.DataVencimento = dtpDataVencimento.Value;
                    ContasPagar.CodParcela     = k + 1;
                    ContasPagar.ValorParcela   = parcela;
                    ContasPagar.Status         = false;
                    ContasPagar.Compra         = compra;
                    ContasPagar.Despesa        = despesa;
                    ContasPagar.Caixa          = caixa;
                    ContasPagar.FormaPagamento = new Entidades.FormaPagamento();
                    ContasPagar.Comissao       = new Entidades.Comissao();
                    listacontasPagars.Add(ContasPagar);
                    carregaDGV(listacontasPagars);
                    valorParcelasTotal       = somaValor(listacontasPagars);
                    mskValorTotoalPagar.Text = Convert.ToString(valorParcelasTotal);
                    mskValorTotoalPagar.Text = Convert.ToDouble(mskValorTotoalPagar.Text).ToString("###,###,##0.00");
                }
                else
                {
                    MessageBox.Show("Valor ultrapassa o total");
                }
            }
        }