public override void Editar()
        {
            PreVenda pv = new PreVenda(GUID);
            //fazer um dump dos itens do objeto
            DumpElement(pv.Itens);
            DumpElement(pv.ItensEspeciais);

            //excluir 2 itens e salvar
            pv.Itens.RemoveAt(0);
            pv.Itens.RemoveAt(0);
            pv.ItensEspeciais.RemoveAt(0);
            pv.Save();

            //recarrega o objeto para conferir se salvou corretamente os itens
            pv = new PreVenda(GUID);

            //fazer um dump dos itens do objeto
            DumpElement(pv.Itens);
            DumpElement(pv.ItensEspeciais);

            ProdutoAcabadoTest acabadoTest = new ProdutoAcabadoTest();
            acabadoTest.Gravar();

            //adicionar 3 itens
            pv.Itens.Add(new Item
            {
                Quantidade = 10,
                ValorUnitarioBruto = 12.5,
                DescricaoNF = "Produto de teste cinco",
                Status = 0,
                ItemMovimentado = new Acabado(acabadoTest.GUID)
            });

            pv.Itens.Add(new Item
            {
                Quantidade = 25,
                ValorUnitarioBruto = 15,
                DescricaoNF = "Produto de teste seis",
                Status = 0,
                ItemMovimentado = new Acabado(acabadoTest.GUID)
            });

            pv.Itens.Add(new Item
            {
                Quantidade = 33,
                ValorUnitarioBruto = 17.5,
                DescricaoNF = "Produto de teste sete",
                Status = 0,
                ItemMovimentado = new Acabado(acabadoTest.GUID)
            });

            pv.Save();

            //recarrega o objeto para conferir se salvou corretamente os itens
            pv = new PreVenda(GUID);
            //fazer um dump dos itens do objeto
            DumpElement(pv.Itens);
        }
Esempio n. 2
0
        public void CancelarTotal()
        {
            Gravar();

            PreVenda pv = new PreVenda(GUID);
            pv.Cancelar("Teste de aplicação"); ;

            //carregar o objeto e verificar se foi carregado os dados do cancelamento
            pv = new PreVenda(GUID);
            DumpElement(pv);

            Assert.AreNotEqual(pv.DadosCancelamento, null);
        }
Esempio n. 3
0
        public void CancelarItem()
        {
            Gravar();

            string motivo = "Teste de cancelamento de item";

            PreVenda pv = new PreVenda(GUID);
            //cancelar apenas o primeiro item
            pv.Itens[0].Cancelar(motivo);

            //carregar o objeto e verificar se foi carregado os dados do cancelamento
            pv = new PreVenda(GUID);
            DumpElement(pv);

            Assert.AreEqual(pv.Itens[0].DadosCancelamento.Motivo, motivo);
        }
Esempio n. 4
0
        /// <summary>
        /// Cria uma Pré-Venda de acordo com o movimento
        /// </summary>
        /// <param name="movimento">Movimento a ser convertido</param>
        /// <returns></returns>
        public static IPreVenda Create(Model.Faturamento.Lancamento.Movimento.IMovimento movimento)
        {
            if (movimento.IsNullOrEmpty()) return null;

            IPreVenda result = new PreVenda();

            result.EGUID = movimento.EGUID;
            result.DadoPessoa = movimento.DadoPessoa;
            result.DataHoraMovimento = movimento.DataHoraMovimento;
            result.DataEmissao = movimento.DataEmissao;
            result.ItensEspeciais = movimento.ItensEspeciais;
            result.TabelaPreco = movimento.TabelaPreco;

            result.Itens = new List<Model.Faturamento.Lancamento.Movimento.Item.IItem>();

            foreach (Model.Faturamento.Lancamento.Movimento.Item.IItem item in movimento.Itens)
            {
                result.Itens.Add(new Data.Faturamento.Lancamento.Movimento.Item.PreVenda.Item
                {
                    EGUID = item.EGUID,
                    ItemMovimentado = item.ItemMovimentado,
                    DescricaoNF = item.DescricaoNF,
                    CFOP = item.CFOP,
                    Conferido = item.Conferido,
                    ItensEspeciais = item.ItensEspeciais,
                    Ordem = item.Ordem,
                    Quantidade = item.Quantidade,
                    QuantidadeConferida = item.QuantidadeConferida,
                    Unidade = item.Unidade,
                    ValorDescontoAcrescimo = item.ValorDescontoAcrescimo,
                    ValorUnitarioBruto = item.ValorUnitarioBruto,
                    Vendedor = item.Vendedor,
                    PercentualImpostoAproximadoFederal = item.PercentualImpostoAproximadoFederal,
                    PercentualImpostoAproximadoImport = item.PercentualImpostoAproximadoImport,
                    PercentualImpostoAproximadoEstadual = item.PercentualImpostoAproximadoEstadual,
                    PercentualImpostoAproximadoMunicipal = item.PercentualImpostoAproximadoMunicipal,

                    TabelaPreco = item.TabelaPreco
                });
            }

            return result;
        }
Esempio n. 5
0
        public override void Gravar()
        {
            PreVenda pv = new PreVenda();

            #region Vendedor
            Continente t = new Continente();
            t.Nome = "Europa";
            GUID guidContinente = t.Save();
            Pais p = new Pais();
            p.Nome = "Brasil";
            p.Abreviatura = "BR";
            p.CodBACEN = "1234";
            p.Continente = t;
            GUID guidPais = p.Save();
            Estado e = new Estado();
            e.Nome = "Europa";
            e.CodigoIBGE = "41256";
            e.UF = "PR";
            e.Pais = p;
            GUID guidEstado = e.Save();
            Municipio m = new Municipio();
            m.Abreviatura = "PVI";
            m.CodigoIBGE = "123546";
            m.Estado = e;
            m.Nome = "Paranavaí";
            GUID guidMunicipio = m.Save();
            Cidade c = new Cidade();
            c.Abreviatura = "GR";
            c.Municipio = m;
            c.Nome = "Graciosa";
            GUID = c.Save();

            Logradouro l = new Logradouro();
            l.Descricao = "Avenida";
            l.Abreviatura = "Av";
            GUID guidLogradouro = l.Save();

            Bairro b = new Bairro();
            b.Cidade = c;
            b.Descricao = "Centro";
            GUID guidBairro = b.Save();

            OpenPOS.Data.Cadastro.Endereco.Endereco end = new OpenPOS.Data.Cadastro.Endereco.Endereco();
            end.Logradouro = l;
            end.CEP = "87704020";
            end.Endereco = "Joaquim da Silva";
            end.Bairro = b;
            string guidEndereco = end.Save();

            OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica fisica = new OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica();
            fisica.CPF = "05210438910";
            fisica.DataNascimento = new DateTime(1985, 07, 27);
            fisica.EstadoCivil = Enuns.Cadastro.Pessoa.EstadoCivil.Casado;
            fisica.MaeNome = "Teste";
            fisica.PaiNome = "Teste";
            fisica.RG = "90702343";
            fisica.RGEmissao = new DateTime(1995, 12, 12);
            Estado estado = new Estado(guidEstado);
            fisica.RGEstado = estado;
            fisica.RGOrgao = "SSPPR";
            fisica.RGTipoVisto = "";
            fisica.Sexo = Enuns.Cadastro.Pessoa.Sexo.Masculino;

            OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica juridica = new OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica();
            juridica.CNPJ = "75480764000120";
            juridica.DataAbertura = new DateTime(1999, 10, 10);
            juridica.IM = "1205";
            juridica.ISuf = "";
            juridica.RamoAtividade = new RamoAtividade().Find<IRamoAtividade>()[0];

            OpenPOS.Data.Cadastro.Pessoa.Endereco endereco = new OpenPOS.Data.Cadastro.Pessoa.Endereco();
            endereco.CaixaPostal = "123";
            endereco.Cobranca = true;
            endereco.Complemento = "teste";
            endereco.Correspondencia = true;
            endereco.Endereco = end;
            endereco.Entrega = true;
            endereco.Faturamento = true;
            endereco.Numero = "1234";
            endereco.Principal = true;
            endereco.Proximidade = "Estadio";
            endereco.Retirada = true;
            endereco.TipoEndereco = Enuns.Cadastro.Endereco.TipoEndereco.Principal;

            IVendedor vendedor = new Vendedor().Find<IVendedor>(new Where { Limit = new Limit(1, 1) })[0];
            #endregion

            #region DadoPessoa

            Model.Faturamento.Lancamento.Movimento.IDadoPessoa dadoPessoa =
                new Data.Faturamento.Lancamento.Movimento.DadoPessoa.DadoPessoa();

            ICliente cliente = CriarCliente();
            dadoPessoa.Cliente = cliente;
            #endregion

            pv.TabelaPreco = new Data.Cadastro.TabelaPreco.TabelaPreco().Find<Model.Cadastro.TabelaPreco.ITabelaPreco>(new Where { Limit = new Limit(1) })[0];
            pv.DadoPessoa = dadoPessoa;
            pv.COO = 123457;

            #region Frete
            Frete frete = new Frete();
            frete.Descricao = "Frete";
            frete.Save();
            #endregion

            #region Desconto
            Desconto desconto = new Desconto();
            desconto.Descricao = "Desconto";
            desconto.Save();
            #endregion

            #region Encargos
            EncargoFinanceiro encargoFinanceiro = new EncargoFinanceiro();
            encargoFinanceiro.Descricao = "Encargo Financeiro";
            encargoFinanceiro.Save();
            #endregion

            #region CFOP
            ICFOP cfop = new CFOP().Find<ICFOP>(new Where { Limit = new Limit(1, 1) })[0];
            #endregion

            #region items
            ProdutoAcabadoTest acabadoTest = new ProdutoAcabadoTest();

            for(int i = 0; i < 7; i++)
            {
                acabadoTest.Gravar();
                pv.Itens.Add(new Item
                {
                    Vendedor = vendedor,
                    Quantidade = new Random().NextDouble(7, 21),
                    ValorUnitarioBruto = new Random().NextDouble(7, 42),
                    DescricaoNF = "Produto de teste um",
                    Status = 0,
                    ItemMovimentado = new Acabado(acabadoTest.GUID),
                    CFOP = cfop,
                    ItensEspeciais = new List<IEspecial> {
                    new Especial{
                        Ordem = 0,
                        ItemEspecial  = frete,
                        Valor = new Random().NextDouble(21, 77)
                    },
                    new Especial{
                        Ordem = 1,
                        ItemEspecial = desconto,
                        Valor = new Random().NextDouble(21, 77)
                    },
                    new Especial{
                        Ordem = 2,
                        ItemEspecial = encargoFinanceiro,
                        Valor = new Random().NextDouble(21, 77)
                    },
                }
                });
            }
            #endregion

            #region Parcelas
            //-------------------------------------------------------------------------
            // Conta Corrente
            //-------------------------------------------------------------------------
            IContaCorrente contaCorrente = new ContaCorrente();
            contaCorrente.Descricao = new Random().NextString();
            contaCorrente.Save();

            //-------------------------------------------------------------------------
            // Criar uma condição de pagamento
            //-------------------------------------------------------------------------
            ICondicaoPagamento condicaoPagamento = new CondicaoPagamento();
            condicaoPagamento.Descricao = "30/60";
            condicaoPagamento.PrazoMedio = 1;
            condicaoPagamento.FormaCalculoVencimento = Enuns.Cadastro.Financeiro.FormaCalculoVencimento.Mensal;
            condicaoPagamento.VencimentoFeriado = Enuns.Cadastro.Financeiro.VencimentoFeriado.Manter;
            condicaoPagamento.MesmoDiaMes = false;

            #region Período de vencimento
            IPeriodo periodo = new OpenPOS.Data.Cadastro.Periodo.Periodo();
            periodo.Tipo = TipoVencimento.ManualMes;
            periodo.Descricao = "Período mensal";
            periodo.Save();
            #endregion

            IParcela parcelaUm = new Parcela();
            parcelaUm.APartirDataEmissao = 30;
            parcelaUm.APartirDataVencimentoAnterior = 30;
            parcelaUm.Percentual = 35;
            parcelaUm.PeriodoVencimento = periodo;
            parcelaUm.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaUm);

            IParcela parcelaDois = new Parcela();
            parcelaDois.APartirDataEmissao = 30;
            parcelaDois.APartirDataVencimentoAnterior = 60;
            parcelaDois.Percentual = 65;
            parcelaDois.PeriodoVencimento = periodo;
            parcelaDois.PeriodoVencimento = periodo;
            condicaoPagamento.Parcelas.Add(parcelaDois);
            condicaoPagamento.Save();

            pv.CondicaoPagamento = condicaoPagamento;

            #endregion

            GUID = pv.Save();
        }
Esempio n. 6
0
 public override void Popular()
 {
     PreVenda pv = new PreVenda(GUID);
     DumpElement(pv);
     DumpElement(pv.Itens);
     DumpElement(pv.Parcelas);
 }
Esempio n. 7
0
        /// <summary>
        /// Cancela as Pré Vendas pendentes  
        /// </summary>
        private void CancelaPreVendasPendentes()
        {
            try
            {
                //Verifica se tem pre vendas pendentes
                DateTime dataMov = DateTime.Today;

                #region Antes da emissão da redução Z

                if (DadosReducaoZ.DataDoMovimento.CompareTo(dataMov) > 2)
                    dataMov = dataMov.AddDays(DadosReducaoZ.DataDoMovimento.CompareTo(dataMov) - 1);
                else if (DadosReducaoZ.DataDoMovimento.CompareTo(dataMov) != 1)
                    dataMov = DadosReducaoZ.DataDoMovimento.AddDays(-1);

                IList<IPreVenda> preVendas = new PreVenda().Find<IPreVenda>(new Where() {
                {
                    "fat_LanMov.DataHoraMovimento < @p1",
                    new Parameter
                    {
                        GenericDbType = GenericDbType.DateTime,
                        ParameterName = "@p1",
                        Value = dataMov
                    }
                   },
                     {
                    "fat_Lan.Status = @p2",
                    new Parameter
                    {
                        GenericDbType = GenericDbType.Integer,
                        ParameterName = "@p2",
                        Value = (int)Enuns.Faturamento.Lancamento.Status.Aberto
                    }
                   }
                });
                //Cancela se houver pre vendas pendentes
                foreach (IPreVenda pv in preVendas)
                {
                    Model.Faturamento.Lancamento.Movimento.VendaCF.IVendaCF venda = new VendaCF();
                    venda.DadoPessoa = pv.DadoPessoa;
                    venda.Emitente = pv.Emitente;

                    int contaPV = 0;
                    foreach (Model.Faturamento.Lancamento.Movimento.Item.IItem item in pv.Itens)
                        if (((Model.Faturamento.Lancamento.Movimento.Item.PreVenda.IItem)item).Status == Enuns.Faturamento.Lancamento.Movimento.Item.Status.Cancelado)
                            contaPV++;

                    if (contaPV != pv.Itens.Count)
                    {
                        ACBrECF.AbreCupom(venda.DadoPessoa.Cliente.GetCPFCNPJ(), venda.DadoPessoa.NomeFantasia, "");
                        foreach (Model.Faturamento.Lancamento.Movimento.Item.IItem item in pv.Itens)
                            if (((Model.Faturamento.Lancamento.Movimento.Item.PreVenda.IItem)item).Status != Enuns.Faturamento.Lancamento.Movimento.Item.Status.Cancelado)
                            {
                                Model.Faturamento.Lancamento.Movimento.Item.VendaCF.IItem i = new OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.VendaCF.Item();
                                i.DescricaoNF = item.DescricaoNF;
                                i.ItemMovimentado = item.ItemMovimentado;
                                i.Quantidade = item.Quantidade;
                                i.ValorUnitarioBruto = item.ValorUnitarioBruto;
                                i.Vendedor = item.Vendedor;
                                i.Status = Enuns.Faturamento.Lancamento.Movimento.Item.Status.Cancelado;
                                i.SituacaoTributaria = SituacaoTributaria.Isento;
                                i.ItensParent.Add(item);
                                (i.ItemMovimentado as Model.Cadastro.Item.Produto.IProduto).IndicadorProducao = "P";
                                (i.ItemMovimentado as Model.Cadastro.Item.Produto.IProduto).IndicadorTruncamento = "T";
                                ((Model.Faturamento.Lancamento.Movimento.Item.PreVenda.IItem)item).Status = Enuns.Faturamento.Lancamento.Movimento.Item.Status.Cancelado;
                                item.Save();
                                venda.Itens.Add(i);
                                ACBrECF.VendeItem(i.Ordem.ToString(), i.DescricaoNF, "FF", (decimal)i.Quantidade, (decimal)i.ValorUnitarioLiquido);
                            }

                        venda.NumeroSerieECF = NumeroSerie;
                        venda.NumeroOrdemECF = Unimake.Convert.ToInt(NumeroECF);
                        venda.COO = COO;
                        venda.COOFinal = 0; // Todo: o valor do coo final será atualizado posteriormente pela emissão da redução z
                        venda.CRO = CRO;
                        venda.CCF = CCF;
                        venda.CRZ = CRZ;
                        venda.ValorGrandeTotalECF = GrandeTotal;
                        venda.Save();
                        ACBrECF.SubtotalizaCupom();
                        ACBrECF.FechaCupom("Obrigado");
                        ACBrECF.CancelaCupom();
                        pv.Cancelar(DateTime.Today, "Cancelamento Automático - Emissão de Redução Z");
                    }
                }
                #endregion
            }
            finally
            {
                //aqui tem que liberar a variável da redução Z, pois será chamada em outros métodos que dependem
                // dos dados da última redução Z. Ou seja, os dados de pois de validados por este método.
                // Este método é chamado antes da redução Z
                _dadosReducaoZ = null;
            }
        }
        public override void Gravar()
        {
            PreVenda pv = new PreVenda();

            #region Vendedor
            Model.Cadastro.Endereco.IEndereco end = new Data.Cadastro.Endereco.Endereco().Find<Model.Cadastro.Endereco.IEndereco>(new Where { Limit = 1 })[0];

            OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica fisica = new OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica();
            fisica.CPF = "05210438910";
            fisica.DataNascimento = new DateTime(1985, 07, 27);
            fisica.EstadoCivil = Enuns.Cadastro.Pessoa.EstadoCivil.Casado;
            fisica.MaeNome = "Teste";
            fisica.PaiNome = "Teste";
            fisica.RG = "90702343";
            fisica.RGEmissao = new DateTime(1995, 12, 12);
            fisica.RGEstado = end.Estado;
            fisica.RGOrgao = "SSPPR";
            fisica.RGTipoVisto = "";
            fisica.Sexo = Enuns.Cadastro.Pessoa.Sexo.Masculino;

            OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica juridica = new OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica();
            juridica.CNPJ = "75480764000120";
            juridica.DataAbertura = new DateTime(1999, 10, 10);
            juridica.IM = "1205";
            juridica.ISuf = "";
            juridica.RamoAtividade = new RamoAtividade().Find<IRamoAtividade>()[0];

            OpenPOS.Data.Cadastro.Pessoa.Endereco endereco = new OpenPOS.Data.Cadastro.Pessoa.Endereco();
            endereco.CaixaPostal = "123";
            endereco.Cobranca = true;
            endereco.Complemento = "teste";
            endereco.Correspondencia = true;
            endereco.Endereco = end;
            endereco.Entrega = true;
            endereco.Faturamento = true;
            endereco.Numero = "1234";
            endereco.Principal = true;
            endereco.Proximidade = "Estadio";
            endereco.Retirada = true;
            endereco.TipoEndereco = Enuns.Cadastro.Endereco.TipoEndereco.Principal;

            IVendedor vendedor = new Vendedor().Find<IVendedor>(new Where { Limit = new Limit(1, 1) })[0];
            #endregion

            #region DadoPessoa

            Model.Faturamento.Lancamento.Movimento.IDadoPessoa dadoPessoa =
                new Data.Faturamento.Lancamento.Movimento.DadoPessoa.DadoPessoa();

            ICliente cliente = new Cliente().Find<ICliente>(new Where { Limit = new Limit(1, 1) })[0];
            dadoPessoa.Cliente = cliente;
            #endregion

            pv.TabelaPreco = new Data.Cadastro.TabelaPreco.TabelaPreco().Find<Model.Cadastro.TabelaPreco.ITabelaPreco>(new Where { Limit = new Limit(1) })[0];
            pv.DadoPessoa = dadoPessoa;
            pv.COO = 123457;

            #region Frete
            Frete frete = new Frete();
            frete.Descricao = "Frete";
            frete.Save();
            #endregion

            #region Desconto
            Desconto desconto = new Desconto();
            desconto.Descricao = "Desconto";
            desconto.Save();
            #endregion

            #region Encargos
            EncargoFinanceiro encargoFinanceiro = new EncargoFinanceiro();
            encargoFinanceiro.Descricao = "Encargo Financeiro";
            encargoFinanceiro.Save();
            #endregion

            #region CFOP
            ICFOP cfop = new CFOP().Find<ICFOP>(new Where { Limit = new Limit(1, 1) })[0];
            #endregion

            #region items
            ProdutoAcabadoTest acabadoTest = new ProdutoAcabadoTest();

            for(int i = 0; i < 3; i++)
            {
                acabadoTest.Gravar();
                pv.Itens.Add(new Item
                {
                    Quantidade = new Random().NextDouble(7, 21),
                    ValorUnitarioBruto = new Random().NextDouble(7, 42),
                    DescricaoNF = "Produto de teste um",
                    Status = 0,
                    ItemMovimentado = new Acabado(acabadoTest.GUID),
                    CFOP = cfop,
                    Vendedor = vendedor,
                    ItensEspeciais = new List<IEspecial> {
                    new Especial{
                        Ordem = 0,
                        ItemEspecial  = frete,
                        Valor = 10
                    },
                    new Especial{
                        Ordem = 1,
                        ItemEspecial = desconto,
                        Valor = 10
                    },
                    new Especial{
                        Ordem = 2,
                        ItemEspecial = encargoFinanceiro,
                        Valor = 10
                    },
                }
                });
            }
            #endregion

            #region itens especiais
            pv.ItensEspeciais = new List<IEspecial> {
                    new Especial{
                        Ordem = 0,
                        ItemEspecial  = frete,
                        Valor = 12
                    },
                    new Especial{
                        Ordem = 1,
                        ItemEspecial = desconto,
                        Valor = 12
                    },
                    new Especial{
                        Ordem = 2,
                        ItemEspecial = desconto,
                        Valor = 12
                    },
                    new Especial{
                        Ordem = 3,
                        ItemEspecial = encargoFinanceiro,
                        Valor = 12
                    }};
            #endregion

            GUID = pv.Save();
        }
 public override void Popular()
 {
     PreVenda pv = new PreVenda(GUID);
     DumpElement(pv);
     DumpElement(pv.Itens);
     DumpElement(pv.ItensEspeciais);
 }
Esempio n. 10
0
        public override void Gravar()
        {
            #region DAV

            DAV dav = new DAV();

            #region Vendedor
            Continente t = new Continente();
            t.Nome = "Europa";
            GUID guidContinente = t.Save();
            Pais p = new Pais();
            p.Nome = "Brasil";
            p.Abreviatura = "BR";
            p.CodBACEN = "1234";
            p.Continente = t;
            GUID guidPais = p.Save();
            Estado e = new Estado();
            e.Nome = "Europa";
            e.CodigoIBGE = "41256";
            e.UF = "PR";
            e.Pais = p;
            GUID guidEstado = e.Save();
            Municipio m = new Municipio();
            m.Abreviatura = "PVI";
            m.CodigoIBGE = "123546";
            m.Estado = e;
            m.Nome = "Paranavaí";
            GUID guidMunicipio = m.Save();
            Cidade c = new Cidade();
            c.Abreviatura = "GR";
            c.Municipio = m;
            c.Nome = "Graciosa";
            GUID = c.Save();

            Logradouro l = new Logradouro();
            l.Descricao = "Avenida";
            l.Abreviatura = "Av";
            GUID guidLogradouro = l.Save();

            Bairro b = new Bairro();
            b.Cidade = c;
            b.Descricao = "Centro";
            GUID guidBairro = b.Save();

            OpenPOS.Data.Cadastro.Endereco.Endereco end = new OpenPOS.Data.Cadastro.Endereco.Endereco();
            end.Logradouro = l;
            end.CEP = "87704020";
            end.Endereco = "Joaquim da Silva";
            end.Bairro = b;
            string guidEndereco = end.Save();

            IVendedor vendedor = new Vendedor();
            vendedor.FisicaJuridica = Enuns.Cadastro.Pessoa.FisicaJuridica.Fisica;
            OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica fisica = new OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica();
            fisica.CPF = "05210438910";
            fisica.DataNascimento = new DateTime(1985, 07, 27);
            fisica.EstadoCivil = Enuns.Cadastro.Pessoa.EstadoCivil.Casado;
            fisica.MaeNome = "Teste";
            fisica.PaiNome = "Teste";
            fisica.RG = "90702343";
            fisica.RGEmissao = new DateTime(1995, 12, 12);
            Estado estado = new Estado(guidEstado);
            fisica.RGEstado = estado;
            fisica.RGOrgao = "SSPPR";
            fisica.RGTipoVisto = "";
            fisica.Sexo = Enuns.Cadastro.Pessoa.Sexo.Masculino;

            OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica juridica = new OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica();
            juridica.CNPJ = "75480764000120";
            juridica.DataAbertura = new DateTime(1999, 10, 10);
            juridica.IM = "1205";
            juridica.ISuf = "";
            juridica.RamoAtividade = new RamoAtividade().Find<IRamoAtividade>()[0];

            OpenPOS.Data.Cadastro.Pessoa.Endereco endereco = new OpenPOS.Data.Cadastro.Pessoa.Endereco();
            // endereco.GUID = guidEndereco;
            endereco.CaixaPostal = "123";
            endereco.Cobranca = true;
            endereco.Complemento = "teste";
            endereco.Correspondencia = true;
            endereco.Endereco = end;
            endereco.Entrega = true;
            endereco.Faturamento = true;
            endereco.Numero = "1234";
            endereco.Principal = true;
            endereco.Proximidade = "Estadio";
            endereco.Retirada = true;
            endereco.TipoEndereco = Enuns.Cadastro.Endereco.TipoEndereco.Principal;
            vendedor.Enderecos = new List<IEndereco> { endereco };
            vendedor.Fisica = fisica;
            vendedor.Juridica = juridica;
            vendedor.NomeFantasia = "Teste";
            vendedor.Observacao = "teste unitario";
            vendedor.RazaoSocial = "Teste";
            vendedor.TipoPessoa = Enuns.Cadastro.Pessoa.TipoPessoa.Vendedor;
            GUID guidVendedor = vendedor.Save();

            #endregion

            #region DadoPessoa

            Model.Faturamento.Lancamento.Movimento.IDadoPessoa dadoPessoa = new Data.Faturamento.Lancamento.Movimento.DadoPessoa.DadoPessoa();

            Cliente cliente = new Cliente()
            {
                FisicaJuridica = Enuns.Cadastro.Pessoa.FisicaJuridica.Fisica,
                Fisica = fisica,
                NomeFantasia = "Luciano",
                RazaoSocial = "Luciano Leandro",
                TipoPessoa = Enuns.Cadastro.Pessoa.TipoPessoa.Cliente,
                Enderecos = new List<IEndereco> { endereco }
            };
            cliente.Save();
            dadoPessoa.Cliente = cliente;

            #endregion
            dav.DadoPessoa = dadoPessoa;
            Item item1 = new Item()
            {
                Quantidade = 10,
                ValorUnitarioBruto = 12.5,
                DescricaoNF = "Produto de teste um",
                Vendedor = vendedor
            };
            dav.Itens.Add(item1);
            GUID guidDav = dav.Save();

            #endregion

            PreVenda pv = new PreVenda();

            OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.PreVenda.Item itempv1 = new OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.PreVenda.Item()
            {
                Quantidade = 10,
                ValorUnitarioBruto = 12.5,
                DescricaoNF = "Produto de teste um",
                Status = 0,

            };
            itempv1.Parent = pv;
            itempv1.ItensParent.Add((Item)dav.Itens[0].Clone());
            pv.Itens.Add(itempv1);

            guidPv = pv.Save();

            VendaCF v = new VendaCF();

            OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.VendaCF.Item itemVCF = new OpenPOS.Data.Faturamento.Lancamento.Movimento.Item.VendaCF.Item
            {
                Quantidade = 25,
                ValorUnitarioBruto = 15,
                DescricaoNF = "Produto de teste um",
            };
            itemVCF.Parent = v;
            itemVCF.ItensParent.Add((Data.Faturamento.Lancamento.Movimento.Item.PreVenda.Item)pv.Itens[0].Clone());
            v.Itens.Add(itemVCF);
            GUID = v.Save();
        }
Esempio n. 11
0
 public void SerializePreVenda()
 {
     PreVenda pv = new PreVenda("a2d61b73-8acb-475a-9c8d-f70e100f24e0");
     string o = Serializer.Serialize(pv);
     pv = Deserializer.Deserialize<PreVenda>(o);
 }
Esempio n. 12
0
        public override void Gravar()
        {
            PreVenda = new PreVenda();

            #region Vendedor
            Continente t = new Continente();
            t.Nome = "Europa";
            GUID guidContinente = t.Save();
            Pais p = new Pais();
            p.Nome = "Brasil";
            p.Abreviatura = "BR";
            p.CodBACEN = "1234";
            p.Continente = t;
            GUID guidPais = p.Save();
            Estado e = new Estado();
            e.Nome = "Europa";
            e.CodigoIBGE = "99";
            e.UF = "PR";
            e.Pais = p;
            GUID guidEstado = e.Save();
            Municipio m = new Municipio();
            m.Abreviatura = "PVI";
            m.CodigoIBGE = "123546";
            m.Estado = e;
            m.Nome = "Paranavaí";
            GUID guidMunicipio = m.Save();
            Cidade c = new Cidade();
            c.Abreviatura = "GR";
            c.Municipio = m;
            c.Nome = "Graciosa";
            GUID = c.Save();

            Logradouro l = new Logradouro();
            l.Descricao = "Avenida";
            l.Abreviatura = "Av";
            GUID guidLogradouro = l.Save();

            Bairro b = new Bairro();
            b.Cidade = c;
            b.Descricao = "Centro";
            GUID guidBairro = b.Save();

            OpenPOS.Data.Cadastro.Endereco.Endereco end = new OpenPOS.Data.Cadastro.Endereco.Endereco();
            end.Logradouro = l;
            end.CEP = "87704020";
            end.Endereco = "Joaquim da Silva";
            end.Bairro = b;
            string guidEndereco = end.Save();

            OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica fisica = new OpenPOS.Data.Cadastro.Pessoa.Fisica.Fisica();
            fisica.CPF = "05210438910";
            fisica.DataNascimento = new DateTime(1985, 07, 27);
            fisica.EstadoCivil = Enuns.Cadastro.Pessoa.EstadoCivil.Casado;
            fisica.MaeNome = "Teste";
            fisica.PaiNome = "Teste";
            fisica.RG = "90702343";
            fisica.RGEmissao = new DateTime(1995, 12, 12);
            Estado estado = new Estado(guidEstado);
            fisica.RGEstado = estado;
            fisica.RGOrgao = "SSPPR";
            fisica.RGTipoVisto = "";
            fisica.Sexo = Enuns.Cadastro.Pessoa.Sexo.Masculino;

            OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica juridica = new OpenPOS.Data.Cadastro.Pessoa.Juridica.Juridica();
            juridica.CNPJ = "75480764000120";
            juridica.DataAbertura = new DateTime(1999, 10, 10);
            juridica.IM = "1205";
            juridica.ISuf = "";
            juridica.RamoAtividade = new RamoAtividade().Find<IRamoAtividade>()[0];

            OpenPOS.Data.Cadastro.Pessoa.Endereco endereco = new OpenPOS.Data.Cadastro.Pessoa.Endereco();
            endereco.CaixaPostal = "123";
            endereco.Cobranca = true;
            endereco.Complemento = "teste";
            endereco.Correspondencia = true;
            endereco.Endereco = end;
            endereco.Entrega = true;
            endereco.Faturamento = true;
            endereco.Numero = "1234";
            endereco.Principal = true;
            endereco.Proximidade = "Estadio";
            endereco.Retirada = true;
            endereco.TipoEndereco = Enuns.Cadastro.Endereco.TipoEndereco.Principal;

            IVendedor vendedor = new Vendedor().Find<IVendedor>(new Where { Limit = new Limit(1, 1) })[0];
            #endregion

            #region DadoPessoa

            Model.Faturamento.Lancamento.Movimento.IDadoPessoa dadoPessoa =
                new Data.Faturamento.Lancamento.Movimento.DadoPessoa.DadoPessoa();

            ICliente cliente = new Cliente().Find<ICliente>(new Where { Limit = new Limit(1, 1) })[0];
            dadoPessoa.Cliente = cliente;

            #endregion

            PreVenda.TabelaPreco = new Data.Cadastro.TabelaPreco.TabelaPreco(Settings.TabelaPrecoPadrao.GUID);
            PreVenda.DadoPessoa = dadoPessoa;
            PreVenda.COO = 123457;

            #region Frete
            Frete frete = new Frete();
            frete.Descricao = "Frete";
            frete.Save();
            #endregion

            #region Desconto
            Desconto desconto = new Desconto();
            desconto.Descricao = "Desconto";
            desconto.Save();
            #endregion

            #region Encargos
            EncargoFinanceiro encargoFinanceiro = new EncargoFinanceiro();
            encargoFinanceiro.Descricao = "Encargo Financeiro";
            encargoFinanceiro.Save();
            #endregion

            #region CFOP
            ICFOP cfop = new CFOP().Find<ICFOP>(new Where { Limit = new Limit(1, 1) })[0];
            #endregion

            #region items

            for(int i = 0; i < 7; i++)
            {
                PreVenda.Itens.Add(new Item
                {
                    TabelaPreco = PreVenda.TabelaPreco,
                    Vendedor = vendedor,
                    Quantidade = new Random().NextDouble(7, 21),
                    ValorUnitarioBruto = new Random().NextDouble(7, 42),
                    DescricaoNF = "Produto de teste um",
                    ItemMovimentado = PreVenda.TabelaPreco.Itens[0].Item as Acabado,
                    Status = 0,
                    CFOP = cfop,
                    Conferido = true,
                    ItensEspeciais = new List<IEspecial> {
                    new Especial{
                        Ordem = 0,
                        ItemEspecial  = frete,
                        Valor = new Random().NextDouble(21, 77)
                    },
                    new Especial{
                        Ordem = 1,
                        ItemEspecial = desconto,
                        Valor = new Random().NextDouble(21, 77)
                    },
                    new Especial{
                        Ordem = 2,
                        ItemEspecial = encargoFinanceiro,
                        Valor = new Random().NextDouble(21, 77)
                    },
                }
                });
            }
            #endregion

            GUID = PreVenda.Save();
        }
Esempio n. 13
0
 public void GenerateXML()
 {
     Gravar();
     IPreVenda pv = new PreVenda(GUID);
     //DumpElement(pv.GenerateXML());
 }
Esempio n. 14
0
        /// <summary>
        /// Pesquisar todos os movimentos utilizando a SearchWindow 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnPesquisarMovimento_Click(object sender, EventArgs e)
        {
            IParentModel tipoMovimento = null;

            // Aqui verifica o tipo de movimento que o usuário quer pesquisar
            if (rbtDAV.Checked)
                tipoMovimento = new DAV();
            else if (rbtDAVOS.Checked)
                tipoMovimento = new Data.Faturamento.Lancamento.Movimento.DAV.OS.DAV();
            else
                tipoMovimento = new PreVenda();

            //Filtro para trazer somente os movimentos que estão com o status: Aberto
            Where where = new Where();
            where.Add("fat_lan.status = @status",
                new Parameter
                {
                    ParameterName = "@status",
                    Value = (int)Enuns.Faturamento.Lancamento.Status.Aberto
                });

            // Fazer a Pesquisa e pegar o GUID movimento selecionado
            SearchWindowResult result = SearchWindow.Show(tipoMovimento, where);

            if (!result.GUID.IsNullOrEmpty())
                CarregarMovimento(result.GUID);
        }
Esempio n. 15
0
        public override void Gravar()
        {
            #region Impressora
            //criar uma impressora
            ImpressoraTest imprTest = new ImpressoraTest();
            imprTest.Gravar();
            IImpressora impressora = new Impressora(imprTest.GUID);
            #endregion

            #region Regsitro 01
            Registro01 r01 = new Registro01();
            r01.Impressora = impressora;
            r01.TipoECF = "TipoECF";
            r01.MarcaECF = "MarcaECF";
            r01.VersaoSB = "VesaoSB";
            r01.DataInstalacaoSB = DateTime.Today;
            r01.HoraInstalacaoSB = DateTime.Now;
            r01.NumeroSequenciaECF = 1;
            r01.CNPJEmitente = "04141174000125";
            r01.IEEmitente = "1234567890";
            r01.CNPJSoftwareHouse = "04141174000125";
            r01.IESoftwareHouse = "InscEstSoftHouse";
            r01.InscrMunicipalSoftwareHouse = "InscMunSoftHouse";
            r01.DenominacaoSoftwareHouse = "DenominacaoSoftHouse";
            r01.NomePAFECF = "NomePAFECF";
            r01.VersaoPAFECF = "VersaoPAFECF";
            r01.CodigoMD5PAFECF = "CodMD5PAFECF";
            r01.DataCriacao = DateTime.Today;
            r01.VersaoEspecReqPAFECF = "VersaoEspReqPAFECF";
            #endregion

            #region Registro 02
            Registro02 r02 = new Registro02();

            r02.CRZ = 1;
            r02.COO = 1;
            r02.CRO = 1;
            r02.DataMovimento = DateTime.Today;
            r02.DataHoraEmissao = DateTime.Now;
            r02.VendaBrutaDiaria = new Random().NextDouble(500);
            r02.ParametroECFISSQN = false;

            r02.Registros03.Add(new Registro03()
            {
                ValorAcumulado = new Random().NextDouble(500),
                TotalizadorParcial = "T1800"
            });

            r02.Registros03.Add(new Registro03()
            {
                ValorAcumulado = new Random().NextDouble(500),
                TotalizadorParcial = "F1800"
            });

            r02.MeiosPagamentos.Add(new Registro02MeiosPagto
            {
                FormaPagamento = "Dinheiro",
                Indice = 1,
                ValorAcumulado = new Random().NextDouble(500),
            });

            r02.MeiosPagamentos.Add(new Registro02MeiosPagto
            {
                FormaPagamento = "Cartao",
                Indice = 2,
                ValorAcumulado = new Random().NextDouble(500),
            });

            r01.RegistrosR2.Add(r02);
            #endregion

            #region Registro 04
            #region Movimento
            PreVendaTest pvTest = new PreVendaTest();
            pvTest.Gravar();
            IMovimento movimento = new PreVenda(pvTest.GUID);
            #endregion

            Registro04 r04 = new Registro04();
            r04.Movimento = movimento;
            r04.NumeroFabricacao = "p_NumeroFabricacao";
            r04.MFAdicional = "p_MFAdicional";
            r04.ModeloECF = "p_ModeloECF";
            r04.NumeroUsuario = 1;
            r04.CCF = 1;
            r04.COO = 2;
            r04.DataEmissao = DateTime.Today;
            r04.ValorSubtotal = new Random().NextDouble(50);
            r04.ValorDescontoSubtotal = new Random().NextDouble(50);
            r04.TipoDescontoSubtotal = IndicadorTipo.Monetario;
            r04.ValorAcrescimoSubtotal = new Random().NextDouble(50);
            r04.TipoAcrescimoSubtotal = IndicadorTipo.Percentual;
            r04.ValorTotalLiquido = new Random().NextDouble(50);
            r04.Cancelado = IndicadorCancelamento.Nao;
            r04.ValorCancelamentoAcrescimoSubtotal = new Random().NextDouble(50);
            r04.OrdemDescontoAcrescimo = IndicadorOrdem.Desconto;
            r04.NomeAdquirente = "Marcelo";
            r04.CPFCNPJAdquirente = "25806756807";

            //adicionar registros05
            r04.Registros05.Add(new Registro05
            {
                ItemMovimentado = movimento.Itens[0],
                NumeroFabricacao = "NumeroFabricacao",
                MFAdicional = "MFAdicional",
                ModeloECF = "ModeloECF",
                NumeroUsuario = 1,
                COO = 1,
                CCF = 1,
                NumeroItem = 1,
                CodigoTotalalizadorParcial = "CodigoTotalalizadorParcial",
                Cancelado = IndicadorCancelamento.Nao,
                QuantidadeCancelada = new Random().NextDouble(50),
                ValorCancelado = new Random().NextDouble(50),
                ValorCancelamentoAcrescimo = new Random().NextDouble(50),
                IndicadorTruncamento = IndicadorTruncamento.Arredondamento,
                IndicadorProducao = IndicadorProducao.Proprio,
                QuantidadeCasaDecimal = 2,
                QuantidadeCasaDecimalVlrUnit = 2,
                SituacaoTributaria = SituacaoTributaria.Isento
            });

            r01.RegistrosR4.Add(r04);
            #endregion

            #region Registro 06
            Registro06 r06 = new Registro06();

            r06.NumeroFabricacao = "p_NumeroFabricacao";
            r06.MFAdicional = "p_MFAdicional";
            r06.ModeloECF = "p_ModeloECF";
            r06.NumeroUsuario = 1;
            r06.COO = 2;
            r06.GNF = 1;
            r06.GRC = 1;
            r06.Denominacao = SimboloDenominacao.ComprovanteCreditoDebito;
            r06.DataFinalEmissao = DateTime.Today;
            r06.HoraFinalEmissao = DateTime.Today;

            //adicionar registros07
            r06.Registros07.Add(new Registro07()
            {
                COO = 1,
                CCF = 1,
                GNF = 1,
                //TODO: Quando implementar a baixa, colocar neste teste
                //BaixaForma
                IndicadorEstorno = IndicadorEstorno.Nao,
                ValorEstornado = new Random().NextDouble(50)
            });

            r01.RegistrosR6.Add(r06);
            #endregion

            GUID = r01.Save();
        }
Esempio n. 16
0
        /// <summary>
        /// Carrega o movimento selecionado pelo usuário
        /// </summary>
        /// <param name="eguid">Código do movimento</param>
        private void CarregarMovimento(EGUID eguid)
        {
            IList<IMovimento> movimentos = new List<IMovimento>();

            if (!string.IsNullOrEmpty(eguid))
            {

                if (rbtDAV.Checked)
                {
                    movimentos = new DAV().Find<IDAV>(new Where
                        {
                            { "fat_LanMovDav.EGUID",  eguid}
                        }).ToList<IMovimento>();
                }
                else if (rbtPreVenda.Checked)
                {
                    movimentos = new PreVenda().Find<IPreVenda>(new Where
                        {
                            { "fat_LanMovPv.EGUID", eguid }
                        }).ToList<IMovimento>();
                }
                else
                {
                    movimentos = new Data.Faturamento.Lancamento.Movimento.DAV.OS.DAV().Find<Model.Faturamento.Lancamento.Movimento.DAV.OS.IDAV>(new Where
                        {
                            { "fat_LanMovDavOs.EGUID", eguid }
                        }).ToList<IMovimento>();
                }
                /*
                * Se não encontrou movimento na base do OpenPOS, vamos procurar na base da retaguarda
                */
                if (movimentos.Count == 0)
                {
                    Movimento = GetFromBackend().FirstOrDefault();

                    movimentos.Add(Movimento);
                }

                CarregarMovimento(movimentos.FirstOrDefault());
            }
        }
Esempio n. 17
0
        public override void Popular()
        {
            PreVenda pv = new PreVenda(guidPv);

            VendaCF v = new VendaCF(GUID);

            DumpElement(v);
        }