public ItemVendaColecao PegarItensVenda(uint codigo)
        {
            controleBanco.LimpaParametros();
            ItemVendaColecao colecao = new ItemVendaColecao();

            controleBanco.AdicionaParametro("@codigo", codigo);
            string comando = "SELECT i.cod_produto,i.quantidade,i.subtotal,g.nome_grupo,p.preco_produto,p.desc_produto " +
                             "FROM tb_itens_venda AS i " +
                             "INNER JOIN tb_produtos AS p ON i.cod_produto = p.cod_produto " +
                             "INNER JOIN tb_grupo AS g ON p.cod_grupo = g.cod_grupo " +
                             "WHERE i.cod_venda = @codigo";
            DataTable dt = controleBanco.ExecuteReader(comando);

            foreach (DataRow row in dt.Rows)
            {
                ItemVenda item = new ItemVenda();
                item.ProdutoSelecionado.Cod_produto  = Convert.ToUInt32(row["cod_produto"]);
                item.ProdutoSelecionado.Desc_produto = Convert.ToString(row["desc_produto"]);
                item.ProdutoSelecionado.GrupoSelecionado.Nome_grupo = Convert.ToString(row["nome_grupo"]);
                item.ProdutoSelecionado.Preco_produto = Convert.ToDecimal(row["preco_produto"]);
                item.Quantidade = Convert.ToInt16(row["quantidade"]);
                item.Subtotal   = Convert.ToDecimal(row["subtotal"]);
                colecao.Add(item);
            }
            dt.Dispose();
            return(colecao);
        }
예제 #2
0
        private void AddDesconto()
        {
            if (dataGridViewItens.SelectedRows.Count > 0)
            {
                //ProdutoInfo produto = produtoNegocios.ConsultarProdutosId(itemSelecionando.Id);
                //produto.proValorVarejo = itemSelecionando.ValorUnit;
                FormProdDesconto formProdDesconto = new FormProdDesconto(itemSelecionando.ValorUnit, itemSelecionando.Descricao);
                formProdDesconto.ShowDialog(this);

                if (formProdDesconto.DialogResult == DialogResult.Yes)
                {
                    if (itemSelecionando.Id > 0)
                    {
                        for (int i = 0; i < colecaoItemVenda.Count; i++)
                        {
                            if (itemSelecionando.Id == colecaoItemVenda[i].Id)
                            {
                                itemSelecionando.ValorDesc = Convert.ToDecimal(formProdDesconto.valorFinal[1]);
                                itemSelecionando.Total     = itemSelecionando.ValorDesc * itemSelecionando.Quant;
                                colecaoItemVenda.RemoveAt(i);
                            }
                        }
                    }
                    else
                    {
                        for (int i = 0; i < colecaoItemVenda.Count; i++)
                        {
                            if (itemSelecionando.Barras == colecaoItemVenda[i].Barras)
                            {
                                itemSelecionando.ValorDesc = Convert.ToDecimal(formProdDesconto.valorFinal[1]);
                                itemSelecionando.Total     = itemSelecionando.ValorDesc * itemSelecionando.Quant;
                                colecaoItemVenda.RemoveAt(i);
                            }
                        }
                    }

                    ItemVendaColecao vendColecao = new ItemVendaColecao
                    {
                        itemSelecionando
                    };

                    for (int i = 0; i < colecaoItemVenda.Count; i++)
                    {
                        vendColecao.Add(colecaoItemVenda[i]);
                    }

                    colecaoItemVenda = vendColecao;
                    AdicionarItemGrid();
                }

                formProdDesconto.Dispose();
            }
            else
            {
                FormMessage.ShowMessegeWarning("Selecione o produto que deseja aplicar o desconto!");
            }
        }
예제 #3
0
        private void AdicionarItem()
        {
            colecaoVendNova = new ItemVendaColecao();

            for (int i = 0; i < colecaoItemVenda.Count; i++)
            {
                colecaoVendNova.Add(colecaoItemVenda[i]);
            }

            colecaoItemVenda = colecaoVendNova;
            AdicionarItemGrid();
        }
예제 #4
0
        private void PreencherFormProduto()
        {
            ItemVendaInfo itemVendaInfo;

            if (vendaInfo != null)
            {
                foreach (VendaDetalhesInfo detalhes in colecaoDetalhes)
                {
                    produtoInfo = produtoNegocios.ConsultarProdutosId(detalhes.vendetalhesidprod);
                    responsavel = funcNegocios.ConsultarPessoaId(detalhes.vendetalhesidfunc);

                    itemVendaInfo = new ItemVendaInfo
                    {
                        Id        = produtoInfo.proId,
                        ValorDesc = detalhes.vendetalhesvalordesc,
                        Barras    = produtoInfo.proCodBarras,
                        Descricao = produtoInfo.proDescricao,
                        Quant     = detalhes.vendetalhesquant,
                        Total     = detalhes.vendetalhesquant * detalhes.vendetalhesvalordesc,
                        ValorUnit = detalhes.vendetalhesvalorunit,
                        funid     = responsavel.Id,
                        funnome   = responsavel.Nome
                    };

                    colecaoItemVenda.Add(itemVendaInfo);
                }
            }
            else
            {
                bool    estoqueZerado = false;
                decimal dbQuant       = Convert.ToDecimal(textBoxQuant.Text);
                decimal dbTotal       = produtoInfo.proValorVarejo * dbQuant;

                itemVendaInfo = new ItemVendaInfo
                {
                    Id        = produtoInfo.proId,
                    ValorDesc = produtoInfo.proValorVarejo,
                    Barras    = produtoInfo.proCodBarras,
                    Descricao = string.Format("{0:00000}", produtoInfo.proId) + " - " + produtoInfo.proDescricao,
                    Quant     = dbQuant,
                    Total     = dbTotal,
                    ValorUnit = produtoInfo.proValorVarejo,
                    funid     = responsavel.Id,
                    funnome   = responsavel.Nome
                };


                if (produtoInfo.proId > 0)
                {
                    if (colecaoItemVenda.Count > 0)
                    {
                        for (int i = 0; i < colecaoItemVenda.Count; i++)
                        {
                            if (colecaoItemVenda[i].Id == produtoInfo.proId)
                            {
                                itemVendaInfo.ValorDesc = colecaoItemVenda[i].ValorDesc;
                                itemVendaInfo.Quant    += colecaoItemVenda[i].Quant;
                                itemVendaInfo.Total     = colecaoItemVenda[i].ValorDesc * itemVendaInfo.Quant;
                                itemVendaInfo.funid     = colecaoItemVenda[i].funid;
                                itemVendaInfo.funnome   = colecaoItemVenda[i].funnome;
                                colecaoItemVenda.RemoveAt(i);
                                break;
                            }
                        }
                    }

                    colecaoItemVenda.Add(itemVendaInfo);
                }
                else
                {
                    bool b = true;

                    for (int i = 0; i < colecaoItemVenda.Count; i++)
                    {
                        if (colecaoItemVenda[i].Barras == produtoInfo.proCodBarras)
                        {
                            b = false;
                            break;
                        }
                    }

                    if (b)
                    {
                        colecaoItemVenda.Add(itemVendaInfo);
                    }
                }


                if (produtoInfo.proControleEstoque == true)
                {
                    int cod = produtoInfo.proId;
                    produtoInfo    = new ProdutoInfo();
                    negocioEstoque = new EstoqueNegocios(Form1.Empresa.empconexao, Form1.Unidade.uniassistencia);
                    produtoInfo    = negocioEstoque.ConsultarEstoqueIdProdutoUnid(cod, Form1.Unidade.uniid);

                    if (produtoInfo.prodestoquequant < 1)
                    {
                        estoqueZerado = true;
                        FormMessage.ShowMessegeWarning("Verificar o estoque, consta que não tem mais desse produto!");
                    }
                }

                if (produtoInfo.proControleEstoque == true && !estoqueZerado)
                {
                    if (itemVendaInfo.Quant > produtoInfo.prodestoquequant)
                    {
                        FormMessage.ShowMessegeWarning("A quantidade de produto lançada é maior que a " +
                                                       "quantidade que há no estoque!");
                    }
                }

                labelDescricao.Text      = produtoInfo.proDescricao.Length > 99 ? produtoInfo.proDescricao.Substring(0, 95) + "..." : produtoInfo.proDescricao;
                labelValorTotalProd.Text = dbTotal.ToString("C");

                labelValorProdCod.Text    = string.Format("{0:000000}", produtoInfo.proId);
                labelValorProdBarras.Text = produtoInfo.proCodBarras;
                labelValorProdQuant.Text  = dbQuant.ToString("000");
                labelValorProdPreco.Text  = produtoInfo.proValorVarejo.ToString("C");
                labelValorEstoque.Text    = string.Format("{0:000}", produtoInfo.prodestoquequant);

                textBoxQuant.Text = "1,000";
                textBoxBarras.Clear();
                textBoxBarras.Select();
                buttonRemover.Enabled = true;
            }

            //AdicionarItemGrid();
            AdicionarItem();
        }