protected void btnCancelar_Click(object sender, EventArgs e)
 {
     if (utils.ComparaIntComZero(hfIdVenda.Value) > 0)
     {
         VendasBL venBL = new VendasBL();
         if (venBL.CancelarVendaBL(utils.ComparaIntComZero(hfIdVenda.Value)))
         {
             CarregarDados(utils.ComparaIntComZero(hfIdVenda.Value));
             ExibirMensagem("Venda cancelada com sucesso !");
         }
     }
 }
        private void geraRelatorio()
        {
            VendasBL vendaBL = new VendasBL();
            Vendas venda = new Vendas();
            int vendaid = Convert.ToInt16(Request.QueryString["vendaid"].ToString());
            lDtVenda = vendaBL.PesquisarBLDataSet(vendaid).Tables[0];
            if (lDtVenda.Rows.Count > 0)
            {

                InstituicoesBL instBL = new InstituicoesBL();
                Instituicoes inst = new Instituicoes();

                InstituicoesLogoBL instLogoBL = new InstituicoesLogoBL();
                InstituicoesLogo instLogo = new InstituicoesLogo();

                VendaItensBL vendaItensBL = new VendaItensBL();
                VendaItens vendaItens = new VendaItens();

                ReportDataSource rptDatasourceInstituicao = new ReportDataSource("DataSet_Instituicao", instBL.PesquisarDsBL().Tables[0]);
                ReportDataSource rptDatasourceInstituicaoLogo = new ReportDataSource("DataSet_InstituicaoLogo", instLogoBL.PesquisarDsBL().Tables[0]);
                ReportDataSource rptDatasourceVenda = new ReportDataSource("DataSet_Venda", lDtVenda);
                DataSet lds = vendaItensBL.PesquisarBLDataSet(vendaid, "A");
                ReportParameter[] param = new ReportParameter[1];
                ReportDataSource rptDatasourceVendaItem = new ReportDataSource("DataSet_VendaItens", lds.Tables[0]);

                decimal valorTotal = utils.ComparaDecimalComZero((lds.Tables[0].Compute("Sum(total)", "").ToString()));
                decimal descontoTotal = utils.ComparaDecimalComZero(lds.Tables[0].Compute("Sum(desconto)", "").ToString());
                NumeroPorExtenso numeroPorExtenso = new NumeroPorExtenso(valorTotal);
                string valorExtenso = numeroPorExtenso.ToString();
                param[0] = new ReportParameter("valorExtenso", valorExtenso);
                ReportViewer1.LocalReport.SetParameters(param);
                ReportViewer1.LocalReport.DataSources.Add(rptDatasourceInstituicao);
                ReportViewer1.LocalReport.DataSources.Add(rptDatasourceInstituicaoLogo);
                ReportViewer1.LocalReport.DataSources.Add(rptDatasourceVenda);
                ReportViewer1.LocalReport.DataSources.Add(rptDatasourceVendaItem);

                ReportViewer1.LocalReport.Refresh();
                //Session["ldsRel"] = null;

            }
            else
            {
                divRelatorio.Visible = false;
                divMensagem.Visible = true;
                lblMensagem.Text = "Este relatorio não possui dados.";
            }
        }
        protected void btnFinalizar_Click(object sender, EventArgs e)
        {
            VendasBL venEBL = new VendasBL();
            Vendas vendas = new Vendas();
            VendaItensBL venItBL = new VendaItensBL();
            VendaItens vendaItens = new VendaItens();
            MovimentosEstoqueBL movEstBL = new MovimentosEstoqueBL();
            MovimentosEstoque movEstoque = new MovimentosEstoque();
            int usu_id = 0;

            vendas.Data = DateTime.Now;
            vendas.Situacao = "A";
            vendas.PessoaId = utils.ComparaIntComZero(hfIdPessoa.Value);

            if (Session["usuario"] != null)
            {
                List<Usuarios> usuarios;
                usuarios = (List<Usuarios>)Session["usuario"];

                foreach (Usuarios usu in usuarios)
                {
                    usu_id = usu.Id;
                }

                vendas.UsuarioId = usu_id;
            }

            if (Session["dtItens"] != null)
                dtItens = (DataTable)Session["dtItens"];

            if (dtItens.Rows.Count > 0)
            {
                int id = venEBL.InserirBL(vendas);

                if (id > 0)
                {
                    foreach (DataRow linha in dtItens.Rows)
                    {
                        vendaItens.VendaId = id;
                        vendaItens.ItemEstoqueId = utils.ComparaIntComZero(linha["ITEMESTOQUEID"].ToString());
                        vendaItens.Quantidade = utils.ComparaIntComZero(linha["QUANTIDADE"].ToString());
                        vendaItens.Valor = utils.ComparaDecimalComZero(linha["VALORUNI"].ToString());
                        vendaItens.Situacao = "A";
                        vendaItens.Desconto = utils.ComparaDecimalComZero(linha["DESCONTO"].ToString());

                        venItBL.InserirBL(vendaItens, usu_id);

                    }

                    if (id > 0)
                    {
                        if (chkImprimirRec.Checked)                                                                                                                                                                                                                                                                                                                                                                                                                                           //l//c
                            ScriptManager.RegisterStartupScript(this, this.GetType(), Guid.NewGuid().ToString(), "WinOpen('/Relatorios/RelReciboVenda.aspx?vendaid=" + id + "','',600,850);", true);

                        ExibirMensagem("Venda gravada com sucesso !");
                        LimparCamposGeral();
                        txtCliente.Focus();
                    }
                    else
                        ExibirMensagem("Não foi possível gravar a venda. Revise as informações!");
                }
                else
                    ExibirMensagem("Não foi possível gravar a venda. Revise as informações!");
            }
        }
        private void CarregarDados(Int32 venId)
        {
            DataTable dtItens = new DataTable();

            DataColumn coluna1 = new DataColumn("ID", Type.GetType("System.Int32"));
            DataColumn coluna2 = new DataColumn("QUANTIDADE", Type.GetType("System.Int32"));
            DataColumn coluna3 = new DataColumn("VALOR", Type.GetType("System.Decimal"));
            DataColumn coluna4 = new DataColumn("DESCONTO", Type.GetType("System.Decimal"));
            DataColumn coluna5 = new DataColumn("CODIGO", Type.GetType("System.Int32"));
            DataColumn coluna6 = new DataColumn("DESCRICAO", Type.GetType("System.String"));
            DataColumn coluna7 = new DataColumn("SITUACAO", Type.GetType("System.String"));

            dtItens.Columns.Add(coluna1);
            dtItens.Columns.Add(coluna2);
            dtItens.Columns.Add(coluna3);
            dtItens.Columns.Add(coluna4);
            dtItens.Columns.Add(coluna5);
            dtItens.Columns.Add(coluna6);
            dtItens.Columns.Add(coluna7);

            VendasBL venBL = new VendasBL();
            List<Vendas> ltVenda = venBL.PesquisarBL(venId);

            foreach (Vendas vendas in ltVenda)
            {
                hfIdVenda.Value = vendas.Id.ToString();
                lblNumero.Text = vendas.Numero.ToString();
                lblCliente.Text = vendas.Pessoas.Nome;
                lblData.Text = vendas.Data != null ? Convert.ToDateTime(vendas.Data).ToString("dd/MM/yyyy") : "";

            }

            VendaItensBL venItBl = new VendaItensBL();
            List<VendaItens> venItens = venItBl.PesquisarBL(venId);

            foreach (VendaItens ltVenItens in venItens)
            {

                DataRow linha = dtItens.NewRow();

                linha["ID"] = ltVenItens.Id;
                linha["QUANTIDADE"] = ltVenItens.Quantidade;
                linha["VALOR"] = (ltVenItens.Quantidade * ltVenItens.Valor) - ltVenItens.Desconto;
                linha["DESCONTO"] = ltVenItens.Desconto;
                linha["CODIGO"] = ltVenItens.Obras.Codigo;
                linha["DESCRICAO"] = ltVenItens.Obras.Titulo;
                linha["SITUACAO"] = ltVenItens.Situacao;

                dtItens.Rows.Add(linha);
            }

            dtgItens.DataSource = dtItens;
            dtgItens.DataBind();
            txtTotal.Text = dtItens.Compute("sum(VALOR)", "").ToString();
        }
        private void Pesquisar(string valor)
        {
            DataTable tabela = new DataTable("tabela");

            DataColumn coluna1 = new DataColumn("ID", Type.GetType("System.Int32"));
            DataColumn coluna2 = new DataColumn("NUMERO", Type.GetType("System.Int32"));
            DataColumn coluna3 = new DataColumn("DATA", Type.GetType("System.String"));
            DataColumn coluna4 = new DataColumn("SITUACAO", Type.GetType("System.String"));
            DataColumn coluna5 = new DataColumn("NOMEPESSOA", Type.GetType("System.String"));
            DataColumn coluna6 = new DataColumn("NOMEUSUARIO", Type.GetType("System.String"));

            tabela.Columns.Add(coluna1);
            tabela.Columns.Add(coluna2);
            tabela.Columns.Add(coluna3);
            tabela.Columns.Add(coluna4);
            tabela.Columns.Add(coluna5);
            tabela.Columns.Add(coluna6);

            VendasBL venBL = new VendasBL();
            List<Vendas> vendas;

            vendas = venBL.PesquisarBuscaBL(valor);

            foreach (Vendas ven in vendas)
            {

                DataRow linha = tabela.NewRow();

                linha["ID"] = ven.Id;
                linha["NUMERO"] = ven.Numero;
                linha["DATA"] = ven.Data != null ? Convert.ToDateTime(ven.Data).ToString("dd/MM/yyyy") : "";
                linha["SITUACAO"] = ven.Situacao;
                linha["NOMEPESSOA"] = ven.Pessoas.Nome;
                linha["NOMEUSUARIO"] = ven.Usuarios.Login;

                tabela.Rows.Add(linha);
            }

            dtbPesquisa = tabela;
            dtgVendas.DataSource = tabela;
            dtgVendas.DataBind();
        }