Beispiel #1
0
        private void dvg_parcelas_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex > -1)
            {
                lbl_linha.Text = e.RowIndex.ToString();

                int            PCA_CARNE = int.Parse(dvg_parcelas.Rows[e.RowIndex].Cells[0].Value.ToString());
                int            PCA_ITEM  = int.Parse(dvg_parcelas.Rows[e.RowIndex].Cells[1].Value.ToString());
                Parcelas_Pagar parcela   = new Parcelas_Pagar(PCA_CARNE, PCA_ITEM);

                if (parcela.PCA_VALOR_PAGO > 0)
                {
                    if (parcela.PCA_ITEM_NOVA_PARC > 0)
                    {
                        MessageBox.Show("Impossível estornar parcela parcial! É necessário excluir parcela " + parcela.PCA_ITEM_NOVA_PARC.ToString() + " antes.", "Joincar", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else if (MessageBox.Show("Deseja realmente estornar esta parcela?", "Joincar", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        Contas_Pagar contas_pagar = new Contas_Pagar(parcela.PCA_CARNE);
                        contas_pagar.CAP_TOTAL -= parcela.PCA_VALOR_PAGO;
                        contas_pagar.CAP_TOTAL += parcela.PCA_VALOR;
                        contas_pagar.Salvar();

                        parcela.PCA_VALOR_PAGO = 0;
                        parcela.PCA_DATA_PAGTO = DateTime.Parse("01/01/1800");
                        parcela.Deletar();
                        parcela.Salvar();

                        Fornecedor fornecedor = new Fornecedor(contas_pagar.CAP_FORNECEDOR);
                        Log        log        = new Log();
                        log.LOG_USUARIO   = Global.FUN_CODIGO;
                        log.LOG_DATA      = DateTime.Now;
                        log.LOG_TELA      = this.Text;
                        log.LOG_DESCRICAO = "Estornou o pagamento da parcela: " + parcela.PCA_ITEM.ToString() + " e carnê: " + parcela.PCA_CARNE.ToString() + " no valor: " + parcela.PCA_VALOR_PAGO_FORMATADO + " do fornecedor: " + fornecedor.FOR_NOME + ".";
                        log.Save();

                        Carregar_DGV();

                        if (Configuracoes.Default.Mensagem_Gravar == true)
                        {
                            MessageBox.Show("Estorno efetuado com sucesso!", "Joincar", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }
                }
                else
                {
                    this.Enabled = false;

                    Frm_Pagar_Parcelas form = new Frm_Pagar_Parcelas(PCA_CARNE, PCA_ITEM);
                    form.Show();
                }
            }
        }
Beispiel #2
0
        protected virtual Contas_Pagar LoadFromControls()
        {
            Contas_Pagar Contas_Pagar = new Contas_Pagar();

            if (Id != null)
            {
                Contas_Pagar.Id = Convert.ToInt32(txtId.Text);

                Contas_Pagar.inclusao = Convert.ToDateTime(txtDtInclusao.Text);

                Contas_Pagar.usuario_inclusao = txtUsuario.Text;
            }

            if (!string.IsNullOrEmpty(txtIdFilial.Text))
            {
                Contas_Pagar.Id_filial = Convert.ToInt64(txtIdFilial.Text);
            }

            if (!string.IsNullOrEmpty(txtIdEmpresa.Text))
            {
                Contas_Pagar.Id_empresa = Convert.ToInt64(txtIdEmpresa.Text);
            }

            Contas_Pagar.Id_fornecedor = Convert.ToInt64(txtIdCliente.Text);
            Contas_Pagar.categoria     = Convert.ToInt32(cbCategoria.SelectedValue);
            Contas_Pagar.Documento     = txtDocumento.Text;

            txtDtVencimento.TextMaskFormat = MaskFormat.IncludePromptAndLiterals;
            Contas_Pagar.vencimento        = Convert.ToDateTime(txtDtVencimento.Text);
            txtDtVencimento.TextMaskFormat = MaskFormat.ExcludePromptAndLiterals;

            txtDtPrevPagamento.TextMaskFormat = MaskFormat.IncludePromptAndLiterals;
            Contas_Pagar.previsao             = Convert.ToDateTime(txtDtPrevPagamento.Text);
            txtDtPrevPagamento.TextMaskFormat = MaskFormat.ExcludePromptAndLiterals;

            txtDtPagamento.TextMaskFormat = MaskFormat.ExcludePromptAndLiterals;
            if (!string.IsNullOrEmpty(txtDtPagamento.Text))
            {
                txtDtPagamento.TextMaskFormat = MaskFormat.IncludePromptAndLiterals;
                Contas_Pagar.pagamento        = Convert.ToDateTime(txtDtPagamento.Text);
                txtDtPagamento.TextMaskFormat = MaskFormat.ExcludePromptAndLiterals;
            }

            Contas_Pagar.observacao = txtObs.Text;
            Contas_Pagar.pago       = chkPago.Checked ? "S" : "N";

            Contas_Pagar.valor = Convert.ToDecimal(txtValor.Text);


            return(Contas_Pagar);
        }
Beispiel #3
0
 protected override void excluirRegistro(int Id)
 {
     base.excluirRegistro(Id);
     Contas_PagarBLL = new Contas_PagarBLL();
     try
     {
         if (Convert.ToInt32(dgvDados[0, dgvDados.CurrentRow.Index].Value) > 0)
         {
             Contas_Pagar Contas_Pagar = Contas_PagarBLL.Localizar(Convert.ToInt32(dgvDados[0, dgvDados.CurrentRow.Index].Value));
             if (MessageBox.Show("Deseja realmente excluir o registro : " + Contas_Pagar.Id.ToString() + " - " + Contas_Pagar.Documento, Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
             {
                 Contas_PagarBLL.ExcluirContas_Pagar(Contas_Pagar);
             }
         }
     }
     finally
     {
         Contas_PagarBLL.Dispose();
     }
 }
Beispiel #4
0
        private void Carregar_Cadastro(int CAP_CODIGO)
        {
            Contas_Pagar contas_pagar = new Contas_Pagar(CAP_CODIGO);

            if (contas_pagar.CAP_CODIGO > 0)
            {
                tb_codigo.Text = contas_pagar.CAP_CODIGO.ToString();
                try
                {
                    cb_fornecedor.SelectedValue = contas_pagar.CAP_FORNECEDOR;
                }
                catch (Exception)
                {
                    cb_fornecedor.SelectedIndex = 0;
                }
                tb_compra.Text = contas_pagar.CAP_COMPRA_FORMATADO;
                try
                {
                    cb_lancamento.SelectedValue = contas_pagar.CAP_LANCAMENTO;
                }
                catch (Exception)
                {
                    cb_lancamento.SelectedIndex = 0;
                }
                Carregar_Grid(new Parcelas_PagarCollection(CAP_CODIGO));
                cheque_pagar_todos = new Cheques_PagarCollection(CAP_CODIGO, Cheques_PagarLoadType.LoadByCarne);

                tb_codigo.Enabled   = false;
                btn_excluir.Enabled = true;
                btn_cheque.Enabled  = false;
            }
            else
            {
                MessageBox.Show("Registro não encontrado!", "3Pratos", MessageBoxButtons.OK, MessageBoxIcon.Error);
                tb_codigo.Text = string.Empty;
            }
        }
Beispiel #5
0
        protected override bool salvar(object sender, EventArgs e)
        {
            if (epValidaDados.Validar())
            {
                Contas_Pagar Contas_Pagar = new Contas_Pagar();
                Contas_PagarBLL = new Contas_PagarBLL();

                Contas_PagarBLL.UsuarioLogado = Program.usuario_logado;

                Contas_Pagar = LoadFromControls();

                if (Id != null)
                {
                    Contas_PagarBLL.AlterarContas_Pagar(Contas_Pagar);
                }
                else
                {
                    Contas_PagarBLL.AdicionarContas_Pagar(Contas_Pagar);
                }

                if (Contas_Pagar.Id != 0)
                {
                    Id         = Contas_Pagar.Id;
                    txtId.Text = Contas_Pagar.Id.ToString();

                    btnPagamento.Enabled = !chkPago.Checked;
                    btnPagamento.TabStop = !chkPago.Checked;
                    btnPagamento.Visible = !chkPago.Checked;
                }
                txtDocumento.Focus();
                return(true);
            }
            else
            {
                return(false);
            }
        }
Beispiel #6
0
        private void btn_excluir_Click(object sender, EventArgs e)
        {
            if (tb_compra.Text == "")
            {
                if (tb_codigo.Text != "" && MessageBox.Show("Deseja realmente excluir este contas a pagar?", "3Pratos", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    Contas_Pagar contas_pagar = new Contas_Pagar(int.Parse(tb_codigo.Text));

                    if (contas_pagar.CAP_CODIGO > 0)
                    {
                        parcela_todos.Deletar(contas_pagar.CAP_CODIGO);
                        contas_pagar.Deletar();

                        Log log = new Log();
                        log.LOG_USUARIO   = Global.FUN_CODIGO;
                        log.LOG_DATA      = DateTime.Now;
                        log.LOG_TELA      = this.Text;
                        log.LOG_DESCRICAO = "Excluiu o contas a pagar de código: " + contas_pagar.CAP_CODIGO.ToString() + " e fornecedor: " + cb_fornecedor.Text + ".";
                        log.Save();

                        Limpar();

                        if (Configuracoes.Default.Mensagem_Gravar == true)
                        {
                            MessageBox.Show("Exclusão efetuada com sucesso!", "3Pratos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }

                        cb_fornecedor.Focus();
                    }
                }
            }
            else
            {
                MessageBox.Show("Exclusão permitida apenas com o cancelamento da compra!", "3Pratos", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Beispiel #7
0
        public void Gravar(bool Mensagem_Gravar)
        {
            Contas_Pagar contas_pagar;

            if (tb_codigo.Text == string.Empty)
            {
                contas_pagar              = new Contas_Pagar();
                contas_pagar.CAP_OBS      = "";
                contas_pagar.CAP_CADASTRO = DateTime.Now;

                if (tb_compra.Text != "")
                {
                    contas_pagar.CAP_COMPRA = int.Parse(tb_compra.Text);
                }
                else
                {
                    contas_pagar.CAP_COMPRA = 0;
                }
            }
            else
            {
                contas_pagar = new Contas_Pagar(int.Parse(tb_codigo.Text));
            }

            try
            {
                contas_pagar.CAP_FORNECEDOR = int.Parse(cb_fornecedor.SelectedValue.ToString());
            }
            catch (Exception)
            {
                contas_pagar.CAP_FORNECEDOR = 0;
            }
            try
            {
                contas_pagar.CAP_LANCAMENTO = int.Parse(cb_lancamento.SelectedValue.ToString());
            }
            catch (Exception)
            {
                contas_pagar.CAP_LANCAMENTO = 0;
            }
            contas_pagar.CAP_TOTAL = float.Parse(tb_total_geral.Text);
            contas_pagar.Salvar();

            Log log = new Log();

            log.LOG_USUARIO = Global.FUN_CODIGO;
            log.LOG_DATA    = DateTime.Now;
            log.LOG_TELA    = this.Text;
            if (tb_codigo.Text == string.Empty)
            {
                log.LOG_DESCRICAO = "Cadastrou o contas a pagar de código: " + contas_pagar.CAP_CODIGO.ToString() + " e fornecedor: " + cb_fornecedor.Text + ".";
            }
            else
            {
                log.LOG_DESCRICAO = "Alterou o contas a pagar de código: " + contas_pagar.CAP_CODIGO.ToString() + " e fornecedor: " + cb_fornecedor.Text + ".";
            }
            log.Save();

            parcela_todos.Deletar(contas_pagar.CAP_CODIGO);
            cheque_pagar_todos.Deletar(contas_pagar.CAP_CODIGO);

            foreach (DataGridViewRow row in dgv_parcelas.Rows)
            {
                parcela_todos[row.Index].PCA_CARNE   = contas_pagar.CAP_CODIGO;
                parcela_todos[row.Index].PCA_NUM_DOC = row.Cells["PCA_NUM_DOC"].Value.ToString();
                try
                {
                    parcela_todos[row.Index].PCA_VALOR = float.Parse(row.Cells["PCA_VALOR_FORMATADO"].Value.ToString());
                }
                catch (Exception)
                {
                    parcela_todos[row.Index].PCA_VALOR = 0;
                }
                try
                {
                    parcela_todos[row.Index].PCA_VENC = DateTime.Parse(row.Cells["PCA_VENC_FORMATADO"].Value.ToString());
                }
                catch (Exception)
                {
                    parcela_todos[row.Index].PCA_VENC = DateTime.Today;
                }
                parcela_todos[row.Index].PCA_OBS = row.Cells["PCA_OBS"].Value.ToString();
                parcela_todos[row.Index].Salvar();

                if (parcela_todos[row.Index].PCA_TIPO == 3)
                {
                    foreach (Cheques_Pagar cheque_pagar in cheque_pagar_todos)
                    {
                        if (parcela_todos[row.Index].PCA_ITEM == cheque_pagar.CHP_ITEM)
                        {
                            cheque_pagar.CHP_CARNE   = contas_pagar.CAP_CODIGO;
                            cheque_pagar.CHP_NUM_DOC = parcela_todos[row.Index].PCA_NUM_DOC;
                            cheque_pagar.CHP_VALOR   = parcela_todos[row.Index].PCA_VALOR;
                            cheque_pagar.CHP_VENC    = parcela_todos[row.Index].PCA_VENC;
                            cheque_pagar.CHP_OBS     = parcela_todos[row.Index].PCA_OBS;
                            cheque_pagar.Salvar();
                            break;
                        }
                    }
                }
            }

            if (Configuracoes.Default.Mensagem_Gravar == true && Mensagem_Gravar == true)
            {
                if (tb_codigo.Text == string.Empty)
                {
                    MessageBox.Show("Cadastro efetuado com sucesso!", "3Pratos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    MessageBox.Show("Alteração efetuada com sucesso!", "3Pratos", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }

            tb_codigo.Text      = contas_pagar.CAP_CODIGO.ToString();
            tb_codigo.Enabled   = false;
            btn_excluir.Enabled = true;

            cb_fornecedor.Focus();
        }
Beispiel #8
0
        private void btn_confirmar_Click(object sender, EventArgs e)
        {
            if (tb_valor.Text == "")
            {
                tb_valor.Text = "0,00";
            }
            if (float.Parse(tb_valor.Text) == 0 || float.Parse(tb_tipo_valor.Text) == 0)
            {
                MessageBox.Show("Valor precisa ser maior que zero!", "Joincar", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                tb_valor.Focus();
            }
            else if (Configuracoes.Default.Tipo_Pagto == 0 && rb_completa.Checked && float.Parse(tb_valor.Text) < parcela.PCA_VALOR)
            {
                MessageBox.Show("Valor pago precisa ser maior/igual que o valor total, em caso de pagamento completo!", "Joincar", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                tb_valor.Focus();
            }
            else if (Configuracoes.Default.Tipo_Pagto == 0 && rb_nova_parc.Checked && float.Parse(tb_valor.Text) >= parcela.PCA_VALOR)
            {
                MessageBox.Show("Valor pago precisa ser menor que o valor total, em caso de pagamento com nova parcela!", "Joincar", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                tb_valor.Focus();
            }
            else if (Configuracoes.Default.Tipo_Pagto == 0 && rb_com_desc.Checked && float.Parse(tb_valor.Text) >= parcela.PCA_VALOR)
            {
                MessageBox.Show("Valor pago precisa ser menor que o valor total, em caso de pagamento com desconto!", "Joincar", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                tb_valor.Focus();
            }
            else
            {
                Contas_Pagar contas_pagar = new Contas_Pagar(parcela.PCA_CARNE);
                Fornecedor   fornecedor   = new Fornecedor(contas_pagar.CAP_FORNECEDOR);
                Log          log          = new Log();
                log.LOG_USUARIO = Global.FUN_CODIGO;
                log.LOG_DATA    = DateTime.Now;
                log.LOG_TELA    = this.Text;
                //tb_pagto.Text = DateTime.Now.ToString("dd/MM/yyyy");

                if (Configuracoes.Default.Tipo_Pagto == 0)
                {
                    if (rb_nova_parc.Checked)
                    {
                        Parcelas_PagarCollection parcela_todos = new Parcelas_PagarCollection(parcela.PCA_CARNE);
                        Parcelas_Pagar           parcela_nova  = new Parcelas_Pagar();

                        if (tb_valor_nova_parc.Text == "")
                        {
                            tb_valor_nova_parc.Text = "0,00";
                        }
                        parcela_nova.PCA_CARNE      = parcela.PCA_CARNE;
                        parcela_nova.PCA_ITEM       = parcela_todos.Count + 1;
                        parcela_nova.PCA_DATA_PAGTO = DateTime.Parse("01/01/1800");
                        parcela_nova.PCA_NUM_DOC    = "";
                        parcela_nova.PCA_OBS        = "Parcela gerada apartir do pagto parcial da parcela " + parcela.PCA_ITEM.ToString();
                        parcela_nova.PCA_TIPO       = cb_tipo_nova_parc.SelectedIndex;
                        parcela_nova.PCA_VALOR      = float.Parse(tb_valor_nova_parc.Text);
                        parcela_nova.PCA_VALOR_PAGO = 0;
                        parcela_nova.PCA_VENC       = DateTime.Parse(tb_venc_nova_parc.Text);
                        parcela_nova.Salvar();

                        contas_pagar.CAP_TOTAL    += float.Parse(tb_valor_nova_parc.Text);
                        parcela.PCA_ITEM_NOVA_PARC = parcela_nova.PCA_ITEM;
                    }
                    contas_pagar.CAP_TOTAL -= parcela.PCA_VALOR;
                    contas_pagar.CAP_TOTAL += float.Parse(tb_valor.Text);
                    contas_pagar.Salvar();

                    parcela.PCA_VALOR      = float.Parse(tb_valor.Text);
                    parcela.PCA_VALOR_PAGO = float.Parse(tb_valor.Text);
                    if (rb_completa.Checked)
                    {
                        log.LOG_DESCRICAO     = "Baixou o pagamento completo da parcela: " + parcela.PCA_ITEM.ToString() + " e carnê: " + parcela.PCA_CARNE.ToString() + " no valor: " + parcela.PCA_VALOR_PAGO_FORMATADO + " do fornecedor: " + fornecedor.FOR_NOME + ".";
                        parcela.PCA_DESCONTO  = 0;
                        parcela.PCA_ACRESCIMO = float.Parse(tb_multa.Text);
                    }
                    else if (rb_nova_parc.Checked)
                    {
                        log.LOG_DESCRICAO     = "Baixou o pagamento parcial da parcela: " + parcela.PCA_ITEM.ToString() + " e carnê: " + parcela.PCA_CARNE.ToString() + " no valor: " + parcela.PCA_VALOR_PAGO_FORMATADO + " do fornecedor: " + fornecedor.FOR_NOME + ".";
                        parcela.PCA_DESCONTO  = 0;
                        parcela.PCA_ACRESCIMO = 0;
                    }
                    else
                    {
                        log.LOG_DESCRICAO     = "Baixou o pagamento com desconto da parcela: " + parcela.PCA_ITEM.ToString() + " e carnê: " + parcela.PCA_CARNE.ToString() + " no valor: " + parcela.PCA_VALOR_PAGO_FORMATADO + " do fornecedor: " + fornecedor.FOR_NOME + ".";
                        parcela.PCA_DESCONTO  = float.Parse(tb_multa.Text);
                        parcela.PCA_ACRESCIMO = 0;
                    }
                    log.Save();

                    parcela.PCA_DATA_PAGTO = Convert.ToDateTime(tb_pagto.Text);
                    parcela.PCA_OBS        = tb_obs.Text;
                    parcela.Deletar();
                    parcela.Salvar();

                    if (cheque_pagar.CHP_CODIGO > 0 && parcela.PCA_TIPO == 3)
                    {
                        cheque_pagar.CHP_VALOR = float.Parse(tb_valor.Text);
                        cheque_pagar.CHP_OBS   = tb_obs.Text;
                        cheque_pagar.Salvar();
                    }
                }
                else
                {
                    contas_pagar.CAP_TOTAL -= parcela.PCA_VALOR;
                    contas_pagar.CAP_TOTAL += float.Parse(tb_tipo_valor.Text);
                    contas_pagar.Salvar();

                    parcela.PCA_VALOR      = float.Parse(tb_tipo_valor.Text);
                    parcela.PCA_DESCONTO   = float.Parse(tb_tipo_desc.Text);
                    parcela.PCA_ACRESCIMO  = float.Parse(tb_tipo_acresc.Text);
                    parcela.PCA_VALOR_PAGO = float.Parse(tb_tipo_valor_pago.Text);
                    parcela.PCA_DATA_PAGTO = Convert.ToDateTime(tb_pagto.Text);
                    parcela.PCA_OBS        = tb_obs.Text;
                    parcela.Deletar();
                    parcela.Salvar();

                    if (cheque_pagar.CHP_CODIGO > 0 && parcela.PCA_TIPO == 3)
                    {
                        cheque_pagar.CHP_VALOR = float.Parse(tb_tipo_valor.Text);
                        cheque_pagar.CHP_OBS   = tb_obs.Text;
                        cheque_pagar.Salvar();
                    }
                    log.LOG_DESCRICAO = "Baixou o pagamento ";
                    if (parcela.PCA_DESCONTO > 0)
                    {
                        log.LOG_DESCRICAO += "com desconto ";
                    }
                    if (parcela.PCA_ACRESCIMO > 0)
                    {
                        if (log.LOG_DESCRICAO.Contains("desconto"))
                        {
                            log.LOG_DESCRICAO += "/acréscimo ";
                        }
                        else
                        {
                            log.LOG_DESCRICAO += "com acréscimo ";
                        }
                    }
                    log.LOG_DESCRICAO += "da parcela: " + parcela.PCA_ITEM.ToString() + " e carnê: " + parcela.PCA_CARNE.ToString() + " no valor: " + parcela.PCA_VALOR_PAGO_FORMATADO + " do fornecedor: " + fornecedor.FOR_NOME + ".";;
                    log.Save();
                }
                this.Close();
            }
        }
Beispiel #9
0
        private void processaPagamento()
        {
            decimal saldo         = 0;
            decimal saldo_inicial = 0;
            decimal entradas      = 0;
            decimal saidas        = 0;

            try
            {
                //Vamos realizar o processo de pagamento do contas a pagar.
                //Primeiro vamos ver se existe saldo no caixa para o pagamento da conta a pagar
                if (!chkPago.Checked)
                {
                    Livro_CaixaBLL     Livro_CaixaBLL = new Livro_CaixaBLL();
                    List <Livro_Caixa> lstLc          = null;
                    if (Id_filial != null)
                    {
                        lstLc = Livro_CaixaBLL.getLivro_Caixa(p => p.Id_filial == Id_filial & DbFunctions.TruncateTime(p.data) == DbFunctions.TruncateTime(DateTime.Now), true);
                    }
                    else
                    {
                        lstLc = Livro_CaixaBLL.getLivro_Caixa(p => DbFunctions.TruncateTime(p.data) == DbFunctions.TruncateTime(DateTime.Now), true);
                    }


                    Livro_Caixa Livro_Caixa = null;

                    if (lstLc.Count > 0)
                    {
                        Livro_Caixa = lstLc.First();
                    }
                    else
                    {
                        throw new Exception("Não existe movimentação aberta para realizar o pagamento.");
                    }

                    if (Livro_Caixa != null)
                    {
                        if (Livro_Caixa.status != "F")
                        {
                            entradas      = Convert.ToDecimal(Livro_Caixa.item_livro_caixa.Where(p => p.tipo == "E").Sum(c => c.valor));
                            saidas        = Convert.ToDecimal(Livro_Caixa.item_livro_caixa.Where(p => p.tipo == "S").Sum(c => c.valor));
                            saldo_inicial = Convert.ToDecimal(Livro_Caixa.saldo_inicial);

                            //saldo obtido vamos comparar verificar se é suficinete para pagar
                            saldo = ((saldo_inicial + entradas) - (-1 * saidas));

                            decimal valor = Convert.ToDecimal(txtValor.Text);

                            if (valor <= saldo)
                            {
                                //Vamos registrar um item no livro de caixa e atualizar o conta a pagar
                                //com a data de pagamento e o flag de pago.
                                Item_Livro_CaixaBLL Item_LivroBLL = new Item_Livro_CaixaBLL();
                                try
                                {
                                    Item_LivroBLL.UsuarioLogado = Program.usuario_logado;

                                    Item_Livro_Caixa Item_Livro = new Item_Livro_Caixa();

                                    Item_Livro.Id_contaspagar = Convert.ToInt64(Id);
                                    Item_Livro.Id_empresa     = Program.usuario_logado.Id_empresa;

                                    if (Id_filial != null)
                                    {
                                        Item_Livro.Id_filial = Id_filial;
                                    }

                                    Item_Livro.inclusao         = DateTime.Now;
                                    Item_Livro.tipo             = "S";
                                    Item_Livro.descricao        = "Contas a Pagar Documento: " + txtDocumento.Text;
                                    Item_Livro.usuario_inclusao = Program.usuario_logado.nome;
                                    Item_Livro.valor            = valor;
                                    Item_Livro.Id_livro         = Livro_Caixa.Id;

                                    Item_LivroBLL.AdicionarItem_Livro_Caixa(Item_Livro);

                                    if (Item_Livro.Id > 0)
                                    {
                                        Contas_PagarBLL = new Contas_PagarBLL();
                                        Contas_PagarBLL.UsuarioLogado = Program.usuario_logado;
                                        Contas_Pagar cp = Contas_PagarBLL.Localizar(Id);

                                        cp.pago              = "S";
                                        cp.pagamento         = DateTime.Now;
                                        cp.usuario_alteracao = Program.usuario_logado.nome;
                                        cp.alteracao         = DateTime.Now;

                                        Contas_PagarBLL.AlterarContas_Pagar(cp);

                                        LoadToControls();

                                        chkPago.Checked      = true;
                                        chkPago.Enabled      = false;
                                        chkPago.Visible      = true;
                                        btnPagamento.Enabled = false;

                                        btnIncluir.Top     = 40;
                                        btnIncluir.Visible = true;
                                        MessageBox.Show("Processo de Pagamento realizado com sucesso.", Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    }
                                }
                                catch (Exception)
                                {
                                    throw;
                                }
                            }
                            else
                            {
                                throw new Exception("saldo em caixa menor que o valor para pagamento.");
                            }
                        }
                        else
                        {
                            throw new Exception("Não será possivel realizar o pagamento pois a movimentação diária está Fechada");
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                string mensagem = TrataException.getAllMessage(ex);
                MessageBox.Show(mensagem, Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Beispiel #10
0
        protected override void LoadToControls()
        {
            base.LoadToControls();

            if (Id != null)
            {
                Contas_PagarBLL = new Contas_PagarBLL();
                Contas_Pagar Contas_Pagar = Contas_PagarBLL.Localizar(Id);

                if (Contas_Pagar != null)
                {
                    txtId.Text = Contas_Pagar.Id.ToString();
                    txtCodCliIntegracao.Text  = Contas_Pagar.cliente.codigo_cliente_integracao;
                    txtClienteNome.Text       = Contas_Pagar.cliente.razao_social;
                    txtIdCliente.Text         = Contas_Pagar.Id_fornecedor.ToString();
                    cbCategoria.SelectedValue = Convert.ToInt64(Contas_Pagar.categoria);
                    txtDocumento.Text         = Contas_Pagar.Documento;
                    txtValor.Text             = Contas_Pagar.valor.Value.ToString("N2");
                    txtDtVencimento.Text      = Contas_Pagar.vencimento.Value.ToShortDateString();
                    txtDtPrevPagamento.Text   = Contas_Pagar.previsao.Value.ToShortDateString();
                    if (Contas_Pagar.pagamento != null)
                    {
                        txtDtPagamento.Text = Contas_Pagar.previsao.Value.ToShortDateString();
                    }
                    txtObs.Text = Contas_Pagar.observacao;

                    chkPago.Checked = Contas_Pagar.pago == "S";
                    chkPago.Enabled = false;
                    chkPago.Visible = chkPago.Checked;

                    txtUsuario.Text    = Contas_Pagar.usuario_inclusao;
                    txtDtInclusao.Text = Contas_Pagar.inclusao.Value.ToShortDateString();
                    txtIdEmpresa.Text  = Contas_Pagar.Id_empresa.ToString();
                    txtIdFilial.Text   = Contas_Pagar.Id_filial.ToString();
                    txtObs.Text        = Contas_Pagar.observacao;

                    //Habilitando o botão de pagamento
                    if (Contas_Pagar.pago == "N")
                    {
                        btnPagamento.Enabled = true;
                        btnPagamento.Visible = true;
                        btnPagamento.TabStop = true;
                    }
                    else
                    {
                        btnPagamento.Enabled = false;
                        btnPagamento.Visible = false;
                        btnPagamento.TabStop = false;
                    }
                }
            }
            else
            {
                if (Parametro.UtilizaFilial())
                {
                    if (Program.usuario_logado.Id_filial != null)
                    {
                        Id_filial = Program.usuario_logado.Id_filial;
                    }
                    else
                    {
                        frmUtilSelecionarFilial frm = new frmUtilSelecionarFilial();

                        if (frm.ExibeDialogo() == DialogResult.OK)
                        {
                            Id_filial = frm.Id;
                        }

                        frm.Dispose();
                    }

                    txtIdFilial.Text = Id_filial.ToString();
                }
                else
                {
                    txtIdFilial.Text = string.Empty;
                }

                txtIdEmpresa.Text = Program.usuario_logado.Id_empresa.ToString();
            }
        }