예제 #1
0
        protected override void LoadToControls()
        {
            base.LoadToControls();

            if (Id != null)
            {
                Item_Livro_CaixaBLL = new Item_Livro_CaixaBLL();
                Item_Livro_Caixa Item_Livro_Caixa = Item_Livro_CaixaBLL.Localizar(Id);

                if (Item_Livro_Caixa != null)
                {
                    txtId.Text             = Item_Livro_Caixa.Id.ToString();
                    Id_Livro_Caixa         = Item_Livro_Caixa.Id_livro;
                    txtId_Livro_Caixa.Text = Item_Livro_Caixa.Id_livro.ToString();
                    if (Item_Livro_Caixa.tipo == "E")
                    {
                        cbTipo.SelectedValue = 1;
                    }
                    else if (Item_Livro_Caixa.tipo == "S")
                    {
                        cbTipo.SelectedValue = 2;
                    }
                    txtDescricao.Text        = Item_Livro_Caixa.descricao;
                    txtDocumento.Text        = Item_Livro_Caixa.documento;
                    txtUsuario_Inclusao.Text = Item_Livro_Caixa.usuario_inclusao;
                    if (Item_Livro_Caixa.inclusao.Value != null)
                    {
                        txtInclusao.Text = Item_Livro_Caixa.inclusao.Value.ToShortDateString();
                    }
                    txtValor.Text = Item_Livro_Caixa.valor.Value.ToString("N2");

                    txtDocumento.Focus();
                }
            }
        }
예제 #2
0
 protected override void excluirRegistro(int Id)
 {
     base.excluirRegistro(Id);
     Item_Livro_CaixaBLL = new Item_Livro_CaixaBLL();
     try
     {
         if (Convert.ToInt32(dgvDados[0, dgvDados.CurrentRow.Index].Value) > 0)
         {
             Item_Livro_Caixa Item_Livro_Caixa = Item_Livro_CaixaBLL.Localizar(Convert.ToInt32(dgvDados[0, dgvDados.CurrentRow.Index].Value));
             if (MessageBox.Show("Deseja realmente excluir o registro : " + Item_Livro_Caixa.Id.ToString() + " - " + Item_Livro_Caixa.documento, Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
             {
                 Item_Livro_CaixaBLL.ExcluirItem_Livro_Caixa(Item_Livro_Caixa);
             }
         }
     }
     finally
     {
         Item_Livro_CaixaBLL.Dispose();
     }
 }
예제 #3
0
        protected override bool salvar(object sender, EventArgs e)
        {
            if (epValidaDados.Validar(true))
            {
                Item_Livro_Caixa Item_Livro_Caixa = new Item_Livro_Caixa();
                Item_Livro_CaixaBLL = new Item_Livro_CaixaBLL();

                Item_Livro_CaixaBLL.UsuarioLogado = Program.usuario_logado;

                Item_Livro_Caixa = LoadFromControls();

                if (Id != null)
                {
                    Item_Livro_Caixa.usuario_alteracao = Program.usuario_logado.nome;
                    Item_Livro_Caixa.alteracao         = DateTime.Now;
                    Item_Livro_CaixaBLL.AlterarItem_Livro_Caixa(Item_Livro_Caixa);
                }
                else
                {
                    Item_Livro_Caixa.usuario_inclusao = Program.usuario_logado.nome;
                    Item_Livro_Caixa.inclusao         = DateTime.Now;
                    Item_Livro_CaixaBLL.AdicionarItem_Livro_Caixa(Item_Livro_Caixa);
                }

                if (Item_Livro_Caixa.Id != 0)
                {
                    Id         = Item_Livro_Caixa.Id;
                    txtId.Text = Item_Livro_Caixa.Id.ToString();
                }
                txtDescricao.Focus();
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #4
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);
            }
        }
예제 #5
0
        protected override void ordenaCelula(object sender, DataGridViewCellMouseEventArgs e)
        {
            base.ordenaCelula(sender, e);
            Item_Livro_CaixaBLL = new Item_Livro_CaixaBLL();

            DataGridViewColumn col    = dgvFiltro.Columns[e.ColumnIndex];
            DataGridViewColumn colAnt = dgvFiltro.Columns[colOrdem];

            ListSortDirection direction;

            switch (col.HeaderCell.SortGlyphDirection)
            {
            case SortOrder.None:
                direction = ListSortDirection.Ascending;
                break;

            case SortOrder.Ascending:
                direction = ListSortDirection.Ascending;
                break;

            case SortOrder.Descending:
                direction = ListSortDirection.Descending;
                break;

            default:
                direction = ListSortDirection.Ascending;
                break;
            }


            if (colOrdem == e.ColumnIndex)
            {
                if (direction == ListSortDirection.Ascending)
                {
                    direction = ListSortDirection.Descending;
                }
                else
                {
                    direction = ListSortDirection.Ascending;
                    col.HeaderCell.SortGlyphDirection = SortOrder.None;
                }
            }
            else
            {
                direction = ListSortDirection.Ascending;
                colAnt.HeaderCell.SortGlyphDirection = SortOrder.None;
            }

            switch (e.ColumnIndex)
            {
            case COL_TIPO:
            {
                List <Item_Livro_Caixa> Item_Livro_CaixaList = Item_Livro_CaixaBLL.getItem_Livro_Caixa(p => p.Id_livro == Id_Livro_Caixa, direction != ListSortDirection.Ascending, deslocamento, tamanhoPagina, out totalReg, c => c.tipo);
                dgvDados.DataSource = Item_Livro_CaixaBLL.ToList_Item_Livro_CaixaView(Item_Livro_CaixaList);
            }
            break;

            case COL_DOCUMENTO:
            {
                List <Item_Livro_Caixa> Item_Livro_CaixaList = Item_Livro_CaixaBLL.getItem_Livro_Caixa(p => p.Id_livro == Id_Livro_Caixa, direction != ListSortDirection.Ascending, deslocamento, tamanhoPagina, out totalReg, c => c.documento);
                dgvDados.DataSource = Item_Livro_CaixaBLL.ToList_Item_Livro_CaixaView(Item_Livro_CaixaList);
            }
            break;

            case COL_DESCRICAO:
            {
                List <Item_Livro_Caixa> Item_Livro_CaixaList = Item_Livro_CaixaBLL.getItem_Livro_Caixa(p => p.Id_livro == Id_Livro_Caixa, direction != ListSortDirection.Ascending, deslocamento, tamanhoPagina, out totalReg, c => c.descricao);
                dgvDados.DataSource = Item_Livro_CaixaBLL.ToList_Item_Livro_CaixaView(Item_Livro_CaixaList);
            }
            break;

            case COL_USUARIO:
            {
                List <Item_Livro_Caixa> Item_Livro_CaixaList = Item_Livro_CaixaBLL.getItem_Livro_Caixa(p => p.Id_livro == Id_Livro_Caixa, direction != ListSortDirection.Ascending, deslocamento, tamanhoPagina, out totalReg, c => c.usuario_inclusao);
                dgvDados.DataSource = Item_Livro_CaixaBLL.ToList_Item_Livro_CaixaView(Item_Livro_CaixaList);
            }
            break;

            case COL_VALOR:
            {
                List <Item_Livro_Caixa> Item_Livro_CaixaList = Item_Livro_CaixaBLL.getItem_Livro_Caixa(p => p.Id_livro == Id_Livro_Caixa, direction != ListSortDirection.Ascending, deslocamento, tamanhoPagina, out totalReg, c => c.valor.ToString());
                dgvDados.DataSource = Item_Livro_CaixaBLL.ToList_Item_Livro_CaixaView(Item_Livro_CaixaList);
            }
            break;

            //O default será executado quando o index for 0
            default:
            {
                List <Item_Livro_Caixa> Item_Livro_CaixaList = Item_Livro_CaixaBLL.getItem_Livro_Caixa(p => p.Id.ToString(), direction != ListSortDirection.Ascending, deslocamento, tamanhoPagina, out totalReg);
                dgvDados.DataSource = Item_Livro_CaixaList;
            }
            break;
            }

            colOrdem = e.ColumnIndex;

            col.HeaderCell.SortGlyphDirection = direction == ListSortDirection.Ascending ?
                                                SortOrder.Ascending : SortOrder.Descending;
        }
예제 #6
0
        protected override void carregaConsulta()
        {
            base.carregaConsulta();
            Item_Livro_CaixaBLL = new Item_Livro_CaixaBLL();
            Livro_CaixaBLL      = new Livro_CaixaBLL();

            //Vamos listar as movimentações do dia.
            //Não existe mais de um livro caixa por dia.

            if (Parametro.UtilizaFilial())
            {
                if (Id_Filial == null)
                {
                    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();
                    }
                }


                if (Id_Filial != null)
                {
                    List <Livro_Caixa> lstLC = null;
                    lstLC = Livro_CaixaBLL.getLivro_Caixa(p => p.Id_filial == Id_Filial & DbFunctions.TruncateTime(p.data) == DbFunctions.TruncateTime(DateTime.Now) & p.status == "A", false, deslocamento, tamanhoPagina, out totalReg, c => c.Id.ToString());

                    if (lstLC.Count > 0)
                    {
                        Livro_Caixa Livro_Caixa = lstLC.First();
                        Id_Livro_Caixa      = Livro_Caixa.Id;
                        dgvDados.DataSource = Item_Livro_CaixaBLL.ToList_Item_Livro_CaixaView(Livro_Caixa.item_livro_caixa);
                    }
                    else
                    {
                        desabilitaBotoes();
                        //throw new Exception("Não existe movimentação de livro caixa aberta no momento.");
                        MessageBox.Show("Não existe movimentação de livro caixa aberta para filial no momento.", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        Close();
                    }
                }
            }
            else
            {
                List <Livro_Caixa> lstLC = null;
                lstLC = Livro_CaixaBLL.getLivro_Caixa(p => DbFunctions.TruncateTime(p.data) == DbFunctions.TruncateTime(DateTime.Now) & p.status == "A", false, deslocamento, tamanhoPagina, out totalReg, c => c.Id.ToString());

                if (lstLC.Count > 0)
                {
                    Livro_Caixa Livro_Caixa = lstLC.First();
                    Id_Livro_Caixa      = Livro_Caixa.Id;
                    dgvDados.DataSource = Item_Livro_CaixaBLL.ToList_Item_Livro_CaixaView(Livro_Caixa.item_livro_caixa);
                }
                else
                {
                    desabilitaBotoes();
                    //throw new Exception("Não existe movimentação de livro caixa aberta no momento.");
                    MessageBox.Show("Não existe movimentação de livro caixa aberta no momento.", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    Close();
                }
            }

            colOrdem = 0;
        }