Ejemplo n.º 1
0
        /// <summary>
        ///     Coverte uma string XML no formato CTe para um objeto CTe
        /// </summary>
        /// <param name="cte"></param>
        /// <param name="xmlString"></param>
        /// <returns>Retorna um objeto do tipo CTe</returns>
        public static CteEletronica CarregarDeXmlString(this CteEletronica cte, string xmlString)
        {
            var s = FuncoesXml.ObterNodeDeStringXml(typeof(CteEletronica).Name, xmlString);

            return(FuncoesXml.XmlStringParaClasse <CteEletronica>(s));
        }
Ejemplo n.º 2
0
        internal static string ObterArquivoSchema(ServicoNFe servicoNFe, VersaoServico versaoServico, string stringXml, bool loteNfe = true)
        {
            switch (servicoNFe)
            {
            case ServicoNFe.NfeRecepcao:
                return(loteNfe ? "enviNFe_v2.00.xsd" : "nfe_v2.00.xsd");

            case ServicoNFe.RecepcaoEventoCancelmento:
                var strEvento = FuncoesXml.ObterNodeDeStringXml(nameof(envEvento), stringXml);
                var evento    = FuncoesXml.XmlStringParaClasse <envEvento>(strEvento);
                return(evento.evento.FirstOrDefault()?.infEvento?.tpEvento ==
                       NFeTipoEvento.TeNfeCancelamentoSubstituicao
                        ? "envEventoCancSubst_v1.00.xsd"
                        : "envEventoCancNFe_v1.00.xsd");

            case ServicoNFe.RecepcaoEventoCartaCorrecao:
                return("envCCe_v1.00.xsd");

            case ServicoNFe.RecepcaoEventoEpec:
                return("envEPEC_v1.00.xsd");

            case ServicoNFe.RecepcaoEventoManifestacaoDestinatario:
                return("envConfRecebto_v1.00.xsd");

            case ServicoNFe.NfeInutilizacao:
                switch (versaoServico)
                {
                case VersaoServico.Versao200:
                    return("inutNFe_v2.00.xsd");

                case VersaoServico.Versao310:
                    return("inutNFe_v3.10.xsd");

                case VersaoServico.Versao400:
                    return("inutNFe_v4.00.xsd");
                }
                break;

            case ServicoNFe.NfeConsultaProtocolo:
                switch (versaoServico)
                {
                case VersaoServico.Versao200:
                    return("consSitNFe_v2.01.xsd");

                case VersaoServico.Versao310:
                    return("consSitNFe_v3.10.xsd");

                case VersaoServico.Versao400:
                    return("consSitNFe_v4.00.xsd");
                }
                break;

            case ServicoNFe.NfeStatusServico:
                switch (versaoServico)
                {
                case VersaoServico.Versao200:
                    return("consStatServ_v2.00.xsd");

                case VersaoServico.Versao310:
                    return("consStatServ_v3.10.xsd");

                case VersaoServico.Versao400:
                    return("consStatServ_v4.00.xsd");
                }
                break;

            case ServicoNFe.NFeAutorizacao:

                if (versaoServico != VersaoServico.Versao400)
                {
                    return(loteNfe ? "enviNFe_v3.10.xsd" : "nfe_v3.10.xsd");
                }

                return(loteNfe ? "enviNFe_v4.00.xsd" : "nfe_v4.00.xsd");

            case ServicoNFe.NfeConsultaCadastro:
                return("consCad_v2.00.xsd");

            case ServicoNFe.NfeDownloadNF:
                return("downloadNFe_v1.00.xsd");

            case ServicoNFe.NFeDistribuicaoDFe:
                return("distDFeInt_v1.01.xsd");    // "distDFeInt_v1.00.xsd";
            }
            return(null);
        }
Ejemplo n.º 3
0
        /// <summary>
        ///     Coverte uma string XML no formato procEventoNFe para um objeto procEventoNFe
        /// </summary>
        /// <param name="procEventoNFe"></param>
        /// <param name="xmlString"></param>
        /// <returns>Retorna um objeto do tipo procEventoNFe</returns>
        public static procEventoNFe CarregarDeXmlString(this procEventoNFe procEventoNFe, string xmlString)
        {
            var s = FuncoesXml.ObterNodeDeStringXml(typeof(procEventoNFe).Name, xmlString);

            return(FuncoesXml.XmlStringParaClasse <procEventoNFe>(s));
        }
Ejemplo n.º 4
0
        /// <summary>
        ///     Coverte uma string XML no formato NFe para um objeto NFe
        /// </summary>
        /// <param name="nfe"></param>
        /// <param name="xmlString"></param>
        /// <returns>Retorna um objeto do tipo NFe</returns>
        public static Classes.NFe CarregarDeXmlString(this Classes.NFe nfe, string xmlString)
        {
            var s = FuncoesXml.ObterNodeDeStringXml(typeof(Classes.NFe).Name, xmlString);

            return(FuncoesXml.XmlStringParaClasse <Classes.NFe>(s));
        }
Ejemplo n.º 5
0
    /// <summary>
    ///     Coverte uma string XML no formato nfeProc para um objeto nfeProc
    /// </summary>
    /// <param name="nfeProc"></param>
    /// <param name="xmlString"></param>
    /// <returns>Retorna um objeto do tipo nfeProc</returns>
    public static nfeProc CarregarDeXmlString(this nfeProc nfeProc, string xmlString)
    {
        var s = FuncoesXml.ObterNodeDeStringXml(typeof(nfeProc).Name, xmlString);

        return(FuncoesXml.XmlStringParaClasse <nfeProc>(s));
    }