Пример #1
0
 private void ItensDaVenda(itens_vendidos iv, oficinaEntities bd)
 {
     iv.venda_idvenda = codigoVenda;
     //MessageBox.Show(codigoVenda.ToString()); 21/04/2020
     iv.qtd         = int.Parse(txtQtd.Text);
     iv.preco_venda = double.Parse(txtValorUnitario.Text);
     if (txtDesconto.Text == "")
     {
         iv.desconto = 0;
     }
     else
     {
         iv.desconto = double.Parse(txtDesconto.Text);
     }
     /////itvendidos.Add(new ItensVenda(codigoVenda, int.Parse(txtQtd.Text), double.Parse(txtValorUnitario.Text), double.Parse(txtDesconto.Text)));
     ////dgvVenda.DataSource = itvendidos.ToList();
     //bd.itens_vendidos.Add(iv); COMENTEI PQ TORNEI VARIÁVEL GLOBAL
 }
Пример #2
0
        private void ClienteVenda(oficinaEntities bd)
        {
            //PEGANDO O ID DO ÚLTIMO OBJETO VENDA
            var pvendido = bd.venda.OrderByDescending(obj => obj.idvenda).FirstOrDefault();
            int codigoProduto;

            if (pvendido != null)
            {
                codigoProduto = pvendido.idvenda;
            }
            //CONTADORES
            valorTotalCompra = 0;
            //Teste 210120202319
            //bool flagVenda = false;
            double valor = 0;

            foreach (ClasseClienteVenda classeClienteVenda in ccv)
            {
                Document doc = new Document(PageSize.A4);
                //SE NÃO EXISTIR
                if (codigoVenda <= 0)
                //if (v.idvenda <= 0)
                {
                    v.cliente_idcliente         = classeClienteVenda.IdCliente;
                    v.funcionario_idfuncionario = classeClienteVenda.IdFuncionario;
                    v.valor_total_compra        = classeClienteVenda.ValorTotalCompra;
                    v.data_venda      = classeClienteVenda.DataVenda;
                    v.desconto_total  = classeClienteVenda.DescontoTotal;
                    v.forma_pagamento = classeClienteVenda.FormaPagamento;
                    v.tipo_cliente    = classeClienteVenda.TipoCadastroCliente;
                    bd.venda.Add(v);
                    bd.SaveChanges();
                    codigoVenda = v.idvenda;
                    //Teste 210120202319
                    //flagVenda = true;
                    //MessageBox.Show("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA: " + v.idvenda.ToString()); 21/04/2020
                }
                if (ccv != null && ccv.Count >= 1)
                {
                    valorTotalCompra      = valorTotalCompra + (double)v.valor_total_compra;
                    descontoTotaldaCompra = descontoTotaldaCompra + (double)v.desconto_total;

                    //if(codigoProduto >= 1|| pvendido == null){
                    //    iv.venda_idvenda = codigoProduto + 1;
                    //} else {
                    //    iv.venda_idvenda = 1;
                    //}
                    iv.venda_idvenda = codigoVenda;
                    iv.qtd           = classeClienteVenda.Qtd;
                    iv.preco_venda   = classeClienteVenda.PrecoVenda;
                    iv.desconto      = classeClienteVenda.Desconto;
                    iv.codigo_barras = classeClienteVenda.CodigoBarras;
                    valor            = valor + (double)iv.preco_venda;
                    //MessageBox.Show("Valor a pagar: "+valor);
                    //CÓDIGO TESTE
                    string  codigoComparacao = codigoDeBarrasDataGrid;
                    produto p = (from pr in bd.produto
                                 where pr.codigo_barras == classeClienteVenda.CodigoBarras
                                 select pr).FirstOrDefault();

                    //MessageBox.Show("Código Comparação: "+codigoComparacao+"Código Barra Datagrid: "+codigoDeBarrasDataGrid);

                    var idEstoque = p.estoque_idestoque;
                    //MessageBox.Show(idEstoque.ToString()); 21/04/2020

                    estoque etq = (from et in bd.estoque
                                   where et.idestoque == p.estoque_idestoque
                                   select et).FirstOrDefault();

                    //CÓDIGO TESTE
                    if (controleEstoque == 0)
                    {
                        controleEstoque = (int)etq.qtd_estoque;
                    }

                    etq.qtd_estoque = etq.qtd_estoque - 1;
                    p.estado        = "Indisponível";


                    //TESTE PDF 220420201407
                    //Document doc = new Document(PageSize.A4);//criando e estipulando o tipo da folha usada
                    doc.SetMargins(40, 40, 40, 80); //estibulando o espaçamento das margens que queremos
                    doc.AddCreationDate();          //adicionando as configuracoes

                    //caminho onde sera criado o pdf + nome desejado
                    //OBS: o nome sempre deve ser terminado com .pdf
                    string caminho = @"C:\Users\Giliarde\Desktop" + "xxx.pdf";

                    //criando o arquivo pdf embranco, passando como parametro a variavel doc criada acima e a variavel caminho
                    //tambem criada acima.
                    PdfWriter writer = PdfWriter.GetInstance(doc, new
                                                             FileStream(caminho, FileMode.Create));

                    doc.Open();

                    //criando uma string vazia
                    string dados = "";

                    //criando a variavel para paragrafo
                    Paragraph paragrafo = new Paragraph(dados);
                    //etipulando o alinhamneto
                    paragrafo.Alignment = Element.ALIGN_JUSTIFIED;
                    //Alinhamento Justificado
                    //adicioando texto
                    //paragrafo.Add(paragrafo + "\n" + "Produto: " + p.descricao + " Valor: " + iv.preco_venda);
                    paragrafo.Add("Produto: " + p.descricao + " Valor: " + iv.preco_venda);
                    //acidionado paragrafo ao documento
                    doc.Add(paragrafo);

                    //Teste 210120202319



                    if (radAPrazo.Checked)
                    {
                        if (radCadastrado.Checked)
                        {
                            if (comboBoxNomeCliente.Text != "")
                            {
                                cliente client = (from ct in bd.cliente
                                                  where ct.idusuario == clienteSel.idusuario
                                                  select ct).FirstOrDefault();
                                //venda vendaRealizada = (from vd in bd.venda
                                //                        where vd.idvenda == v.idvenda
                                //                        select vd).FirstOrDefault();



                                //if (radCadastrado.Checked)
                                //{
                                //    vendaRealizada.cliente_idcliente = client.idcliente;

                                //    MessageBox.Show("Venda Id: " + vendaRealizada.cliente_idcliente);
                                //    MessageBox.Show("Venda Id: " + client.idcliente);
                                //}
                                if (client.divida == null)
                                {
                                    client.divida = 0;
                                }
                                //MessageBox.Show(client.idcliente.ToString()); 21/04/2020

                                //TESTE
                                double precoProduto  = (double)iv.preco_venda;
                                double dividaCliente = (double)client.divida;
                                double conta         = dividaCliente + precoProduto;
                                client.divida = conta;
                                bd.SaveChanges();
                            }
                            else
                            {
                                MessageBox.Show("Por favor, selecione o cliente que fez a compra!");
                            }
                        }
                        else
                        {
                            MessageBox.Show("Não é possível realizar a venda a prazo se o cliente não estiver cadastrado.");
                        }
                    }
                    //if (flagVenda) {
                    //    venda vend = (from vd in bd.venda
                    //                 where vd.idvenda == v.idvenda
                    //                 select vd).FirstOrDefault();

                    //    vend.valor_total_compra = vend.valor_total_compra + iv.preco_venda;
                    //    flagVenda = false;
                    //}

                    bd.itens_vendidos.Add(iv);
                    iv = new itens_vendidos();
                    bd.SaveChanges();
                }
                else
                {
                }
                //fechando documento para que seja salva as alteraçoes.
                doc.Close();
                //    sv.descricao = classeServico.ServicoDescricao;
                //    sv.valor = classeServico.ServicoValor;
                //    sv.data_servico = classeServico.Data;
                //    bd.servico.Add(sv);
                //    bd.SaveChanges();
            }

            //Teste 210420202348
            venda vend = (from vd in bd.venda
                          where vd.idvenda == v.idvenda
                          select vd).FirstOrDefault();

            vend.valor_total_compra = valor;
            bd.SaveChanges();
            System.Diagnostics.Process.Start(@"C:\Users\Giliarde\Desktop" + "xxx.pdf");
        }