Ejemplo n.º 1
0
        /// <summary>
        /// Imprime em um JPEG o NFC-e relacionado a um xml.
        /// </summary>
        /// <param name="pathXmlNFCe">Path do NFC-e a imprimir</param>
        /// <param name="pathJpeg">Path onde gerar o jpeg</param>
        public void ImprimirNFCe(string pathXmlNFCe, string pathJpeg, string idToken, string csc)
        {
            var nfe     = new Classes.NFe().CarregarDeArquivoXml(pathXmlNFCe);
            var arquivo = nfe.ObterXmlString();

            var             configuracaoDanfeNFCe = new ConfiguracaoDanfeNfce(Danfe.Base.NfceDetalheVendaNormal.UmaLinha, Danfe.Base.NfceDetalheVendaContigencia.UmaLinha);
            DanfeNativoNfce impr = new DanfeNativoNfce(arquivo, configuracaoDanfeNFCe, idToken, csc);

            impr.GerarJPEG(pathJpeg);
        }
Ejemplo n.º 2
0
        /// <summary>
        ///     Gera id, cdv, assina e faz alguns ajustes nos dados da classe NFe antes de utilizá-la
        /// </summary>
        /// <param name="nfe"></param>
        /// <returns>Retorna um objeto NFe devidamente tradado</returns>
        public static Classes.NFe Valida(this Classes.NFe nfe)
        {
            if (nfe == null)
            {
                throw new ArgumentNullException("nfe");
            }

            var versao = (Decimal.Parse(nfe.infNFe.versao, CultureInfo.InvariantCulture));

            var xmlNfe     = nfe.ObterXmlString();
            var cfgServico = ConfiguracaoServico.Instancia;

            if (versao < 3)
            {
                Validador.Valida(ServicoNFe.NfeRecepcao, cfgServico.VersaoNfeRecepcao, xmlNfe, false);
            }
            if (versao >= 3)
            {
                Validador.Valida(ServicoNFe.NFeAutorizacao, cfgServico.VersaoNFeAutorizacao, xmlNfe, false);
            }

            return(nfe); //Para uso no formato fluent
        }