Example #1
0
        /// <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);
        }
Example #2
0
        /// <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();
            }
        }
Example #3
0
        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();
        }