private void BuscarPedido(PedidoInfo pedidoInfo) { labelPedidoCod.Text = pedidoInfo.pedidocod; labelDataPedido.Text = pedidoInfo.pedidodata.ToLongDateString(); groupBoxOs.Enabled = false; BuscarServico(pedidoInfo.pedidoidserv); PedidoDetalhesColecao pedidoDetalhesColecao = pedidoNegocios.ConsultarPedidoDetalhesPedId(pedidoInfo.pedidoid); if (pedidoDetalhesColecao != null) { foreach (PedidoDetalhesInfo pedido in pedidoDetalhesColecao) { GridPedidoInfo gridPedidoInfo = new GridPedidoInfo { cod = pedido.peddetalhesid, descricao = produtoNegocios.ConsultarProdutosId(pedido.peddetalhesidprod).proDescricao, quant = pedido.peddetalhesquant, valorDesc = pedido.peddetalhesvalordesc, valorTotal = pedido.peddetalhesvalordesc * pedido.peddetalhesquant, valorUnit = pedido.peddetalhesvalorunit }; colecaoGridPedido.Add(gridPedidoInfo); } PreencherGridPedido(); } }
private void PreencherOrcamento() { if (orcamentoColecao != null) { gridPedidoColecao = new GridPedidoColecao(); foreach (ServicoOrcamentoInfo orc in orcamentoColecao) { decimal descont = orc.servicoorcamentotaxaativo ? -orc.servicoorcamentovalordesc : orc.servicoorcamentovalordesc; ProdutoInfo prodTaxa = negocioProduto.ConsultarProdutosId(orc.servicoorcamentoidprod); GridPedidoInfo grid = new GridPedidoInfo { cod = orc.servicoorcamentoidprod, descricao = prodTaxa.proDescricao, quant = orc.servicoorcamentoquant, valorDesc = descont, valorTotal = descont * orc.servicoorcamentoquant, valorUnit = orc.servicoorcamentovalorunit }; gridPedidoColecao.Add(grid); } } }
private void ConsultarProduto() { produtoInfo = new ProdutoInfo(); if (radioButtonBarras.Checked) { produtoInfo = produtoNegocios.ConsultarProdutoCodBarras(textBoxProdutoCod.Text); if (produtoInfo != null) { PreencherProdForm(produtoInfo); } else { CodBarras = textBoxProdutoCod.Text; textBoxProdutoCod.Clear(); FormProdutos formProdutos = new FormProdutos(CodBarras); formProdutos.ShowDialog(this); formProdutos.Dispose(); } } else { if (int.TryParse(textBoxProdutoCod.Text, out int cod)) { produtoInfo = produtoNegocios.ConsultarProdutosId(cod); if (produtoInfo != null) { PreencherProdForm(produtoInfo); } } else { FormMessage.ShowMessegeWarning("Insira um código válido!"); textBoxProdutoCod.Clear(); } } }
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(); }
private void PreencherGrid() { int pesquisa = 0; produtosColecao = new ProdutoColecao(); if (radioButtonProd.Checked) { pesquisa = 0; } if (radioButtonId.Checked) { pesquisa = 1; } if (radioButtonBarras.Checked) { pesquisa = 2; } switch (pesquisa) { case 0: produtosColecao = produtoNegocios.ConsultarProdutosDescricao(textBoxPesquisar.Text); break; case 1: if (int.TryParse(textBoxPesquisar.Text, out int id)) { produtosColecao.Add(produtoNegocios.ConsultarProdutosId(id)); } else { FormMessage.ShowMessegeWarning("Digite um código válido!"); } break; case 2: produtosColecao.Add(produtoNegocios.ConsultarProdutoCodBarras(textBoxPesquisar.Text)); break; default: break; } dataGridViewProd.DataSource = null; if (produtosColecao != null) { dataGridViewProd.DataSource = produtosColecao; dataGridViewProd.Select(); } else { dataGridViewProd.Rows.Add(null, null, "Nenhum produto foi encontrado!"); textBoxPesquisar.Select(); } //dataGridViewProd.ClearSelection(); textBoxPesquisar.Clear(); }
private void ConsultarProduto() { infoProd = produtoNegocios.ConsultarProdutosId(ProdCod); PreencherForm(infoProd, true); }
private void BuscarProdutos(string id) { if (!string.IsNullOrEmpty(id)) { if (radioButtonCod.Checked) { if (int.TryParse(id, out int cod)) { produtoInfo = produtoNegocios.ConsultarProdutosId(cod); } else { FormMessage.ShowMessegeWarning("Insira um código válido!"); } } else { produtoInfo = produtoNegocios.ConsultarProdutoCodBarras(textBoxProdutoCod.Text); } if (produtoInfo != null) { if (produtoInfo.proControleEstoque == true) { negocioEstoque = new EstoqueNegocios(Form1.Empresa.empconexao, Form1.Unidade.uniassistencia); ProdutoInfo produto = negocioEstoque.ConsultarEstoqueIdProdutoUnid(produtoInfo.proId, Form1.Unidade.uniid); if (produto != null) { if (textBoxFornecedorCod.Text == "000") { PreencherFormProduto(produto); } else { if (produto.proidfornecedor == infoPessoa.Id) { PreencherFormProduto(produto); } else { FormMessage.ShowMessegeWarning("Este produto não pertence a este fornecedor!"); textBoxProdutoCod.Clear(); } } } else { negocioEstoque = new EstoqueNegocios(Form1.Empresa.empconexao, Form1.Unidade.uniassistencia); if (negocioEstoque.InsertProdutoEstoque(produtoInfo.proId, Form1.Unidade.uniid) > 0) { produto = negocioEstoque.ConsultarEstoqueIdProdutoUnid(produtoInfo.proId, Form1.Unidade.uniid); PreencherFormProduto(produto); } else { FormMessage.ShowMessegeWarning("Falha!"); } } } else { if (FormMessage.ShowMessegeQuestion("O controle de estoque não está ativo para este produto! Deseja ativar o controle?") == DialogResult.Yes) { if (produtoNegocios.UpdateProdutoConfirmarLancEstoqueId(produtoInfo.proId) > 0) { PreencherFormProduto(produtoInfo); } } } } else { FormMessage.ShowMessegeWarning("Código inválido!"); textBoxProdutoCod.Clear(); textBoxProdutoCod.Select(); } } }
public string[] CriarCupom(VendaInfo venda, string servico = "") { servico = string.IsNullOrEmpty(servico) ? "" : "(" + servico + ")"; string cupom = string.Empty; string fiscal = "CUPOM NÃO FISCAL"; string a = fiscal.Substring(0, fiscal.Length / 2).PadLeft(tam / 2, '='); string b = fiscal.Substring(fiscal.Length / 2).PadRight(tam / 2, '='); string titulo = a + b; decimal desconto = 0; string nomTitulo = string.Empty; //dados da venda. if (venda != null) { switch (venda.venidstatus) { case 1: nomTitulo = "ORÇAMENTO"; break; case 2: nomTitulo = "VENDA"; break; case 3: nomTitulo = "CANCELADA"; break; default: break; } string nomA = nomTitulo.Substring(0, nomTitulo.Length / 2).PadLeft(tam / 2); string nomB = nomTitulo.Substring(nomTitulo.Length / 2).PadRight(tam / 2); nomTitulo = nomA + nomB; PessoaInfo funcInfo = funcNegocios.ConsultarPessoaId(venda.venidfunc); string dadosvenda = string.Empty; dadosvenda += "CONTROLE: " + string.Format("{0:00000000}", venda.venid) + Environment.NewLine; dadosvenda += "VENDEDOR: " + funcInfo.pssnome + Environment.NewLine; dadosvenda += "DATA/HORA: " + venda.vendatacad + Environment.NewLine; string dadositem = string.Empty; VendaDetalhesColecao venDetalhesColecao = vendaNegocios.ConsultarVendaDetalhesIdVenda(venda.venid); //dados da empresa string empresa = "EMPRESA"; string empA = string.Empty; string empB = string.Empty; empA = empresa.Substring(0, empresa.Length / 2).PadLeft(tam / 2); empB = empresa.Substring(empresa.Length / 2).PadRight(tam / 2); empresa = empA + empB; EmpresaNegocios empresaNegocios = new EmpresaNegocios(Form1.Empresa.empconexao); UnidadeInfo unidade = empresaNegocios.ConsultarUnidadeId(venda.venidunidade); string dadosemp = string.Empty; dadosemp += empresa + Environment.NewLine; dadosemp += unidade.unifantasia + Environment.NewLine; dadosemp += "Cnpj: " + string.Format(@"{0:00\.000\.000\/0000\-00}", Convert.ToDouble(unidade.unicnpj)) + Environment.NewLine; dadosemp += "End.: " + unidade.unicomplemento + ", " + Environment.NewLine; dadosemp += unidade.unilogradouro + Environment.NewLine; dadosemp += unidade.unibairro + ", " + unidade.unicidade + "-" + unidade.uniuf + Environment.NewLine; dadosemp += "Ref.: " + unidade.unireferencia + Environment.NewLine; dadosemp += "Telefone: " + unidade.unitelefone + Environment.NewLine; dadosemp += "Site: " + unidade.unisite.ToLower() + Environment.NewLine; dadosemp += "Email: " + unidade.uniemail.ToLower() + Environment.NewLine; //dados do cliente PessoaInfo infoPessoa = clienteNegocios.ConsultarPessoaId(venda.venidcliente); string cliente = "CLIENTE " + servico; string cliA = string.Empty; string cliB = string.Empty; cliA = cliente.Substring(0, cliente.Length / 2).PadLeft(tam / 2); cliB = cliente.Substring(cliente.Length / 2).PadRight(tam / 2); cliente = cliA + cliB; string dadoscliente = string.Empty; dadoscliente += cliente + Environment.NewLine; dadoscliente += infoPessoa.pssnome + Environment.NewLine; dadoscliente += "End.: " + infoPessoa.pssendcomplemento + ", " + Environment.NewLine + infoPessoa.pssendlogradouro + Environment.NewLine; dadoscliente += infoPessoa.pssendbairro + ", " + infoPessoa.pssendcidade + "-" + infoPessoa.pssenduf + Environment.NewLine; dadoscliente += "Telefone: " + infoPessoa.psstelefone + Environment.NewLine; dadoscliente += "Email: " + infoPessoa.pssemail + Environment.NewLine; //produtos int item = 1; foreach (VendaDetalhesInfo detalhes in venDetalhesColecao) { ProdutoInfo produtoInfo = produtoNegocios.ConsultarProdutosId(detalhes.vendetalhesidprod); decimal calc = 0; if (produtoInfo.protaxa) { calc = -detalhes.vendetalhesvalordesc; } else { calc = (detalhes.vendetalhesvalorunit - detalhes.vendetalhesvalordesc) * detalhes.vendetalhesquant; } string desc = string.Empty; string prod = string.Empty; dadositem += string.Format("{0:00}", item++) + " "; if (calc > 0) { desc = (-calc).ToString("C2"); prod += desc; } prod += (detalhes.vendetalhesquant + " UN x " + detalhes.vendetalhesvalordesc.ToString("C2") + " = " + (detalhes.vendetalhesquant * detalhes.vendetalhesvalordesc).ToString("C2")).PadLeft(tam - desc.Length); dadositem += string.Format("{0:00000}", produtoInfo.proId) + " " + produtoInfo.proDescricao + Environment.NewLine; dadositem += prod.PadLeft(tam) + Environment.NewLine; desconto += calc; } //formas de pagamentos string dadosformapag = string.Empty; string troco = string.Empty; if (venda.venmodo > 0) { string pagamento = "FORMA DE PAGAMENTO"; string pagA = string.Empty; string pagB = string.Empty; pagA = pagamento.Substring(0, pagamento.Length / 2).PadLeft(tam / 2); pagB = pagamento.Substring(pagamento.Length / 2).PadRight(tam / 2); pagamento = pagA + pagB; dadosformapag = pagamento + Environment.NewLine; VFormaPagPorVendaColecao forma = vendaNegocios.ConsultarVFormaPagPorVendaColecao(venda.venid); PagamentoInfo pagamentoInfo = vendaNegocios.ConsultarPagamentoIdVenda(venda.venid); foreach (VFormaPagPorVendaInfo pag in forma) { string descricao = pag.formpagdescricao; if (pag.pagdetalhesnumparcelas > 1) { decimal valor = pag.pagdetalhesvalor / pag.pagdetalhesnumparcelas; descricao += " " + pag.pagdetalhesnumparcelas + "x " + valor.ToString("C2"); } else { descricao += " À VISTA"; } if (pag.formpagid == 1 && pagamentoInfo.pagamentotroco > 0) { descricao = descricao.Replace(" À VISTA", ""); descricao += ", Recebido = " + (pag.pagdetalhesvalor + pagamentoInfo.pagamentotroco).ToString("C2"); } dadosformapag += descricao + pag.pagdetalhesvalor.ToString("C2").PadLeft(tam - descricao.Length) + Environment.NewLine; } troco += Environment.NewLine; if (desconto > 0) { string totalDesconto = "(" + string.Format("{0:0.00}", ((desconto * 100) / (venda.venvalor + desconto))) + "%) " + (-desconto).ToString("C2"); troco += "DESCONTO TOTAL: " + totalDesconto.PadLeft(tam - 16) + Environment.NewLine; } if (pagamentoInfo.pagamentotroco > 0) { troco += "TROCO: " + (-pagamentoInfo.pagamentotroco).ToString("C2").PadLeft(tam - 7) + Environment.NewLine; } } string total = "SUBTOTAL: " + (venda.venvalor + desconto).ToString("C2").PadLeft(tam - 10) + Environment.NewLine; total += "VALOR A PAGAR: " + venda.venvalor.ToString("C2").PadLeft(tam - "VALOR A PAGAR: ".Length); cupom += titulo + Environment.NewLine; cupom += "" + Environment.NewLine; cupom += nomTitulo + Environment.NewLine; cupom += dadosvenda; cupom += "".PadLeft(tam, '=') + Environment.NewLine; cupom += dadosemp; cupom += "".PadLeft(tam, '=') + Environment.NewLine; cupom += dadoscliente; cupom += "".PadLeft(tam, '-') + Environment.NewLine; cupom += "ITEM COD. DESCRICAO" + Environment.NewLine; cupom += "".PadLeft(tam, '-') + Environment.NewLine; cupom += dadositem + Environment.NewLine; cupom += "".PadLeft(tam, '*') + Environment.NewLine; cupom += "QUANT DE ITENS: " + string.Format("{0:00}", venda.venquant).PadLeft(tam - 16) + Environment.NewLine; cupom += total; cupom += "" + Environment.NewLine; cupom += "" + Environment.NewLine; cupom += dadosformapag; cupom += troco; string corpo = cupom; string rodape = string.Empty; if (venda.venmodo > 0) { rodape += "".PadLeft(tam, '.') + Environment.NewLine; rodape += "" + Environment.NewLine; rodape += nomTitulo + Environment.NewLine; rodape += dadosvenda; rodape += "UNIDADE: " + unidade.uniunidade + Environment.NewLine; rodape += "" + Environment.NewLine; rodape += dadoscliente; rodape += "" + Environment.NewLine; rodape += total; rodape += "" + Environment.NewLine; rodape += "" + Environment.NewLine; rodape += dadosformapag; rodape += troco; rodape += "".PadLeft(tam, '.') + Environment.NewLine; } string[] ArrCupom = new string[2]; ArrCupom[0] = corpo; ArrCupom[1] = rodape; return(ArrCupom); } else { FormMessage.ShowMessegeWarning("Nada foi encontrado!"); return(null); } }