public bool InsertVendas(Venda Venda)
        {
            try
            {
                LimparParametros();

                AdicionaParametro("@LucroTotal", Venda.LucroTotal);
                AdicionaParametro("@VENDATOTAL", Venda.VendaTotal);
                AdicionaParametro("@Data", Venda.Data);
                AdicionaParametro("@Idusuario", Venda.IdUsuario);
                AdicionaParametro("@IdPagamento", Venda.IdTipoPagamento);

                if ((ExecutaComando(CommandType.StoredProcedure, "[dbo].[_aspInsertVenda]")) != null)
                {

                    return true;
                }
                else
                {
                    return false;
                }
            }
            catch (Exception Erro)
            {

                throw new Exception(Erro.Message);
            }
        }
        private void btn_ConcluirVenda_Click(object sender, EventArgs e)
        {
            try
            {
                if (vendaDao.SelectValorCaixa().Rows.Count > 0)
                {
                    string valor = cbb_TipoPagamento.Text;

                    DialogResult dialog = MessageBox.Show("Deseja Confirmar A Venda Com Essa Forma De Pagamento: " + valor + "?", "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

                    if (dialog == System.Windows.Forms.DialogResult.Yes)
                    {
                        if (TotalL != 0)
                        {
                            if (txt_ValorPago.Text.Length > 0 || cbb_TipoPagamento.Text.Equals("Fiado") || cbb_TipoPagamento.Text.Equals("Cartão"))
                            {
                                Venda venda = new Venda();

                                if (cbb_TipoPagamento.Text.Equals("Dinheiro"))
                                {

                                    if (JogaParaAVenda(venda))
                                    {
                                        AlterarCaixaComPagamentoEmDinheiro(venda);
                                        TOTALNALABEL -= Math.Round(Convert.ToDecimal(txt_valorParcela.Text), 2);
                                        AtribuiParaLabelTotal(Math.Round(TOTALNALABEL, 2));
                                        if (InserirVendaEBaixarEstoque(venda))
                                        {
                                            LimparTxtValorPago();
                                            if (TOTALNALABEL <= 01)
                                            {
                                                this.DialogResult = System.Windows.Forms.DialogResult.Yes;
                                            }
                                        }
                                        else
                                        {
                                            Message("Verifique Os Dados E Tente Novamente", "Aviso");

                                        }
                                    }
                                    else
                                    {
                                        Message("Verifique Os Dados E Tente Novamente", "Aviso");

                                    }
                                }
                                else if (cbb_TipoPagamento.Text.Equals("Fiado"))
                                {

                                    if (JogaParaAVenda(venda))
                                    {
                                        frmPagamentoFiado show = new frmPagamentoFiado();
                                        DialogResult D = show.ShowDialog();
                                        if (D == System.Windows.Forms.DialogResult.Yes)
                                        {
                                            Fiado.Valor = venda.VendaTotal;
                                            Fiado.IdFuncionario = vendaDao.SelectIdUsuarioPorNome(NomeLoginGlobal.Nome);

                                            if (JogaParaAVenda(venda))
                                            {
                                                TOTALNALABEL -= Math.Round(Convert.ToDecimal(txt_valorParcela.Text), 2);
                                                AtribuiParaLabelTotal(Math.Round(TOTALNALABEL, 2));
                                                if (InserirVendaEBaixarEstoque(venda))
                                                {
                                                    LimparTxtValorPago();
                                                    if (fiadoDao.InsertFiado())
                                                    {
                                                        if (fiadoDao.SelectFiado().Rows.Count > 0 && TOTALNALABEL <= 01)
                                                        {
                                                            this.DialogResult = System.Windows.Forms.DialogResult.Yes;
                                                        }
                                                    }
                                                    else
                                                    {
                                                        Message("Verifique Os Dados E Tente Novamente", "Aviso");

                                                    }
                                                }
                                                else
                                                {
                                                    Message("Verifique Os Dados E Tente Novamente", "Aviso");
                                                }
                                            }
                                            else
                                            {
                                                Message("Verifique Os Dados E Tente Novamente", "Aviso");

                                            }
                                        }

                                    }
                                    else
                                    {
                                        Message("Verifique Os Dados E Tente Novamente", "Aviso");

                                    }
                                }
                                if (cbb_TipoPagamento.Text.Equals("Cartão"))
                                {

                                    if (JogaParaAVenda(venda))
                                    {
                                        LimparTxtValorPago();
                                        TOTALNALABEL -= Math.Round(Convert.ToDecimal(txt_valorParcela.Text), 2);
                                        AtribuiParaLabelTotal(Math.Round(TOTALNALABEL, 2));

                                        if (InserirVendaEBaixarEstoque(venda))
                                        {
                                            if (TOTALNALABEL <= 01)
                                            {
                                                this.DialogResult = System.Windows.Forms.DialogResult.Yes;
                                            }
                                        }
                                        else
                                        {
                                            Message("Verifique Os Dados E Tente Novamente", "Aviso");

                                        }
                                    }
                                    else
                                    {
                                        Message("Verifique Os Dados E Tente Novamente", "Aviso");
                                    }
                                }

                            }
                            else
                            {
                                Message("É Necessario Inserir O Valor Pago Para Concluir A Venda", "Aviso");
                                this.ActiveControl = txt_ValorPago;
                            }
                        }
                        else
                        {
                            Message("É Necessario Existir Um Valor Antes De Gerar Um Venda", "Aviso");
                        }
                    }
                    else
                    {
                        LimparTxtValorPago();
                    }

                }
                else
                {
                    Message("Não É Possível Concluir Uma Venda Com O Caixa Vazio", "Aviso");
                }
                LoadCbbTypePay();
            }
            catch (Exception Erro)
            {
                Message("Erro Ao Salvar As Vendas: " + Erro.Message, "Erro");
                LimparTxtValorPago();
            }
        }
        //private void ValidacaoEstoque(bool certoExcluiEstoque)
        //{
        //    if (certoExcluiEstoque)
        //    {
        //        MessageBox.Show("Venda Concluida", "Aviso");
        //    }
        //    else
        //    {
        //        string valoreNegativos = "";
        //        foreach (DataRow Linha in estoqueDao.SelectEstoqueNegativo().Rows)
        //        {
        //            valoreNegativos += " Nome: " + Linha["Nome"].ToString() + " Quantidate: " + Linha["Quantidade"].ToString() + ".";
        //        }
        //        Message("Venda Salva Com Sucesso," + " Ma Existem Items Que Estão Negativo No Estoque, É Necessario Dar Entrada No Mesmo Corretamente Para Evitar Esse Tipo De Erro, Informe Um Funcionario Para Verificar A"
        //            + " Quantidade Do Produto: " + valoreNegativos + " E Atualizar A Quantidade Correta Para O Erro Não Persistir", "Aviso");
        //    }
        //}
        //private bool ExcluiComanda(bool certoExcluiEstoque)
        //{
        //    try
        //    {
        //        foreach (ExcluirEstoque estoque in listExluirEstoque)
        //        {
        //            certoExcluiEstoque = estoqueDao.ExlcuiEstoqueAposSalvar(estoque);
        //        }
        //        return certoExcluiEstoque;
        //    }
        //    catch (Exception Erro)
        //    {
        //        Message("Erro Ao Excluir Produtos Da Comanda Os Valores: " + Erro.Message, "Erro");
        //        return false;
        //    }
        //}
        private bool JogaParaAVenda(Venda venda)
        {
            try
            {
                venda.VendaTotal = Convert.ToDecimal(txt_valorParcela.Text);
                venda.LucroTotal = Convert.ToDecimal(TotalL);
                venda.Data = DateTime.Now.ToShortDateString();
                venda.IdUsuario = vendaDao.SelectIdUsuarioPorNome(NomeLoginGlobal.Nome);
                venda.IdTipoPagamento = Convert.ToInt32(vendaDao.SelectIDTipoPagementoPorNome(cbb_TipoPagamento.Text).Rows[0]["Id"]);
                if (venda.IdTipoPagamento != 0 && venda.IdUsuario != 0 && venda.LucroTotal != 0 &&
                    venda.VendaTotal != 0 && venda.Data != "")
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            catch (Exception Erro)
            {

                Message("Erro Ao Atribuir Os Valores: " + Erro.Message, "Erro");
                return false;
            }
        }
 private void AlterarCaixaComPagamentoEmDinheiro(Venda venda)
 {
     vendaDao.UpdateValorCaixa(venda.VendaTotal, "+", 1);
 }
        private bool InserirVendaEBaixarEstoque(Venda venda)
        {
            if (vendaDao.InsertVendas(venda))
            {
                #region validacao estoque

                //bool certoExcluiEstoque = true;
                //certoExcluiEstoque = ExcluiComanda(certoExcluiEstoque);
                //ValidacaoEstoque(certoExcluiEstoque);
                #endregion
                return true;

            }
            else
            {
                Message("Não Foi Possível Salvar A Venda, Verifique Se Os Dados Estão Corretos", "Aviso");
                return false;
            }
        }
 private void JogaParaAVenda(Venda venda)
 {
     venda.VendaTotal = Convert.ToDecimal(lbl_Total.Values.ExtraText.Substring(2, lbl_Total.Values.ExtraText.Length - 2));
     venda.LucroTotal = Convert.ToDecimal(lucroTotal);
     venda.Data = DateTime.Now.ToShortDateString();
     venda.IdUsuario = vendaDao.SelectIdUsuarioPorNome(NomeLoginGlobal.Nome);
     venda.IdTipoPagamento = Convert.ToInt32(vendaDao.SelectIDTipoPagementoPorNome(cbb_TipoPagamento.Text).Rows[0]["Id"]);
     //totalEnviar = venda.VendaTotal;
 }
        private void InserirVendaEBaixarEstoque(Venda venda)
        {
            if (vendaDao.InsertVendas(venda))
            {
                //DesaparecerTxtProduto();
                CarregarComanda();
                listComanda.Clear();
                bool certoExcluiEstoque = true;
                certoExcluiEstoque = ExcluiComanda(certoExcluiEstoque);
                listExluirEstoque.Clear();
                ValidacaoEstoque(certoExcluiEstoque);
                CarregarTxtComUm();
                FonoNotxtProduto();

            }
            else
            {
                Message("Não Foi Possível Salvar A Venda, Verifique Se Os Dados Estão Corretos", "Aviso");
            }
        }
        private void btn_ConcluirVenda_Click(object sender, EventArgs e)
        {
            try
            {
                #region irrelevante
                //if (ckb_PagamentoParcial.Checked)
                ////{
                //   Venda venda = new Venda();
                //    JogaParaAVenda(venda);
                //    decimal valorPagoParcialmente = Convert.ToDecimal(txt_ValorPago.Text);
                //    //venda.LucroTotal
                //    if (venda.VendaTotal > 0)
                //    {
                //        if (venda.VendaTotal > valorPagoParcialmente)
                //        {

                //            if (valorPagoParcialmente > 0)
                //            {

                //                venda.VendaTotal -= valorPagoParcialmente;
                //                lbl_Total.Values.ExtraText = venda.VendaTotal.ToString("C");
                //                InserirVendaEBaixarEstoque(venda);
                //                return;
                //            }
                //            else
                //            {
                //                Message("Antes De Gerar Um Pagamento Parcial É Necessario Inserir O Valor A Ser Discontado", "Aviso");
                //                this.ActiveControl = txt_ValorPago;
                //                return;
                //            }
                //        }

                //    }
                //    ///////////////////////////////////////////////////////
                //    //bool certoExcluiEstoque = true;
                //    //certoExcluiEstoque = ExcluiComanda(certoExcluiEstoque);
                //    //ValidacaoEstoque(certoExcluiEstoque);
                //    //CarregarTxtComUm();
                //    return;
                //}
                //if (ckb_PagamentoParcial.Checked == false)
                //{
                #endregion

                if (vendaDao.SelectValorCaixa().Rows.Count > 0)
                {
                    string valor = cbb_TipoPagamento.Text;

                    DialogResult dialog = MessageBox.Show("Deseja Confirmar A Venda Com Essa Forma De Pagamento: " + valor + "?", "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Information);

                    if (dialog == System.Windows.Forms.DialogResult.Yes)
                    {
                        if (lucroTotal != 0)
                        {
                            if (txt_ValorPago.Text.Length > 0 || cbb_TipoPagamento.Text.Equals("Fiado") || cbb_TipoPagamento.Text.Equals("Cartão"))
                            {
                                Venda venda = new Venda();

                                if (cbb_TipoPagamento.Text.Equals("Dinheiro"))
                                {
                                    JogaParaAVenda(venda);
                                    AlterarCaixaComPagamentoEmDinheiro(venda);
                                    ///listComanda.Clear();
                                }
                                else if (cbb_TipoPagamento.Text.Equals("Fiado"))
                                {
                                    JogaParaAVenda(venda);
                                    frmPagamentoFiado show = new frmPagamentoFiado();
                                    DialogResult D = show.ShowDialog();
                                    if (D == System.Windows.Forms.DialogResult.Yes)
                                    {
                                        Fiado.Valor = venda.VendaTotal;
                                        Fiado.IdFuncionario = vendaDao.SelectIdUsuarioPorNome(NomeLoginGlobal.Nome);
                                        fiadoDao.InsertFiado();
                                        if (fiadoDao.SelectFiado().Rows.Count.Equals(0))
                                        {
                                            HideButtonFiado();
                                            //listComanda.Clear();
                                        }
                                        else
                                        {
                                            ShowButtonFiado();
                                        }
                                    }
                                    else
                                    {
                                        return;
                                    }
                                }
                                if (cbb_TipoPagamento.Text.Equals("Cartão"))
                                {
                                    JogaParaAVenda(venda);
                                }
                                InserirVendaEBaixarEstoque(venda);
                            }
                            else
                            {
                                Message("É Necessario Inserir O Valor Pago Para Concluir A Venda", "Aviso");
                                this.ActiveControl = txt_ValorPago;
                            }
                        }
                        else
                        {
                            Message("Não Foi Gerado Nenhuma Venda", "Aviso");
                            LimparTxtDeCodigo();
                            LimparListBoxDeInformacao();
                            FonoNotxtProduto();
                        }
                    }
                    else
                    {
                        ZerarLabel();
                        ZerarLista();
                        ZerarTotal();
                        ZerarValorPago();
                        Message("Venda Cancelada", "Aviso");
                        rtb_MiniRelatorio.Text = string.Empty;
                        // x = new Comanda();
                        listComanda.Clear();
                        listExluirEstoque.Clear();
                    }

                }
                else
                {
                    Message("Não É Possível Concluir Uma Venda Com O Caixa Vazio", "Aviso");
                    ZerarLabel();
                    ZerarLista();
                    ZerarTotal();
                    rtb_MiniRelatorio.Text = string.Empty;
                    ZerarValorPago();
                    listComanda.Clear();
                    listExluirEstoque.Clear();
                }
                //EsconderTipoDePagamento();
                LoadCbbTypePay();
                //}
                CarregarTxtComUm();
                LimparListBoxDeInformacao();
                LimparTxtDeCodigo();
            }
            catch (Exception Erro)
            {

                Message("Erro Ao Salvar As Vendas: " + Erro.Message, "Erro");
                ZerarLabel();
                ZerarLista();
                ZerarTotal();
                ZerarValorPago();
                LoadCbbTypePay();
                CarregarTxtComUm();
            }
        }