public static void VendeItem(VendaDetalheVO VendaDetalhe) { try { FDataModule.ACBrECF.VendeItem(VendaDetalhe.GTIN, VendaDetalhe.DescricaoPDV, VendaDetalhe.ECFICMS, VendaDetalhe.Quantidade, VendaDetalhe.ValorUnitario); } catch (Exception eError) { MessageBox.Show("Falha ao Registrar Item!", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); Log.write(eError.ToString()); return; } }
public void CancelaPreVendasPendentes(List <PreVendaCabecalhoVO> ListaPreVendaCabecalho, List <PreVendaDetalheVO> ListaPreVendaDetalhe) { string Mensagem; int IdMovimento, ItemCupom; string Id; IdMovimento = FCaixa.Movimento.Id; for (int i = 0; i <= ListaPreVendaCabecalho.Count - 1; i++) { VendaCabecalhoVO VendaCabecalho = new VendaCabecalhoVO(); List <VendaDetalheVO> ListaVendaDetalhe = new List <VendaDetalheVO>(); VendaController VendaController = new VendaController(); ItemCupom = 0; FDataModule.ACBrECF.AbreCupom(); VendaCabecalho.IdMovimento = IdMovimento; VendaCabecalho.DataVenda = FDataModule.ACBrECF.DataHora; VendaCabecalho.HoraVenda = FDataModule.ACBrECF.DataHora.ToString("hh:mm:ss"); VendaCabecalho.StatusVenda = "C"; VendaCabecalho.CFOP = FCaixa.Configuracao.CFOPECF; VendaCabecalho.COO = Convert.ToInt32(FDataModule.ACBrECF.NumCOO); VendaCabecalho.CCF = Convert.ToInt32(FDataModule.ACBrECF.NumCCF); VendaCabecalho.ValorVenda = ListaPreVendaCabecalho[i].Valor; VendaCabecalho.IdPreVenda = ListaPreVendaCabecalho[i].Id; VendaCabecalho = VendaController.IniciaVenda(VendaCabecalho); Id = Convert.ToString(ListaPreVendaCabecalho[i].Id); Mensagem = FCaixa.MD5 + "PV" + new string('0', 10 - Id.Length) + Id + "\r" + "\n"; for (int j = 0; j <= ListaPreVendaDetalhe.Count - 1; j++) { if (ListaPreVendaDetalhe[j].IdPreVenda == ListaPreVendaCabecalho[i].Id) { ItemCupom++; VendaDetalheVO VendaDetalhe = new VendaDetalheVO(); ProdutoVO Produto = new ProdutoController().ConsultaId(ListaPreVendaDetalhe[j].IdProduto); VendaDetalhe.IdProduto = ListaPreVendaDetalhe[j].IdProduto; VendaDetalhe.CFOP = FCaixa.Configuracao.CFOPECF; VendaDetalhe.IdVendaCabecalho = VendaCabecalho.Id; VendaDetalhe.DescricaoPDV = Produto.DescricaoPDV; VendaDetalhe.UnidadeProduto = Produto.UnidadeProduto; VendaDetalhe.CST = Produto.Cst; VendaDetalhe.ECFICMS = Produto.ECFICMS; VendaDetalhe.TaxaICMS = Produto.AliquotaICMS; VendaDetalhe.TotalizadorParcial = Produto.TotalizadorParcial; VendaDetalhe.Quantidade = ListaPreVendaDetalhe[j].Quantidade; VendaDetalhe.ValorUnitario = ListaPreVendaDetalhe[j].ValorUnitario; VendaDetalhe.ValorTotal = ListaPreVendaDetalhe[j].ValorTotal; if (Produto.GTIN.Trim() == "") { VendaDetalhe.GTIN = Convert.ToString(Produto.Id); } else { VendaDetalhe.GTIN = Produto.GTIN; } VendaDetalhe.Item = ItemCupom; if (Produto.IPPT == "T") { VendaDetalhe.MovimentaEstoque = "S"; } else { VendaDetalhe.MovimentaEstoque = "N"; } ListaVendaDetalhe.Add(VendaDetalhe); VendaController.InserirItem(VendaDetalhe); FDataModule.ACBrECF.VendeItem(ListaPreVendaDetalhe[j].GtinProduto, ListaPreVendaDetalhe[j].NomeProduto, ListaPreVendaDetalhe[j].ECFICMS, Convert.ToDecimal(ListaPreVendaDetalhe[j].Quantidade), Convert.ToDecimal(ListaPreVendaDetalhe[j].ValorUnitario)); } }// for j = 0 to ListaPreVendaDetalhe.Count - 1 do FDataModule.ACBrECF.SubtotalizaCupom(); FDataModule.ACBrECF.EfetuaPagamento(FDataModule.ACBrECF.FormasPagamento[0].Indice, Convert.ToDecimal(ListaPreVendaCabecalho[i].Valor)); try { EmpresaVO Empresa = new EmpresaController().PegaEmpresa(FCaixa.Configuracao.IdEmpresa); if (Empresa.Uf == "MG") { Mensagem = Mensagem + "MINAS LEGAL:" + Empresa.Cnpj.Substring(8, 1) + FDataModule.ACBrECF.DataHora.ToString("ddmmyyyy"); if (FCaixa.VendaCabecalho.ValorFinal >= 1) { Mensagem = Mensagem + FCaixa.VendaCabecalho.ValorFinal.ToString(); } Mensagem = Mensagem + "\r" + "\n"; } } catch (Exception eError) { Log.write(eError.ToString()); } UECF.FechaCupom(Mensagem + FCaixa.Configuracao.MensagemCupom); UECF.CancelaCupom(); VendaController.CancelaVenda(VendaCabecalho, ListaVendaDetalhe); }// for i := 0 to ListaPreVendaCabecalho.Count - 1 do FCaixa.Movimento = new MovimentoController().VerificaMovimento(); }