Ejemplo n.º 1
0
        private List <SqlParametros> PreencheCondicoesCompraVenda(ReceitasDespesas receitasDespesas)
        {
            List <SqlParametros> lstParametrosCondicionais = new List <SqlParametros>();

            lstParametrosCondicionais.Add(new SqlParametros("VendasId", receitasDespesas.VendasId));

            return(lstParametrosCondicionais);
        }
Ejemplo n.º 2
0
        private List <SqlParametros> PreencheParametrosReceitaDespesaPaga(ReceitasDespesas receitasDespesas)
        {
            List <SqlParametros> lstParametros = new List <SqlParametros>();

            lstParametros.Add(new SqlParametros("StatusPagamento", receitasDespesas.StatusPagamento));
            lstParametros.Add(new SqlParametros("DataPagamento", receitasDespesas.DataPagamento.ToString("yyyy-MM-dd HH:mm:ss")));

            return(lstParametros);
        }
Ejemplo n.º 3
0
        private List <SqlParametros> PreencheParametrosDevolucao(ReceitasDespesas receitasDespesas)
        {
            List <SqlParametros> lstParametros = new List <SqlParametros>();

            lstParametros.Add(new SqlParametros("Valor", receitasDespesas.Valor.ToString().Replace(".", "").Replace(',', '.')));
            lstParametros.Add(new SqlParametros("ValorPago", receitasDespesas.ValorPago.ToString().Replace(".", "").Replace(',', '.')));

            return(lstParametros);
        }
Ejemplo n.º 4
0
        private void btnConfirmar_Click(object sender, EventArgs e)
        {
            try
            {
                #region Verifica se tem pendencia financeira vencida

                //if (objConfigInfo.Config_VerificarPendenciaFinanceiraEmAtraso)
                //{
                //    if (totalValorAberto > 0 && CodigoCliente > 0)
                //    {
                //        if (FrmPrincipal.dadosConfiguracao.Config_Financeiro_ValidarPendenciaFinanceiroEmDias <= 0)
                //        {
                //            //Ja existia isso no sistema antes de colocar a quantidade de dias na configuracao do sistema, quem estiver usando vai funcionar normal (By Pedro)
                //            if (_objReceitaDespesaControl.PesquisarPendenciaFinanceira(CodigoCliente) > 0)
                //            {
                //                MessageBox.Show("Cliente possui pendências financeiras!\n\n" + (!objPermissaoVenderContasEmAtrasoInfo.PermSalv ? "Usuário logado não tem permissão para concluir quando o cliente tem parcelas em atraso, consulte o gerente!" : ""), "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);

                //                if (!objPermissaoVenderContasEmAtrasoInfo.PermSalv)
                //                    return;
                //            }
                //        }
                //        else
                //        {
                //            if (_objReceitaDespesaControl.VerificaPendenciaFinanceiraEmDias(CodigoCliente, FrmPrincipal.dadosConfiguracao.Config_Financeiro_ValidarPendenciaFinanceiroEmDias))
                //            {
                //                _Mensagens.MensagensAviso("Cliente possui débito superior à " + FrmPrincipal.dadosConfiguracao.Config_Financeiro_ValidarPendenciaFinanceiroEmDias.ToString() + " dias, informe a senha do vendedor supervisor para prosseguir com a venda.");
                //                FrmGetSenha frmGetSenha = new FrmGetSenha();
                //                frmGetSenha.ShowInTaskbar = false;
                //                frmGetSenha.ShowDialog();
                //                if (string.IsNullOrEmpty(frmGetSenha.SenhaInformada))
                //                {
                //                    _Mensagens.MensagensAviso("Por favor informe a senha de supervisor para prosseguir com a venda!");
                //                    return;
                //                }

                //                if (!_objFuncionarioControl.ValidarSenhaFuncionarioSupervisor(frmGetSenha.SenhaInformada))
                //                {
                //                    _Mensagens.MensagensAviso("Senha informada não é uma senha válida de supervisor, por favor verifique!");
                //                    return;
                //                }
                //            }
                //        }
                //    }
                //}

                #endregion

                #region Verifica o limite de crédito do cliente

                //if (CodigoCliente > 0)
                //{
                //    if (_objClientesControl.PesquisarSeLimiteEstaAtivo(CodigoCliente) && _ImportoPedido.Equals(false))
                //    {
                //        decimal LimiteCliente = _objClientesControl.PesquisarLimiteCliente(CodigoCliente);

                //        decimal DividaCliente = _objReceitaDespesaControl.PesquisarDividaTotalCliente(CodigoCliente);

                //        if ((TotalEmAberto + DividaCliente - valorTotalParcelasJaExistia) > LimiteCliente)
                //        {
                //            if (!objPermissaoBloquearVendasLimitiUltrapassar.PermSalv)
                //            {
                //                if (_Mensagens.MensagensConfirma("O Limite de crédito do cliente foi ultrapassado! \n\nLimite do cliente: " + LimiteCliente + "!\nDivida do cliente: " + DividaCliente + "!\nDivida do cliente após esse Pedido: " + (TotalEmAberto + DividaCliente) + "!\n\nDeseja Continuar?") == false)
                //                    return;
                //            }
                //            else
                //            {
                //                _Mensagens.MensagensAviso("O Limite de crédito do cliente foi ultrapassado! \n\nLimite do cliente: " + LimiteCliente + "!\nDivida do cliente: " + DividaCliente + "!\nDivida do cliente após esse Pedido: " + (TotalEmAberto + DividaCliente) + "\n\nUsuário logado não tem permissão para vender a prazo quando ultrapassar o limite do cliente, Consulte o gerente!");
                //                return;
                //            }
                //        }
                //    }
                //}

                #endregion

                if (grid.Rows.Count > 0)
                {
                    _FormaPagamentoCupomFiscal = grid.Rows[0].Cells["FormaPagamento_"].Value.ToString();
                }

                DataTable dtReceitas = new DataTable();
                List <ReceitasDespesas> listaReceitaDespesas = new List <ReceitasDespesas>();

                if (grid.Rows.Count > 0)
                {
                    if (possuiDuplicataPagas == true)
                    {
                        foreach (DataGridViewRow gridRow in grid.Rows)
                        {
                            ReceitasDespesas receitasDespesas = new ReceitasDespesas();

                            if (Convert.ToInt32(gridRow.Cells["ClientesId_"].Value) > 0)
                            {
                                receitasDespesas.ClientesId = Convert.ToInt32(gridRow.Cells["ClientesId_"].Value);
                            }

                            receitasDespesas.Emissao          = _Emissao;
                            receitasDespesas.Vencimento       = Convert.ToDateTime(gridRow.Cells["Vencimento_"].Value);
                            receitasDespesas.Observacao       = gridRow.Cells["Observacao_"].Value.ToString();
                            receitasDespesas.Parcela          = gridRow.Cells["Parcela_"].Value.ToString();
                            _FormaPagamentoId                 = Convert.ToInt32(gridRow.Cells["FormaPagamentoId_"].Value);
                            receitasDespesas.Valor            = Convert.ToDecimal(gridRow.Cells["Valor_"].Value);
                            receitasDespesas.FormaPagamentoId = Convert.ToInt32(gridRow.Cells["FormaPagamentoId_"].Value.ToString());
                            if (Convert.ToDecimal(gridRow.Cells["Valor_"].Value) > 0)
                            {
                                receitasDespesas.ValorExtenso = Util.NumeroParaExtenso(Convert.ToDecimal(gridRow.Cells["Valor_"].Value));
                            }
                            else
                            {
                                receitasDespesas.ValorExtenso = "VALOR NEGATIVO";
                            }
                            receitasDespesas.NumeroDocumento = _NumeroFatura;
                            receitasDespesas.ValorFatura     = Convert.ToDecimal(txtValorTotal.Text);

                            if (Convert.ToInt32(gridRow.Cells["ClientesId_"].Value) > 0)
                            {
                                receitasDespesas.MultaAposVencimentoPercentualValor = 0;
                                receitasDespesas.MultaAoDiaPercentualValor          = 0;
                                receitasDespesas.MultaAposVencimento = 0;
                                receitasDespesas.MultaPorDia         = 0;
                            }
                            else //CLIENTE NÃO IDENTIFICADO
                            {
                                receitasDespesas.MultaAposVencimento = 0;
                                receitasDespesas.MultaPorDia         = 0;
                            }

                            receitasDespesas.PagouComCartão = Convert.ToBoolean(gridRow.Cells["PagouComCartão_"].Value);

                            if (Convert.ToString(gridRow.Cells["StatusPagamento_"].Value) == "PG")
                            {
                                receitasDespesas.StatusPagamento = "PG";
                                receitasDespesas.DataPagamento   = Convert.ToDateTime(gridRow.Cells["DataPagamento_"].Value); //adicionar hora
                                receitasDespesas.ValorPago       = Convert.ToDecimal(gridRow.Cells["ValorPago_"].Value);
                                receitasDespesas.Pagando         = true;
                            }

                            listaReceitaDespesas.Add(receitasDespesas);
                        }

                        _ListaReceitaDespesas = listaReceitaDespesas;

                        _GravouFormaPagamento = true;
                        _Troco = Convert.ToDecimal(txtTroco.Text);

                        this.Close();
                    }
                    else // Entra aqui se o pagamento for PARCELADO
                    {
                        foreach (DataGridViewRow gridRow in grid.Rows)
                        {
                            ReceitasDespesas receitasDespesas = new ReceitasDespesas();

                            if (Convert.ToInt32(gridRow.Cells["ClientesId_"].Value) > 0)
                            {
                                receitasDespesas.ClientesId = Convert.ToInt32(gridRow.Cells["ClientesId_"].Value);
                            }

                            receitasDespesas.Emissao          = _Emissao;
                            receitasDespesas.Vencimento       = Convert.ToDateTime(gridRow.Cells["Vencimento_"].Value);
                            receitasDespesas.Observacao       = gridRow.Cells["Observacao_"].Value.ToString();
                            receitasDespesas.Parcela          = gridRow.Cells["Parcela_"].Value.ToString();
                            _FormaPagamentoId                 = Convert.ToInt32(gridRow.Cells["FormaPagamentoId_"].Value);
                            receitasDespesas.Valor            = Convert.ToDecimal(gridRow.Cells["Valor_"].Value);
                            receitasDespesas.FormaPagamentoId = Convert.ToInt32(gridRow.Cells["FormaPagamentoId_"].Value.ToString());
                            if (Convert.ToDecimal(gridRow.Cells["Valor_"].Value) > 0)
                            {
                                receitasDespesas.ValorExtenso = Util.NumeroParaExtenso(Convert.ToDecimal(gridRow.Cells["Valor_"].Value));
                            }
                            else
                            {
                                receitasDespesas.ValorExtenso = "VALOR NEGATIVO";
                            }
                            receitasDespesas.NumeroDocumento = _NumeroFatura;
                            receitasDespesas.ValorFatura     = Convert.ToDecimal(txtValorTotal.Text);

                            if (Convert.ToInt32(gridRow.Cells["ClientesId_"].Value) > 0)
                            {
                                receitasDespesas.MultaAposVencimentoPercentualValor = 0;
                                receitasDespesas.MultaAoDiaPercentualValor          = 0;
                                receitasDespesas.MultaAposVencimento = 0;
                                receitasDespesas.MultaPorDia         = 0;
                            }
                            else //CLIENTE NÃO IDENTIFICADO
                            {
                                receitasDespesas.MultaAposVencimento = 0;
                                receitasDespesas.MultaPorDia         = 0;
                            }

                            receitasDespesas.PagouComCartão = Convert.ToBoolean(gridRow.Cells["PagouComCartão_"].Value);

                            if (Convert.ToString(gridRow.Cells["StatusPagamento_"].Value) == "PG")
                            {
                                receitasDespesas.StatusPagamento = "PG";
                                receitasDespesas.DataPagamento   = Convert.ToDateTime(gridRow.Cells["ReDeDtPg"].Value);
                                receitasDespesas.ValorPago       = Convert.ToDecimal(gridRow.Cells["ReDeValo"].Value);
                                receitasDespesas.Pagando         = true;
                            }

                            listaReceitaDespesas.Add(receitasDespesas);
                        }

                        _ListaReceitaDespesas = listaReceitaDespesas;
                        _GravouFormaPagamento = true;

                        if (_NumeroDocumentoVenda > 0)
                        {
                            //BUSCANDO AS DUPLICATAS QUE JA FORAM PAGAS REFERENTE A VENDA
                            DataTable dtaDuplicatas = new DataTable();
                            dtaDuplicatas = receitasDespesasNegocios.PesquisarReceitaDespesaPorCodigoCompraVendaStatus(_NumeroDocumentoVenda, string.Empty);

                            if (dtaDuplicatas.Rows.Count > 0)
                            {
                                for (int i = 0; i < dtaDuplicatas.Rows.Count; i++)
                                {
                                    //CONSULTA OS MOVIMENTOS PARA ALTERAR O SALDO DO CAIXA
                                    DataTable dtaMovimento = new DataTable();
                                    dtaMovimento = movimentacaoCaixaNegocios.PesquisarMovimento_ReceitaDespesa(Convert.ToInt32(dtaDuplicatas.Rows[i]["ReceitasDespesasId_"].ToString()));
                                    if (dtaMovimento.Rows.Count > 0)
                                    {
                                        if (dtaMovimento.Rows[0]["Tipo"].ToString() == "R") //Receita
                                        {
                                            //TIRAR DA CAIXA
                                            Caixa caixa = caixaNegocios.PesquisarSaldoCaixa(Convert.ToInt32(dtaMovimento.Rows[0]["CaixaId"].ToString()));
                                            caixa.Valor -= Convert.ToInt32(dtaMovimento.Rows[0]["Valor"].ToString());
                                            caixaNegocios.AlterarSaldo(caixa);
                                        }
                                        else
                                        {
                                            //ACRESCENTAR NA CAIXA
                                            Caixa caixa = caixaNegocios.PesquisarSaldoCaixa(Convert.ToInt32(dtaMovimento.Rows[0]["CaixaId"].ToString()));
                                            caixa.Valor += Convert.ToInt32(dtaMovimento.Rows[0]["Valor"].ToString());
                                            caixaNegocios.AlterarSaldo(caixa);
                                        }

                                        //CAIXA NOVO
                                        movimentacaoCaixaNegocios.Excluir(Convert.ToInt32(dtaMovimento.Rows[0]["MovimentacaoCaixaId"].ToString()));

                                        //LancamentoCaixaDoPedidosInfo objLancamentoCaixaInfo = new LancamentoCaixaDoPedidosInfo();
                                        //objLancamentoCaixaInfo.MovimentoContaID = Convert.ToInt32(dtaMovimento.Rows[0]["MoviCodi"].ToString());
                                        //_objLancamentoCaixaControl.Excluir(objLancamentoCaixaInfo);

                                        //EXCLUINDO A MOVIMENTAÇAO QUE FOI PAGA
                                        ObjetoTransferencia.MovimentacaoCaixa movimentacaoCaixa = new ObjetoTransferencia.MovimentacaoCaixa();
                                        movimentacaoCaixa.ReceitasDespesasId = Convert.ToInt32(dtaDuplicatas.Rows[i]["ReceitasDespesasId"].ToString());
                                        movimentacaoCaixaNegocios.Excluir(movimentacaoCaixa);
                                    }

                                    ExcluirBaixa(Convert.ToInt32(dtaDuplicatas.Rows[i]["ReceitasDespesasId"].ToString()));
                                    //ExcluirBoleto(Convert.ToInt32(dtaDuplicatas.Rows[i]["ReceitasDespesasId"].ToString()));
                                }
                            }

                            //EXCLUINDO AS DUPLICATAS
                            //foreach (DataRow rv in dtaDuplicatas.Rows)
                            //{
                            //    LancamentoCaixaDoPedidosInfo objLancamentoCaixaInfo = new LancamentoCaixaDoPedidosInfo();
                            //    objLancamentoCaixaInfo.ReceitaID = Convert.ToInt32(rv["ReDeCodi"]);
                            //    _objLancamentoCaixaControl.ExcluirReceita(objLancamentoCaixaInfo);
                            //}

                            ReceitasDespesas receitasDespesas = new ReceitasDespesas();

                            receitasDespesas.ReceitasDespesasId = _NumeroDocumentoVenda;
                            receitasDespesasNegocios.ExcluirReceitaDespesaCompraVenda(receitasDespesas);
                        }

                        _Troco = Convert.ToDecimal(txtTroco.Text);
                        this.Close();
                    }
                }
                else
                {
                    MessageBox.Show("Por favor, informe uma Forma de pagamento.", "Aviso do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    cbbFormaPagamento.Select();
                    cbbFormaPagamento.Focus();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro ao finalizar a venda.\nPor favor, entre em contato com o suporte técnico.\n\nDetalhe técnico:" + ex.Message, "Aviso do sistema", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 5
0
 public Boolean ExcluirReceitaDespesaCompraVenda(ReceitasDespesas receitasDespesas)
 {
     return(conexao.Excluir(nomeTabela, PreencheCondicoesCompraVenda(receitasDespesas)));
 }
Ejemplo n.º 6
0
 public Boolean ExcluirNovo(ReceitasDespesas receitasDespesas)
 {
     return(conexao.Excluir(nomeTabela, PreencheCondicoes(receitasDespesas)));
 }
Ejemplo n.º 7
0
 public Boolean AlterarStatusReceitaDespesa(ReceitasDespesas receitasDespesas) //Usado para baixa nova
 {
     return(conexao.Atualizar(nomeTabela, PreencheParametrosReceitaDespesaPaga(receitasDespesas), PreencheCondicoes(receitasDespesas)));
 }
Ejemplo n.º 8
0
 public Boolean AlterarDevolucao(ReceitasDespesas receitasDespesas)
 {
     return(conexao.Atualizar(nomeTabela, PreencheParametrosDevolucao(receitasDespesas), PreencheCondicoes(receitasDespesas)));
 }
Ejemplo n.º 9
0
 public Boolean InserirNovo(ReceitasDespesas receitasDespesas)
 {
     return(conexao.Inserir(nomeTabela, PreencheParametros(receitasDespesas)));
 }
Ejemplo n.º 10
0
        private List <SqlParametros> PreencheParametros(ReceitasDespesas receitasDespesas)
        {
            List <SqlParametros> lstParametros = new List <SqlParametros>();

            if (!receitasDespesas.Emissao.ToString().Contains("01/01/0001") && !receitasDespesas.Emissao.ToString().Contains("1/1/0001"))
            {
                lstParametros.Add(new SqlParametros("Emissao", receitasDespesas.Emissao.ToString("yyyy-MM-dd HH:mm:ss")));
            }

            if (!receitasDespesas.Vencimento.ToString().Contains("01/01/0001") && !receitasDespesas.Vencimento.ToString().Contains("1/1/0001"))
            {
                lstParametros.Add(new SqlParametros("Vencimento", receitasDespesas.Vencimento.ToString("yyyy-MM-dd HH:mm:ss")));
            }

            if (receitasDespesas.ClientesId > 0)
            {
                lstParametros.Add(new SqlParametros("ClientesId", receitasDespesas.ClientesId));
            }

            if (receitasDespesas.FormaPagamentoId > 0)
            {
                lstParametros.Add(new SqlParametros("FormaPagamentoId", receitasDespesas.FormaPagamentoId));
            }

            if (receitasDespesas.FornecedorId > 0)
            {
                lstParametros.Add(new SqlParametros("FornecedorId", receitasDespesas.FornecedorId));
            }

            if (receitasDespesas.VendasId > 0)
            {
                lstParametros.Add(new SqlParametros("VendasId", receitasDespesas.VendasId));
            }

            if (receitasDespesas.Valor != 0)
            {
                lstParametros.Add(new SqlParametros("Valor", receitasDespesas.Valor.ToString().Replace(',', '.')));
            }

            if (!string.IsNullOrEmpty(receitasDespesas.Parcela))
            {
                lstParametros.Add(new SqlParametros("Parcela", receitasDespesas.Parcela));
            }

            if (!string.IsNullOrEmpty(receitasDespesas.Observacao))
            {
                lstParametros.Add(new SqlParametros("Observacao", receitasDespesas.Observacao));
            }

            if (receitasDespesas.ValorPago != 0)
            {
                lstParametros.Add(new SqlParametros("ValorPago", receitasDespesas.ValorPago.ToString().Replace(',', '.')));
            }

            if (receitasDespesas.Pagando == true)
            {
                if (!receitasDespesas.DataPagamento.ToString().Contains("01/01/0001") && !receitasDespesas.DataPagamento.ToString().Contains("1/1/0001"))
                {
                    lstParametros.Add(new SqlParametros("DataPagamento", receitasDespesas.DataPagamento.ToString("yyyy-MM-dd")));
                }
            }

            if (receitasDespesas.Extorno == true)
            {
                lstParametros.Add(new SqlParametros("ValorPago", "0.00"));
                lstParametros.Add(new SqlParametros("DataPagamento", null));
            }

            lstParametros.Add(new SqlParametros("StatusPagamento", receitasDespesas.StatusPagamento));

            if (!string.IsNullOrEmpty(receitasDespesas.ValorExtenso))
            {
                lstParametros.Add(new SqlParametros("ValorExtenso", receitasDespesas.ValorExtenso.ToUpper()));
            }

            if (receitasDespesas.ValorFatura != 0)
            {
                lstParametros.Add(new SqlParametros("ValorFatura", receitasDespesas.ValorFatura.ToString().Replace(',', '.')));
            }

            if (!string.IsNullOrEmpty(receitasDespesas.NumeroDocumento))
            {
                lstParametros.Add(new SqlParametros("NumeroDocumento", receitasDespesas.NumeroDocumento));
            }

            lstParametros.Add(new SqlParametros("DiasAtraso", receitasDespesas.DiasAtraso));

            lstParametros.Add(new SqlParametros("MultaAposVencimento", receitasDespesas.MultaAposVencimento.ToString().Replace(',', '.')));

            lstParametros.Add(new SqlParametros("MultaPorDia", receitasDespesas.MultaPorDia.ToString().Replace(',', '.')));

            if (receitasDespesas.BaixaParcial > 0)
            {
                lstParametros.Add(new SqlParametros("BaixaParcial", receitasDespesas.BaixaParcial));
            }

            lstParametros.Add(new SqlParametros("PagouComCartão", receitasDespesas.PagouComCartão));
            lstParametros.Add(new SqlParametros("Desconto", receitasDespesas.Desconto.ToString().Replace(".", "").Replace(",", ".")));
            lstParametros.Add(new SqlParametros("MultaAposVencimentoPercentualValor", receitasDespesas.MultaAposVencimentoPercentualValor));
            lstParametros.Add(new SqlParametros("MultaAoDiaPercentualValor", receitasDespesas.MultaAoDiaPercentualValor));

            return(lstParametros);
        }