/// <summary> /// Preenche o produto pelo item acabdo que foi passado /// </summary> /// <param name="acabado">identificador do produto</param> private void PopulateProduto(IAcabado acabado) { if(acabado == null || !acabado.GUID.IsValid()) { MessageBox.Show(this, "Não foi possível localizar o produto informado.", "Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } txtProduto.Text = acabado.Descricao; txtCodigo.Text = acabado.EGUID; maskQuantidade.Text = "1"; currentItem = acabado; maskValorUnitario.Focus(); IItem item = new Item(); item.ItemMovimentado = currentItem; item.Quantidade = maskQuantidade.Value; item.ValorUnitarioBruto = maskValorUnitario.Value; venda.Itens.Add(item); }
/// <summary> /// Calcular a compra /// </summary> /// <param name="imprime">Se true, imprime o item e prepara o form para um novo item</param> private void CalcularCompra(bool imprime) { if(imprime && ParentBase.IsNullOrEmpty(currentItem)) { MessageBox.Show(this, "Produto é obrigatório", "Aviso!", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if(ParentBase.IsNullOrEmpty(currentItem) || maskQuantidade.Value == 0 || maskValorUnitario.Value == 0) return; double valorUnitario = maskValorUnitario.Value; double quantidade = maskQuantidade.Value; double subtotal = quantidade * valorUnitario; IItem item = venda.Itens.Last(); item.Quantidade = maskQuantidade.Value; item.ValorUnitarioBruto = maskValorUnitario.Value; maskValorTotal.Text = subtotal.ToString(); maskSubtotal.Text = subtotal.ToString(); maskTotalGeral.Text = venda.ValorTotalLiquido.ToString(); if(imprime) { Bobina.ImprimirItem(item, venda.Itens.Count); currentItem = null; txtProduto.Text = ""; txtCodigo.Text = ""; maskQuantidade.Text = ""; maskValorTotal.Text = ""; maskValorUnitario.Text = ""; maskSubtotal.Text = ""; txtProduto.Focus(); } }
public override void Gravar() { //------------------------------------------------------------------------- // Como teste pode recuperar qualquer ECF //------------------------------------------------------------------------- IUnidade un = new Unidade().Find()[0] as IUnidade; IVendedor vendedor = new Vendedor().Find<IVendedor>(new Where { Limit = 1 })[0]; VendaCF v = new VendaCF(); v.QuantidadeVolume = 2; v.TabelaPreco = new Data.Cadastro.TabelaPreco.TabelaPreco(Settings.TabelaPrecoCupomPadrao.GUID); v.DadoPessoa = new DadoPessoa { Cliente = Settings.ConsumidorFinal }; v.EmissorCupom = Settings.UsuarioAtual; // TODO: Voltar ao normal v.AbreFechaCaixa = new AbreCaixa().Find<AbreCaixa>().FirstOrDefault().CaixaAberto(); Acabado = v.TabelaPreco.Itens.FirstOrDefault().Item as IAcabado; v.Itens.Add(new OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.VendaCF.Item { Quantidade = new Random().NextDouble(15, 50), ValorUnitarioBruto = new Random().NextDouble(15, 50), DescricaoNF = "Produto de teste um", SituacaoTributaria = SituacaoTributaria.ISSQN, ItemMovimentado = Acabado, Unidade = un, Vendedor = vendedor, Conferido = true, TabelaPreco = v.TabelaPreco }); v.Itens.Add(new OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.VendaCF.Item { Quantidade = new Random().NextDouble(15, 50), ValorUnitarioBruto = new Random().NextDouble(15, 50), DescricaoNF = "Produto de teste dois", SituacaoTributaria = SituacaoTributaria.Cancelamento, ItemMovimentado = Acabado, Unidade = un, Vendedor = vendedor, Conferido = true, TabelaPreco = v.TabelaPreco }); v.Itens.Add(new OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.VendaCF.Item { Quantidade = new Random().NextDouble(15, 50), ValorUnitarioBruto = new Random().NextDouble(15, 50), DescricaoNF = "Produto de teste tres", SituacaoTributaria = "18,00", ItemMovimentado = Acabado, Unidade = un, Vendedor = vendedor, Conferido = true, TabelaPreco = v.TabelaPreco }); #region Movimento vinculado PreVendaTest pvt = new PreVendaTest(); pvt.Gravar(); v.MovimentosVinculados.Add(new PreVenda(pvt.GUID)); #endregion v.NumeroOrdemECF = 123; v.NumeroSerieECF = "212lklk1kl"; v.COO = 123458; GUID = v.Save(); }