Exemple #1
0
        private INfeServico CriarServico(ServicoNFe servico, TipoRecepcaoEvento tipoRecepcaoEvento)
        {
            var url = DefinicaoWsdl.ObterUrl(servico, tipoRecepcaoEvento, _cFgServico);

            switch (servico)
            {
            case ServicoNFe.NfeStatusServico:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeStatusServico3(url, _certificado, _cFgServico.TimeOut));
                }
                if (_cFgServico.cUF == Estado.BA & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeStatusServico(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeStatusServico2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeConsultaProtocolo:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNfeConsultaProtocolo == VersaoServico.ve310)
                {
                    return(new NfeConsulta3(url, _certificado, _cFgServico.TimeOut));
                }
                if (_cFgServico.cUF == Estado.BA & _cFgServico.VersaoNfeConsultaProtocolo == VersaoServico.ve310)
                {
                    return(new NfeConsulta(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeConsulta2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeRecepcao:
                return(new NfeRecepcao2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeRetRecepcao:
                return(new NfeRetRecepcao2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NFeAutorizacao:
                return(new NfeAutorizacao(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NFeRetAutorizacao:
                return(new NfeRetAutorizacao(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeInutilizacao:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeInutilizacao3(url, _certificado, _cFgServico.TimeOut));
                }
                if (_cFgServico.cUF == Estado.BA & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeInutilizacao(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeInutilizacao2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.RecepcaoEvento:
                return(new RecepcaoEvento(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeConsultaCadastro:
                return(new CadConsultaCadastro2(url, _certificado, _cFgServico.TimeOut));
            }

            return(null);
        }
        private INfeServico CriarServico(ServicoNFe servico, TipoRecepcaoEvento tipoRecepcaoEvento)
        {
            var url = DefinicaoWsdl.ObterUrl(servico, tipoRecepcaoEvento, _cFgServico);

            switch (servico)
            {
            case ServicoNFe.NfeStatusServico:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeStatusServico3(url, _certificado, _cFgServico.TimeOut));
                }
                if (_cFgServico.cUF == Estado.BA & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeStatusServico(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeStatusServico2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeConsultaProtocolo:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNfeConsultaProtocolo == VersaoServico.ve310)
                {
                    return(new NfeConsulta3(url, _certificado, _cFgServico.TimeOut));
                }
                if (_cFgServico.cUF == Estado.BA & _cFgServico.VersaoNfeConsultaProtocolo == VersaoServico.ve310)
                {
                    return(new NfeConsulta(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeConsulta2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeRecepcao:
                return(new NfeRecepcao2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeRetRecepcao:
                return(new NfeRetRecepcao2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NFeAutorizacao:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNFeAutorizacao == VersaoServico.ve310)
                {
                    return(new NfeAutorizacao3(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeAutorizacao(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NFeRetAutorizacao:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNFeAutorizacao == VersaoServico.ve310)
                {
                    return(new NfeRetAutorizacao3(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeRetAutorizacao(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeInutilizacao:
                if (_cFgServico.cUF == Estado.PR & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeInutilizacao3(url, _certificado, _cFgServico.TimeOut));
                }
                if (_cFgServico.cUF == Estado.BA & _cFgServico.VersaoNfeStatusServico == VersaoServico.ve310)
                {
                    return(new NfeInutilizacao(url, _certificado, _cFgServico.TimeOut));
                }
                return(new NfeInutilizacao2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.RecepcaoEvento:
                if (_cFgServico.cUF == Estado.SP & _cFgServico.VersaoRecepcaoEvento == VersaoServico.ve310 &
                    _cFgServico.ModeloDocumento == ModeloDocumento.NFCe & tipoRecepcaoEvento == TipoRecepcaoEvento.Epec)
                {
                    return(new RecepcaoEPEC(url, _certificado, _cFgServico.TimeOut));
                }
                return(new RecepcaoEvento(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeConsultaCadastro:
                switch (_cFgServico.cUF)
                {
                case Estado.CE:
                    return(new Wsdl.ConsultaCadastro.CE.CadConsultaCadastro2(url, _certificado, _cFgServico.TimeOut));
                }
                return(new Wsdl.ConsultaCadastro.DEMAIS_UFs.CadConsultaCadastro2(url, _certificado, _cFgServico.TimeOut));

            case ServicoNFe.NfeDownloadNF:
                return(new NfeDownloadNF(url, _certificado, _cFgServico.TimeOut));
            }

            return(null);
        }