Exemplo n.º 1
0
        private IdentificacaoNFe GetIdentificacao(Retorno.TNFe nfe, Emissor emitente)
        {
            var uf          = (CodigoUfIbge)Enum.Parse(typeof(CodigoUfIbge), emitente.Endereco.UF);
            var dataEmissao = DateTime.ParseExact(nfe.infNFe.ide.dhEmi, "yyyy-MM-ddTHH:mm:sszzz",
                                                  CultureInfo.InvariantCulture);
            var ambiente    = (Ambiente)(int)nfe.infNFe.ide.tpAmb;
            var modelo      = nfe.infNFe.ide.mod == Retorno.TMod.Item55 ? Modelo.Modelo55 : Modelo.Modelo65;
            var tipoEmissao = nfe.infNFe.ide.tpEmis == Retorno.TNFeInfNFeIdeTpEmis.Item9
                ? TipoEmissao.ContigenciaNfce
                : TipoEmissao.Normal; //Isso aqui vai me dar problema
            var formatoImpressao     = (FormatoImpressao)(int)nfe.infNFe.ide.tpImp;
            var isImpressaoBobina    = formatoImpressao == FormatoImpressao.Nfce;
            var finalidadeConsumidor = (FinalidadeConsumidor)(int)nfe.infNFe.ide.indFinal;
            var documentoDanfe       = finalidadeConsumidor == FinalidadeConsumidor.ConsumidorFinal ? "CPF" : "CNPJ";
            var finalidadeNFe        = (FinalidadeEmissao)(int)nfe.infNFe.ide.finNFe;

            var ide = new IdentificacaoNFe(uf, dataEmissao, emitente.CNPJ, modelo, int.Parse(nfe.infNFe.ide.serie),
                                           nfe.infNFe.ide.nNF, tipoEmissao, ambiente, emitente, nfe.infNFe.ide.natOp,
                                           finalidadeNFe, isImpressaoBobina, PresencaComprador.Presencial, documentoDanfe);

            if (nfe.infNFe.ide.tpEmis != Retorno.TNFeInfNFeIdeTpEmis.Item9)
            {
                return(ide);
            }

            ide.DataHoraEntradaContigencia = DateTime.ParseExact(nfe.infNFe.ide.dhCont, "yyyy-MM-ddTHH:mm:sszzz",
                                                                 CultureInfo.InvariantCulture);
            ide.JustificativaContigencia = nfe.infNFe.ide.xJust;

            return(ide);
        }
        private static IdentificacaoNFe GetIdentificacao(CodigoUfIbge codigoUF, DateTime now, Emissor emitente, Modelo modeloNota,
                                                         int serie, string numeroNFe, TipoEmissao tipoEmissao, Ambiente ambiente, string documentoDanfe)
        {
            var identificacao = new IdentificacaoNFe(codigoUF, now, emitente.CNPJ, modeloNota, serie, numeroNFe, tipoEmissao, ambiente, emitente,
                                                     "Venda", FinalidadeEmissao.Normal, true, PresencaComprador.Presencial, documentoDanfe);

            return(identificacao);
        }
Exemplo n.º 3
0
        private static IdentificacaoNFe GetIdentificacao(NotaFiscalModel NotaFiscal, CodigoUfIbge codigoUF, DateTime now,
                                                         Emissor emitente, Modelo modeloNota,
                                                         int serie, string numeroNFe, TipoEmissao tipoEmissao, Ambiente ambiente, string documentoDanfe)
        {
            var finalidadeEmissao = (FinalidadeEmissao)Enum.Parse(typeof(FinalidadeEmissao), Acentuacao.RemoverAcentuacao(NotaFiscal.Finalidade));

            var identificacao = new IdentificacaoNFe(codigoUF, now, emitente.CNPJ, modeloNota, serie, numeroNFe,
                                                     tipoEmissao, ambiente, emitente,
                                                     NotaFiscal.NaturezaOperacao, finalidadeEmissao, NotaFiscal.IsImpressaoBobina,
                                                     NotaFiscal.IndicadorPresenca, documentoDanfe);

            return(identificacao);
        }
        private static NotaFiscal PreencherNotaFiscal()
        {
            var endereçoEmitente =
                new Endereco("QUADRA 200 CONJUNTO 20", "20", "BRASILIA", "BRASILIA", "70000000", "DF");
            var emitente = new Emissor("RAZAO SOCIAL", "NOME FANTASIA", "12345678998765", "1234567898765",
                                       "1234567898765", "4784900", "Regime Normal", endereçoEmitente, "99999999");
            var identificação = new IdentificacaoNFe(CodigoUfIbge.DF, DateTime.Now, emitente.CNPJ, Modelo.Modelo65, 1,
                                                     "20887", TipoEmissao.Normal, Ambiente.Homologacao, emitente, "Venda", FinalidadeEmissao.Normal, true,
                                                     PresencaComprador.Presencial, "CPF");
            var       transporte         = new Transporte(Modelo.Modelo65, null, null);
            const int valorTotalProdutos = 65;
            var       totalIcms          = new IcmsTotal(0, 0, 0, 0, 0, valorTotalProdutos, 0, 0, 0, 0, 0, 0, 0, 0, valorTotalProdutos,
                                                         0);
            var totalNFe = new TotalNFe {
                IcmsTotal = totalIcms
            };
            var impostos = new List <Imposto>
            {
                new Imposto {
                    CST = "60", TipoImposto = TipoImposto.Icms
                },
                new Imposto {
                    CST = "04", TipoImposto = TipoImposto.PIS
                }
            };
            var grupoImpostos = new GrupoImpostos
            {
                CFOP      = "5656",
                Descricao = "Gás Venda",
                Impostos  = impostos
            };
            var produtos = new List <Produto>
            {
                new Produto(grupoImpostos, 0, "5656", "0001", "GLP 13KG", "27111910", 1, "UN", 65, 0, false)
            };
            var pagamentos = new List <Pagamento>
            {
                new Pagamento(FormaPagamento.Dinheiro)
                {
                    Valor = 65
                }
            };
            var infoAdicional = new InfoAdicional(produtos);
            var notaFiscal    = new NotaFiscal(emitente, null, identificação, transporte, totalNFe, infoAdicional,
                                               produtos, pagamentos);

            return(notaFiscal);
        }
Exemplo n.º 5
0
 public NFeBuilder SetIdentificacao(IdentificacaoNFe identificacao)
 {
     NFe.infNFe.ide = identificacao.Ide;
     return(this);
 }