From ef7a7e053fcbceb4c91206fb4bbfac897bcf67d8 Mon Sep 17 00:00:00 2001 From: JoaoDiasRca Date: Tue, 16 Jul 2024 11:15:29 -0300 Subject: [PATCH] =?UTF-8?q?fix:=20Garantindo=20que=20instancia=20do=20serv?= =?UTF-8?q?i=C3=A7o=20sempre=20seja=20usada=20corretamente,=20como=20?= =?UTF-8?q?=C3=A9=20nulavel=20o=20parametro=20ConfiguracaoServico=20config?= =?UTF-8?q?uracaoServico=20em=20alguns=20lugares=20estava=20chegando=20nul?= =?UTF-8?q?o,=20dependendo=20do=20fluxo=20da=20CTe=20utilizado,=20fiz=20um?= =?UTF-8?q?=20tratamento=20padr=C3=A3o=20em=20todos=20lugares=20que=20pode?= =?UTF-8?q?ria=20acontecer,=20apesar=20de=20em=20alguns=20metodos=20de=20v?= =?UTF-8?q?alida=C3=A7=C3=A3o=20que=20s=C3=A3o=20usados=20em=20varios=20lu?= =?UTF-8?q?gares=20j=C3=A1=20tratar=20de=20instanciar=20novamente=20o=20se?= =?UTF-8?q?rvi=C3=A7o,=20muitos=20lugares=20n=C3=A3o=20instanciava,=20gera?= =?UTF-8?q?ndo=20exception=20em=20alguns=20metodos.=20Acredito=20que=20ten?= =?UTF-8?q?ha=20tratado=20todos=20lugares=20onde=20=C3=A9=20nulavel=20o=20?= =?UTF-8?q?parametro.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConsultaProtcoloServico.cs | 48 +++++++++-------- .../ConsultaRecibo/ConsultaReciboServico.cs | 40 +++++++------- .../ServicoCTeDistribuicaoDFe.cs | 1 + CTe.Servicos/EnviarCte/ServicoEnviarCte.cs | 6 +-- CTe.Servicos/Eventos/EventoCancelamento.cs | 15 +++--- CTe.Servicos/Eventos/FactoryEvento.cs | 3 +- CTe.Servicos/Eventos/ServicoController.cs | 52 +++++++++++-------- CTe.Servicos/Factory/WsdlFactory.cs | 6 ++- .../Inutilizacao/InutilizacaoServico.cs | 28 +++++----- CTe.Servicos/Recepcao/ServicoCTeRecepcao.cs | 26 ++++++---- CTe.Utils/CTe/ExtCTe.cs | 9 ++-- CTe.Utils/CTe/ExtEnvCte.cs | 8 +-- CTe.Utils/DistribuicaoDFe/ExtdistDFeInt.cs | 7 +-- CTe.Utils/Evento/Extevento.cs | 30 ++++++----- CTe.Utils/Extencoes/ExtConsReciCTe.cs | 5 +- CTe.Utils/Extencoes/ExtconsSitCTe.cs | 11 ++-- CTe.Utils/Extencoes/ExtconsStatServCte.cs | 20 ++++--- CTe.Utils/Extencoes/ExtinutCTe.cs | 9 ++-- CTe.Utils/Inutilizacao/ExtretInutCTe.cs | 5 +- CTe.Utils/Validacao/Validador.cs | 2 +- 20 files changed, 190 insertions(+), 141 deletions(-) diff --git a/CTe.Servicos/ConsultaProtocolo/ConsultaProtcoloServico.cs b/CTe.Servicos/ConsultaProtocolo/ConsultaProtcoloServico.cs index c902cb88..361e4b75 100644 --- a/CTe.Servicos/ConsultaProtocolo/ConsultaProtcoloServico.cs +++ b/CTe.Servicos/ConsultaProtocolo/ConsultaProtcoloServico.cs @@ -43,54 +43,60 @@ public class ConsultaProtcoloServico { public retConsSitCTe ConsultaProtocolo(string chave, ConfiguracaoServico configuracaoServico = null) { - var consSitCTe = ClassesFactory.CriarconsSitCTe(chave, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; - if (configuracaoServico.IsValidaSchemas) - consSitCTe.ValidarSchema(configuracaoServico); + var consSitCTe = ClassesFactory.CriarconsSitCTe(chave, configServico); - consSitCTe.SalvarXmlEmDisco(configuracaoServico); + if (configServico.IsValidaSchemas) + consSitCTe.ValidarSchema(configServico); - var webService = WsdlFactory.CriaWsdlConsultaProtocolo(configuracaoServico); + consSitCTe.SalvarXmlEmDisco(configServico); + + var webService = WsdlFactory.CriaWsdlConsultaProtocolo(configServico); var retornoXml = webService.cteConsultaCT(consSitCTe.CriaRequestWs()); var retorno = retConsSitCTe.LoadXml(retornoXml.OuterXml, consSitCTe); - retorno.SalvarXmlEmDisco(chave, configuracaoServico); + retorno.SalvarXmlEmDisco(chave, configServico); return retorno; } public retConsSitCTe ConsultaProtocoloV4(string chave, ConfiguracaoServico configuracaoServico = null) { - var consSitCTe = ClassesFactory.CriarconsSitCTe(chave, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + + var consSitCTe = ClassesFactory.CriarconsSitCTe(chave, configServico); - if (configuracaoServico.IsValidaSchemas) - consSitCTe.ValidarSchema(configuracaoServico); + if (configServico.IsValidaSchemas) + consSitCTe.ValidarSchema(configServico); - consSitCTe.SalvarXmlEmDisco(configuracaoServico); + consSitCTe.SalvarXmlEmDisco(configServico); - var webService = WsdlFactory.CriaWsdlConsultaProtocoloV4(configuracaoServico); + var webService = WsdlFactory.CriaWsdlConsultaProtocoloV4(configServico); var retornoXml = webService.cteConsultaCT(consSitCTe.CriaRequestWs()); var retorno = retConsSitCTe.LoadXml(retornoXml.OuterXml, consSitCTe); - retorno.SalvarXmlEmDisco(chave, configuracaoServico); + retorno.SalvarXmlEmDisco(chave, configServico); return retorno; } public async Task ConsultaProtocoloAsync(string chave, ConfiguracaoServico configuracaoServico = null) { - var consSitCTe = ClassesFactory.CriarconsSitCTe(chave, configuracaoServico); - - if (configuracaoServico.IsValidaSchemas) - consSitCTe.ValidarSchema(configuracaoServico); - - consSitCTe.SalvarXmlEmDisco(configuracaoServico); - - var webService = WsdlFactory.CriaWsdlConsultaProtocolo(configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + + var consSitCTe = ClassesFactory.CriarconsSitCTe(chave, configServico); + + if (configServico.IsValidaSchemas) + consSitCTe.ValidarSchema(configServico); + + consSitCTe.SalvarXmlEmDisco(configServico); + + var webService = WsdlFactory.CriaWsdlConsultaProtocolo(configServico); var retornoXml = await webService.cteConsultaCTAsync(consSitCTe.CriaRequestWs()); var retorno = retConsSitCTe.LoadXml(retornoXml.OuterXml, consSitCTe); - retorno.SalvarXmlEmDisco(chave, configuracaoServico); + retorno.SalvarXmlEmDisco(chave, configServico); return retorno; } diff --git a/CTe.Servicos/ConsultaRecibo/ConsultaReciboServico.cs b/CTe.Servicos/ConsultaRecibo/ConsultaReciboServico.cs index a3abc607..9b28ca7e 100644 --- a/CTe.Servicos/ConsultaRecibo/ConsultaReciboServico.cs +++ b/CTe.Servicos/ConsultaRecibo/ConsultaReciboServico.cs @@ -50,36 +50,40 @@ public ConsultaReciboServico(string recibo) public retConsReciCTe Consultar(ConfiguracaoServico configuracaoServico = null) { - var consReciCTe = ClassesFactory.CriaConsReciCTe(_recibo, configuracaoServico); - - if (configuracaoServico.IsValidaSchemas) - consReciCTe.ValidarSchema(configuracaoServico); - - consReciCTe.SalvarXmlEmDisco(configuracaoServico); - - var webService = WsdlFactory.CriaWsdlCteRetRecepcao(configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + + var consReciCTe = ClassesFactory.CriaConsReciCTe(_recibo, configServico); + + if (configServico.IsValidaSchemas) + consReciCTe.ValidarSchema(configServico); + + consReciCTe.SalvarXmlEmDisco(configServico); + + var webService = WsdlFactory.CriaWsdlCteRetRecepcao(configServico); var retornoXml = webService.cteRetRecepcao(consReciCTe.CriaRequestWs()); var retorno = retConsReciCTe.LoadXml(retornoXml.OuterXml, consReciCTe); - retorno.SalvarXmlEmDisco(configuracaoServico); + retorno.SalvarXmlEmDisco(configServico); return retorno; } public async Task ConsultarAsync(ConfiguracaoServico configuracaoServico = null) { - var consReciCTe = ClassesFactory.CriaConsReciCTe(_recibo, configuracaoServico); - - if (configuracaoServico.IsValidaSchemas) - consReciCTe.ValidarSchema(configuracaoServico); - - consReciCTe.SalvarXmlEmDisco(configuracaoServico); - - var webService = WsdlFactory.CriaWsdlCteRetRecepcao(configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + + var consReciCTe = ClassesFactory.CriaConsReciCTe(_recibo, configServico); + + if (configServico.IsValidaSchemas) + consReciCTe.ValidarSchema(configServico); + + consReciCTe.SalvarXmlEmDisco(configServico); + + var webService = WsdlFactory.CriaWsdlCteRetRecepcao(configServico); var retornoXml = await webService.cteRetRecepcaoAsync(consReciCTe.CriaRequestWs()); var retorno = retConsReciCTe.LoadXml(retornoXml.OuterXml, consReciCTe); - retorno.SalvarXmlEmDisco(configuracaoServico); + retorno.SalvarXmlEmDisco(configServico); return retorno; } diff --git a/CTe.Servicos/DistribuicaoDFe/ServicoCTeDistribuicaoDFe.cs b/CTe.Servicos/DistribuicaoDFe/ServicoCTeDistribuicaoDFe.cs index 55ce9f7a..e068c9f3 100644 --- a/CTe.Servicos/DistribuicaoDFe/ServicoCTeDistribuicaoDFe.cs +++ b/CTe.Servicos/DistribuicaoDFe/ServicoCTeDistribuicaoDFe.cs @@ -79,6 +79,7 @@ public ServicoCTeDistribuicaoDFe(ConfiguracaoServico configuracaoServico, X509Ce public RetornoCteDistDFeInt CTeDistDFeInteresse(string ufAutor, string documento, string ultNSU = "0", string nSU = "0", ConfiguracaoServico configuracaoServico = null) { var configServico = configuracaoServico ?? _configuracaoServico ?? ConfiguracaoServico.Instancia; + distDFeInt pedDistDFeInt; XmlDocument dadosConsulta; var ws = InicializaCTeDistDFeInteresse(documento, ultNSU, nSU, out pedDistDFeInt, out dadosConsulta, configServico); diff --git a/CTe.Servicos/EnviarCte/ServicoEnviarCte.cs b/CTe.Servicos/EnviarCte/ServicoEnviarCte.cs index b21d20cc..583b08f5 100644 --- a/CTe.Servicos/EnviarCte/ServicoEnviarCte.cs +++ b/CTe.Servicos/EnviarCte/ServicoEnviarCte.cs @@ -14,10 +14,10 @@ public class ServicoEnviarCte public RetornoEnviarCte Enviar(int lote, Classes.CTe cte, ConfiguracaoServico configuracaoServico = null) { var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; - + ServicoCTeRecepcao servicoRecepcao = new ServicoCTeRecepcao(); - retEnviCte retEnviCte = servicoRecepcao.CTeRecepcao(lote, new List {cte}, configServico); + retEnviCte retEnviCte = servicoRecepcao.CTeRecepcao(lote, new List { cte }, configServico); if (retEnviCte.cStat != 103) { @@ -28,7 +28,6 @@ public RetornoEnviarCte Enviar(int lote, Classes.CTe cte, ConfiguracaoServico co retConsReciCTe retConsReciCTe = servicoConsultaRecibo.Consultar(configServico); - cteProc cteProc = null; if (retConsReciCTe.cStat == 104) { @@ -54,6 +53,7 @@ public RetornoEnviarCte Enviar(int lote, Classes.CTe cte, ConfiguracaoServico co public async Task EnviarAsync(int lote, Classes.CTe cte, ConfiguracaoServico configuracaoServico = null) { var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + ServicoCTeRecepcao servicoRecepcao = new ServicoCTeRecepcao(); retEnviCte retEnviCte = await servicoRecepcao.CTeRecepcaoAsync(lote, new List { cte }, configServico); diff --git a/CTe.Servicos/Eventos/EventoCancelamento.cs b/CTe.Servicos/Eventos/EventoCancelamento.cs index 5584303e..c644667f 100644 --- a/CTe.Servicos/Eventos/EventoCancelamento.cs +++ b/CTe.Servicos/Eventos/EventoCancelamento.cs @@ -72,30 +72,33 @@ public EventoCancelamento(CteEletronicoOS cte, int sequenciaEvento, string numer public retEventoCTe Cancelar(ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; var evento = ClassesFactory.CriaEvCancCTe(_justificativa, _numeroProtocolo); - EventoEnviado = FactoryEvento.CriaEvento(CTeTipoEvento.Cancelamento, _sequenciaEvento, _cte.Chave(), _cte.infCte.emit.CNPJ, evento, configuracaoServico); - RetornoSefaz = new ServicoController().Executar(_cte, _sequenciaEvento, evento, CTeTipoEvento.Cancelamento, configuracaoServico); + EventoEnviado = FactoryEvento.CriaEvento(CTeTipoEvento.Cancelamento, _sequenciaEvento, _cte.Chave(), _cte.infCte.emit.CNPJ, evento, configServico); + RetornoSefaz = new ServicoController().Executar(_cte, _sequenciaEvento, evento, CTeTipoEvento.Cancelamento, configServico); return RetornoSefaz; } public retEventoCTe CancelarOs(ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; var evento = ClassesFactory.CriaEvCancCTe(_justificativa, _numeroProtocolo); - EventoEnviado = FactoryEvento.CriaEvento(CTeTipoEvento.Cancelamento, _sequenciaEvento, _cteOs.Chave(), _cteOs.InfCte.emit.CNPJ, evento, configuracaoServico); - RetornoSefaz = new ServicoController().Executar(_cteOs, _sequenciaEvento, evento, CTeTipoEvento.Cancelamento, configuracaoServico); + EventoEnviado = FactoryEvento.CriaEvento(CTeTipoEvento.Cancelamento, _sequenciaEvento, _cteOs.Chave(), _cteOs.InfCte.emit.CNPJ, evento, configServico); + RetornoSefaz = new ServicoController().Executar(_cteOs, _sequenciaEvento, evento, CTeTipoEvento.Cancelamento, configServico); return RetornoSefaz; } public async Task CancelarAsync(ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; var evento = ClassesFactory.CriaEvCancCTe(_justificativa, _numeroProtocolo); - EventoEnviado = FactoryEvento.CriaEvento(CTeTipoEvento.Cancelamento, _sequenciaEvento, _cte.Chave(), _cte.infCte.emit.CNPJ, evento, configuracaoServico); - RetornoSefaz = await new ServicoController().ExecutarAsync(_cte, _sequenciaEvento, evento, CTeTipoEvento.Cancelamento, configuracaoServico); + EventoEnviado = FactoryEvento.CriaEvento(CTeTipoEvento.Cancelamento, _sequenciaEvento, _cte.Chave(), _cte.infCte.emit.CNPJ, evento, configServico); + RetornoSefaz = await new ServicoController().ExecutarAsync(_cte, _sequenciaEvento, evento, CTeTipoEvento.Cancelamento, configServico); return RetornoSefaz; } diff --git a/CTe.Servicos/Eventos/FactoryEvento.cs b/CTe.Servicos/Eventos/FactoryEvento.cs index 04eaaca5..f862794e 100644 --- a/CTe.Servicos/Eventos/FactoryEvento.cs +++ b/CTe.Servicos/Eventos/FactoryEvento.cs @@ -47,7 +47,8 @@ public class FactoryEvento //Vou manter para evitar quebra de código pois a classe e o metodo são publicos public static eventoCTe CriaEvento(CTeEletronico cte, CTeTipoEvento cTeTipoEvento, int sequenciaEvento, EventoContainer container, ConfiguracaoServico configuracaoServico = null) { - return CriaEvento(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + return CriaEvento(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container, configServico); } public static eventoCTe CriaEvento(CTeTipoEvento cTeTipoEvento, int sequenciaEvento, string chave, string cnpj, EventoContainer container, ConfiguracaoServico configuracaoServico = null) diff --git a/CTe.Servicos/Eventos/ServicoController.cs b/CTe.Servicos/Eventos/ServicoController.cs index 4754c5c2..390af483 100644 --- a/CTe.Servicos/Eventos/ServicoController.cs +++ b/CTe.Servicos/Eventos/ServicoController.cs @@ -50,64 +50,74 @@ public class ServicoController : IServicoController { public retEventoCTe Executar(CteEletronico cte, int sequenciaEvento, EventoContainer container, CTeTipoEvento cTeTipoEvento, ConfiguracaoServico configuracaoServico = null) { - return Executar(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + return Executar(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container, configServico); } public retEventoCTe Executar(CteEletronicoOS cte, int sequenciaEvento, EventoContainer container, CTeTipoEvento cTeTipoEvento, ConfiguracaoServico configuracaoServico = null) { - return Executar(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.InfCte.emit.CNPJ, container, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + return Executar(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.InfCte.emit.CNPJ, container, configServico); } public async Task ExecutarAsync(CteEletronico cte, int sequenciaEvento, EventoContainer container, CTeTipoEvento cTeTipoEvento, ConfiguracaoServico configuracaoServico = null) { - return await ExecutarAsync(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + return await ExecutarAsync(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container, configServico); } public retEventoCTe Executar(CTeTipoEvento cTeTipoEvento, int sequenciaEvento, string chave, string cnpj, EventoContainer container, ConfiguracaoServico configuracaoServico = null) { - var evento = FactoryEvento.CriaEvento(cTeTipoEvento, sequenciaEvento, chave, cnpj, container, configuracaoServico); - evento.Assina(configuracaoServico); - + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + var evento = FactoryEvento.CriaEvento(cTeTipoEvento, sequenciaEvento, chave, cnpj, container, configServico); + evento.Assina(configServico); + if (configuracaoServico.IsValidaSchemas) - evento.ValidarSchema(configuracaoServico); + evento.ValidarSchema(configServico); - evento.SalvarXmlEmDisco(configuracaoServico); + evento.SalvarXmlEmDisco(configServico); XmlNode retornoXml = null; if (evento.versao == versao.ve200 || evento.versao == versao.ve300) { - var webService = WsdlFactory.CriaWsdlCteEvento(configuracaoServico); + var webService = WsdlFactory.CriaWsdlCteEvento(configServico); retornoXml = webService.cteRecepcaoEvento(evento.CriaXmlRequestWs()); } if (evento.versao == versao.ve400) { - var webService = WsdlFactory.CriaWsdlCteEventoV4(configuracaoServico); + var webService = WsdlFactory.CriaWsdlCteEventoV4(configServico); retornoXml = webService.cteRecepcaoEvento(evento.CriaXmlRequestWs()); } var retorno = retEventoCTe.LoadXml(retornoXml.OuterXml, evento); - retorno.SalvarXmlEmDisco(configuracaoServico); + retorno.SalvarXmlEmDisco(configServico); return retorno; } - public async Task ExecutarAsync(CTeTipoEvento cTeTipoEvento, int sequenciaEvento, string chave, string cnpj, EventoContainer container, ConfiguracaoServico configuracaoServico = null) + public async Task ExecutarAsync(CTeTipoEvento cTeTipoEvento, + int sequenciaEvento, + string chave, string + cnpj, EventoContainer container, + ConfiguracaoServico configuracaoServico = null) { - var evento = FactoryEvento.CriaEvento(cTeTipoEvento, sequenciaEvento, chave, cnpj, container, configuracaoServico); - evento.Assina(configuracaoServico); - - if (configuracaoServico.IsValidaSchemas) - evento.ValidarSchema(configuracaoServico); - - evento.SalvarXmlEmDisco(configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + + var evento = FactoryEvento.CriaEvento(cTeTipoEvento, sequenciaEvento, chave, cnpj, container, configServico); + evento.Assina(configServico); + + if (configServico.IsValidaSchemas) + evento.ValidarSchema(configServico); + + evento.SalvarXmlEmDisco(configServico); - var webService = WsdlFactory.CriaWsdlCteEvento(configuracaoServico); + var webService = WsdlFactory.CriaWsdlCteEvento(configServico); var retornoXml = await webService.cteRecepcaoEventoAsync(evento.CriaXmlRequestWs()); var retorno = retEventoCTe.LoadXml(retornoXml.OuterXml, evento); - retorno.SalvarXmlEmDisco(configuracaoServico); + retorno.SalvarXmlEmDisco(configServico); return retorno; } diff --git a/CTe.Servicos/Factory/WsdlFactory.cs b/CTe.Servicos/Factory/WsdlFactory.cs index 1987fdf6..fb633d0e 100644 --- a/CTe.Servicos/Factory/WsdlFactory.cs +++ b/CTe.Servicos/Factory/WsdlFactory.cs @@ -134,9 +134,11 @@ public static CteRecepcaoEvento CriaWsdlCteEvento(ConfiguracaoServico configurac public static CteRecepcaoEventoV4 CriaWsdlCteEventoV4(ConfiguracaoServico configuracaoServico = null, X509Certificate2 certificado = null) { - var url = UrlHelper.ObterUrlServico(configuracaoServico).CteRecepcaoEvento; + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; - var configuracaoWsdl = CriaConfiguracao(url, configuracaoServico, certificado); + var url = UrlHelper.ObterUrlServico(configServico).CteRecepcaoEvento; + + var configuracaoWsdl = CriaConfiguracao(url, configServico, certificado); return new CteRecepcaoEventoV4(configuracaoWsdl); } diff --git a/CTe.Servicos/Inutilizacao/InutilizacaoServico.cs b/CTe.Servicos/Inutilizacao/InutilizacaoServico.cs index 997e665e..62df82bd 100644 --- a/CTe.Servicos/Inutilizacao/InutilizacaoServico.cs +++ b/CTe.Servicos/Inutilizacao/InutilizacaoServico.cs @@ -78,32 +78,36 @@ public InutilizacaoServico(ConfigInutiliza configInutiliza) public retInutCTe Inutilizar(ConfiguracaoServico configuracaoServico = null) { - var inutCte = ClassesFactory.CriaInutCTe(_configInutiliza, configuracaoServico); - inutCte.Assinar(configuracaoServico); - inutCte.ValidarShcema(configuracaoServico); - inutCte.SalvarXmlEmDisco(configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; - var webService = WsdlFactory.CriaWsdlCteInutilizacao(configuracaoServico); + var inutCte = ClassesFactory.CriaInutCTe(_configInutiliza, configServico); + inutCte.Assinar(configServico); + inutCte.ValidarSchema(configServico); + inutCte.SalvarXmlEmDisco(configServico); + + var webService = WsdlFactory.CriaWsdlCteInutilizacao(configServico); var retornoXml = webService.cteInutilizacaoCT(inutCte.CriaRequestWs()); var retorno = retInutCTe.LoadXml(retornoXml.OuterXml, inutCte); - retorno.SalvarXmlEmDisco(inutCte.infInut.Id.Substring(2), configuracaoServico); + retorno.SalvarXmlEmDisco(inutCte.infInut.Id.Substring(2), configServico); return retorno; } public async Task InutilizarAsync(ConfiguracaoServico configuracaoServico = null) { - var inutCte = ClassesFactory.CriaInutCTe(_configInutiliza, configuracaoServico); - inutCte.Assinar(configuracaoServico); - inutCte.ValidarShcema(configuracaoServico); - inutCte.SalvarXmlEmDisco(configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + + var inutCte = ClassesFactory.CriaInutCTe(_configInutiliza, configServico); + inutCte.Assinar(configServico); + inutCte.ValidarSchema(configServico); + inutCte.SalvarXmlEmDisco(configServico); - var webService = WsdlFactory.CriaWsdlCteInutilizacao(configuracaoServico); + var webService = WsdlFactory.CriaWsdlCteInutilizacao(configServico); var retornoXml = await webService.cteInutilizacaoCTAsync(inutCte.CriaRequestWs()); var retorno = retInutCTe.LoadXml(retornoXml.OuterXml, inutCte); - retorno.SalvarXmlEmDisco(inutCte.infInut.Id.Substring(2), configuracaoServico); + retorno.SalvarXmlEmDisco(inutCte.infInut.Id.Substring(2), configServico); return retorno; } diff --git a/CTe.Servicos/Recepcao/ServicoCTeRecepcao.cs b/CTe.Servicos/Recepcao/ServicoCTeRecepcao.cs index b24d962d..7ac0ee9f 100644 --- a/CTe.Servicos/Recepcao/ServicoCTeRecepcao.cs +++ b/CTe.Servicos/Recepcao/ServicoCTeRecepcao.cs @@ -53,32 +53,36 @@ public class ServicoCTeRecepcao public retEnviCte CTeRecepcao(int lote, List cteEletronicosList, ConfiguracaoServico configuracaoServico = null) { - var enviCte = PreparaEnvioCTe(lote, cteEletronicosList, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; - var webService = WsdlFactory.CriaWsdlCteRecepcao(configuracaoServico); + var enviCte = PreparaEnvioCTe(lote, cteEletronicosList, configServico); + + var webService = WsdlFactory.CriaWsdlCteRecepcao(configServico); OnAntesDeEnviar(enviCte); - var retornoXml = webService.cteRecepcaoLote(enviCte.CriaRequestWs(configuracaoServico)); + var retornoXml = webService.cteRecepcaoLote(enviCte.CriaRequestWs(configServico)); var retorno = retEnviCte.LoadXml(retornoXml.OuterXml, enviCte); - retorno.SalvarXmlEmDisco(configuracaoServico); + retorno.SalvarXmlEmDisco(configServico); return retorno; } public async Task CTeRecepcaoAsync(int lote, List cteEletronicosList, ConfiguracaoServico configuracaoServico = null) { - var enviCte = PreparaEnvioCTe(lote, cteEletronicosList, configuracaoServico); + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + + var enviCte = PreparaEnvioCTe(lote, cteEletronicosList, configServico); - var webService = WsdlFactory.CriaWsdlCteRecepcao(configuracaoServico); + var webService = WsdlFactory.CriaWsdlCteRecepcao(configServico); OnAntesDeEnviar(enviCte); - var retornoXml = await webService.cteRecepcaoLoteAsync(enviCte.CriaRequestWs(configuracaoServico)); + var retornoXml = await webService.cteRecepcaoLoteAsync(enviCte.CriaRequestWs(configServico)); var retorno = retEnviCte.LoadXml(retornoXml.OuterXml, enviCte); - retorno.SalvarXmlEmDisco(configuracaoServico); + retorno.SalvarXmlEmDisco(configServico); return retorno; } @@ -110,14 +114,14 @@ public retCTe CTeRecepcaoSincronoV4(CTeEletronico cte, ConfiguracaoServico confi cte.ValidaSchema(instanciaConfiguracao); cte.SalvarXmlEmDisco(instanciaConfiguracao); - var webService = WsdlFactory.CriaWsdlCteRecepcaoSincronoV4(configuracaoServico); + var webService = WsdlFactory.CriaWsdlCteRecepcaoSincronoV4(instanciaConfiguracao); //OnAntesDeEnviar(enviCte); - var retornoXml = webService.CTeRecepcaoSincV4(cte.CriaRequestWs(configuracaoServico)); + var retornoXml = webService.CTeRecepcaoSincV4(cte.CriaRequestWs(instanciaConfiguracao)); var retorno = retCTe.LoadXml(retornoXml.OuterXml, cte); - retorno.SalvarXmlEmDisco(cte.Chave(), configuracaoServico); + retorno.SalvarXmlEmDisco(cte.Chave(), instanciaConfiguracao); return retorno; } diff --git a/CTe.Utils/CTe/ExtCTe.cs b/CTe.Utils/CTe/ExtCTe.cs index 7d216f59..e0f3d31f 100644 --- a/CTe.Utils/CTe/ExtCTe.cs +++ b/CTe.Utils/CTe/ExtCTe.cs @@ -61,7 +61,7 @@ public static class ExtCTe /// Retorna uma NFe carregada com os dados do XML public static CteEletronica CarregarDeArquivoXml(this CteEletronica cte, string arquivoXml) { - var s = FuncoesXml.ObterNodeDeArquivoXml(typeof (CteEletronica).Name, arquivoXml); + var s = FuncoesXml.ObterNodeDeArquivoXml(typeof(CteEletronica).Name, arquivoXml); return FuncoesXml.XmlStringParaClasse(s); } @@ -83,7 +83,7 @@ public static string ObterXmlString(this CteEletronica cte) /// Retorna um objeto do tipo CTe public static CteEletronica CarregarDeXmlString(this CteEletronica cte, string xmlString) { - var s = FuncoesXml.ObterNodeDeStringXml(typeof (CteEletronica).Name, xmlString); + var s = FuncoesXml.ObterNodeDeStringXml(typeof(CteEletronica).Name, xmlString); return FuncoesXml.XmlStringParaClasse(s); } @@ -100,6 +100,7 @@ public static void ValidaSchema(this CteEletronica cte, ConfiguracaoServico conf var xmlValidacao = cte.ObterXmlString(); var servicoInstancia = configuracaoServico ?? ConfiguracaoServico.Instancia; + if (!servicoInstancia.IsValidaSchemas) return; @@ -120,7 +121,7 @@ public static void ValidaSchema(this CteEletronica cte, ConfiguracaoServico conf "versão 2.00 é 3.00"); } - if (cte.infCte.ide.tpCTe != tpCTe.Anulacao && cte.infCte.ide.tpCTe != tpCTe.Complemento) // Ct-e do Tipo Anulação/Complemento não tem Informações do Modal + if (cte.infCte.ide.tpCTe != tpCTe.Anulacao && cte.infCte.ide.tpCTe != tpCTe.Complemento) // Ct-e do Tipo Anulação/Complemento não tem Informações do Modal { var xmlModal = FuncoesXml.ClasseParaXmlString(cte.infCte.infCTeNorm.infModal); @@ -291,7 +292,7 @@ public static infCTeSupl QrCode(this CteEletronica cte, X509Certificate2 certifi qrCode.Append("&"); qrCode.Append("tpAmb=").Append((int)cte.infCte.ide.tpAmb); - if (cte.infCte.ide.tpEmis != tpEmis.teNormal + if (cte.infCte.ide.tpEmis != tpEmis.teNormal && cte.infCte.ide.tpEmis != tpEmis.teSVCRS && cte.infCte.ide.tpEmis != tpEmis.teSVCSP ) diff --git a/CTe.Utils/CTe/ExtEnvCte.cs b/CTe.Utils/CTe/ExtEnvCte.cs index e215f515..8b698b75 100644 --- a/CTe.Utils/CTe/ExtEnvCte.cs +++ b/CTe.Utils/CTe/ExtEnvCte.cs @@ -47,16 +47,18 @@ public static class ExtEnvCte { public static void ValidaSchema(this enviCTe enviCTe, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + var xmlValidacao = enviCTe.ObterXmlString(); switch (enviCTe.versao) { case versao.ve200: - Validador.Valida(xmlValidacao, "enviCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "enviCTe_v2.00.xsd", configServico); break; case versao.ve400: case versao.ve300: - Validador.Valida(xmlValidacao, "enviCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "enviCTe_v3.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + @@ -93,7 +95,7 @@ public static XmlDocument CriaRequestWs(this enviCTe enviCTe, ConfiguracaoServic var request = new XmlDocument(); var xml = enviCTe.ObterXmlString(); - + var instanciaServico = configuracaoServico ?? ConfiguracaoServico.Instancia; if (instanciaServico.cUF == Estado.PR diff --git a/CTe.Utils/DistribuicaoDFe/ExtdistDFeInt.cs b/CTe.Utils/DistribuicaoDFe/ExtdistDFeInt.cs index 1ad4ec66..6b73322d 100644 --- a/CTe.Utils/DistribuicaoDFe/ExtdistDFeInt.cs +++ b/CTe.Utils/DistribuicaoDFe/ExtdistDFeInt.cs @@ -54,16 +54,17 @@ public static string ObterXmlString(this distDFeInt pedDistDFeInt) public static void ValidaSchema(this distDFeInt pedDistDFeInt, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + var xmlValidacao = pedDistDFeInt.ObterXmlString(); - if (pedDistDFeInt.versao.Equals("1.00")) { - Validador.Valida(xmlValidacao, "distDFeInt_v1.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "distDFeInt_v1.00.xsd", configServico); } else if (pedDistDFeInt.versao.Equals("1.10")) { - Validador.Valida(xmlValidacao, "distDFeInt_v1.10.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "distDFeInt_v1.10.xsd", configServico); } else { diff --git a/CTe.Utils/Evento/Extevento.cs b/CTe.Utils/Evento/Extevento.cs index afbdf82f..f44770f8 100644 --- a/CTe.Utils/Evento/Extevento.cs +++ b/CTe.Utils/Evento/Extevento.cs @@ -74,18 +74,20 @@ public static void Assina(this eventoCTe eventoCTe, ConfiguracaoServico configur public static void ValidarSchema(this eventoCTe eventoCTe, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + var xmlEvento = eventoCTe.ObterXmlString(); switch (eventoCTe.versao) { case versao.ve200: - Validador.Valida(xmlEvento, "eventoCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlEvento, "eventoCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlEvento, "eventoCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlEvento, "eventoCTe_v3.00.xsd", configServico); break; case versao.ve400: - Validador.Valida(xmlEvento, "eventoCTe_v4.00.xsd", configuracaoServico); + Validador.Valida(xmlEvento, "eventoCTe_v4.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + @@ -98,22 +100,24 @@ public static void ValidarSchema(this eventoCTe eventoCTe, ConfiguracaoServico c private static void ValidarSchemaEventoContainer(EventoContainer container, versao versao, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + if (container.GetType() == typeof(evCancCTe)) { - var evCancCTe = (evCancCTe) container; + var evCancCTe = (evCancCTe)container; var xmlEventoCancelamento = evCancCTe.ObterXmlString(); switch (versao) { case versao.ve200: - Validador.Valida(xmlEventoCancelamento, "evCancCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCancelamento, "evCancCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlEventoCancelamento, "evCancCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCancelamento, "evCancCTe_v3.00.xsd", configServico); break; case versao.ve400: - Validador.Valida(xmlEventoCancelamento, "evCancCTe_v4.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCancelamento, "evCancCTe_v4.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + @@ -133,13 +137,13 @@ private static void ValidarSchemaEventoContainer(EventoContainer container, vers switch (versao) { case versao.ve200: - Validador.Valida(xmlEventoCCe, "evCCeCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCCe, "evCCeCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlEventoCCe, "evCCeCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCCe, "evCCeCTe_v3.00.xsd", configServico); break; case versao.ve400: - Validador.Valida(xmlEventoCCe, "evCCeCTe_v4.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCCe, "evCCeCTe_v4.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + @@ -157,13 +161,13 @@ private static void ValidarSchemaEventoContainer(EventoContainer container, vers switch (versao) { case versao.ve200: - Validador.Valida(xmlEventoCCe, "evPrestDesacordo_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCCe, "evPrestDesacordo_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlEventoCCe, "evPrestDesacordo_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCCe, "evPrestDesacordo_v3.00.xsd", configServico); break; case versao.ve400: - Validador.Valida(xmlEventoCCe, "evPrestDesacordo_v4.00.xsd", configuracaoServico); + Validador.Valida(xmlEventoCCe, "evPrestDesacordo_v4.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + diff --git a/CTe.Utils/Extencoes/ExtConsReciCTe.cs b/CTe.Utils/Extencoes/ExtConsReciCTe.cs index a05e7e5e..229f4a57 100644 --- a/CTe.Utils/Extencoes/ExtConsReciCTe.cs +++ b/CTe.Utils/Extencoes/ExtConsReciCTe.cs @@ -45,15 +45,16 @@ public static class ExtConsReciCTe { public static void ValidarSchema(this consReciCTe consReciCTe, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; var xmlValidacao = consReciCTe.ObterXmlString(); switch (consReciCTe.versao) { case versao.ve200: - Validador.Valida(xmlValidacao, "consReciCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consReciCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlValidacao, "consReciCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consReciCTe_v3.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + diff --git a/CTe.Utils/Extencoes/ExtconsSitCTe.cs b/CTe.Utils/Extencoes/ExtconsSitCTe.cs index 166f4a93..0ef21fc9 100644 --- a/CTe.Utils/Extencoes/ExtconsSitCTe.cs +++ b/CTe.Utils/Extencoes/ExtconsSitCTe.cs @@ -46,20 +46,23 @@ public static class ExtconsSitCTe public static void ValidarSchema(this consSitCTe consSitCTe, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + var xmlValidacao = consSitCTe.ObterXmlString(); switch (consSitCTe.versao) { case versao.ve200: - Validador.Valida(xmlValidacao, "consSitCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consSitCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlValidacao, "consSitCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consSitCTe_v3.00.xsd", configServico); break; case versao.ve400: - Validador.Valida(xmlValidacao, "consSitCTe_v4.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consSitCTe_v4.00.xsd", configServico); break; - default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + + default: + throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + "a versão está inválida, somente é permitido " + "versão 2.00 é 3.00"); } diff --git a/CTe.Utils/Extencoes/ExtconsStatServCte.cs b/CTe.Utils/Extencoes/ExtconsStatServCte.cs index 1bc45660..4e32cef3 100644 --- a/CTe.Utils/Extencoes/ExtconsStatServCte.cs +++ b/CTe.Utils/Extencoes/ExtconsStatServCte.cs @@ -45,18 +45,20 @@ public static class ExtconsStatServCte { public static void ValidarSchema(this consStatServCte consStatServCte, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + var xmlValidacao = consStatServCte.ObterXmlString(); switch (consStatServCte.versao) { case versao.ve200: - Validador.Valida(xmlValidacao, "consStatServCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consStatServCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlValidacao, "consStatServCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consStatServCTe_v3.00.xsd", configServico); break; case versao.ve400: - Validador.Valida(xmlValidacao, "consStatServCTe_v4.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consStatServCTe_v4.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + @@ -82,8 +84,8 @@ public static void SalvarXmlEmDisco(this consStatServCte statuServCte, Configura if (instanciaServico.NaoSalvarXml()) return; var caminhoXml = instanciaServico.DiretorioSalvarXml; - - var arquivoSalvar = Path.Combine(caminhoXml, DateTime.Now.ParaDataHoraString() + "-ped-sta.xml"); + + var arquivoSalvar = Path.Combine(caminhoXml, DateTime.Now.ParaDataHoraString() + "-ped-sta.xml"); FuncoesXml.ClasseParaArquivoXml(statuServCte, arquivoSalvar); } @@ -101,18 +103,20 @@ public static class ExtconsStatServCTe { public static void ValidarSchema(this consStatServCTe consStatServCte, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; + var xmlValidacao = consStatServCte.ObterXmlString(); switch (consStatServCte.versao) { case versao.ve200: - Validador.Valida(xmlValidacao, "consStatServCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consStatServCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlValidacao, "consStatServCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consStatServCTe_v3.00.xsd", configServico); break; case versao.ve400: - Validador.Valida(xmlValidacao, "consStatServCTe_v4.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "consStatServCTe_v4.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + diff --git a/CTe.Utils/Extencoes/ExtinutCTe.cs b/CTe.Utils/Extencoes/ExtinutCTe.cs index 87bf4f94..c40adcd4 100644 --- a/CTe.Utils/Extencoes/ExtinutCTe.cs +++ b/CTe.Utils/Extencoes/ExtinutCTe.cs @@ -63,18 +63,19 @@ public static string ObterXmlString(this inutCTe pedInutilizacao) return FuncoesXml.ClasseParaXmlString(pedInutilizacao); } - public static void ValidarShcema(this inutCTe inutCTe, ConfiguracaoServico configuracaoServico = null) + public static void ValidarSchema(this inutCTe inutCTe, ConfiguracaoServico configuracaoServico = null) { + var configServico = configuracaoServico ?? ConfiguracaoServico.Instancia; var xmlValidacao = inutCTe.ObterXmlString(); switch (inutCTe.versao) { case versao.ve200: - Validador.Valida(xmlValidacao, "inutCTe_v2.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "inutCTe_v2.00.xsd", configServico); break; case versao.ve300: - Validador.Valida(xmlValidacao, "inutCTe_v3.00.xsd", configuracaoServico); + Validador.Valida(xmlValidacao, "inutCTe_v3.00.xsd", configServico); break; default: throw new InvalidOperationException("Nos achamos um erro na hora de validar o schema, " + @@ -91,7 +92,7 @@ public static void SalvarXmlEmDisco(this inutCTe inutCTe, ConfiguracaoServico co var caminhoXml = instanciaServico.DiretorioSalvarXml; - var arquivoSalvar = Path.Combine(caminhoXml, inutCTe.infInut.Id+ "-ped-inu.xml"); + var arquivoSalvar = Path.Combine(caminhoXml, inutCTe.infInut.Id + "-ped-inu.xml"); FuncoesXml.ClasseParaArquivoXml(inutCTe, arquivoSalvar); } diff --git a/CTe.Utils/Inutilizacao/ExtretInutCTe.cs b/CTe.Utils/Inutilizacao/ExtretInutCTe.cs index c0b4c211..6e378da2 100644 --- a/CTe.Utils/Inutilizacao/ExtretInutCTe.cs +++ b/CTe.Utils/Inutilizacao/ExtretInutCTe.cs @@ -60,8 +60,6 @@ public static string ObterXmlString(this retInutCTe retInutCTe) { return FuncoesXml.ClasseParaXmlString(retInutCTe); } - - public static void SalvarXmlEmDisco(this retInutCTe retInutCTe, string chaveNome, ConfiguracaoServico configuracaoServico = null) { var instanciaServico = configuracaoServico ?? ConfiguracaoServico.Instancia; @@ -69,11 +67,10 @@ public static void SalvarXmlEmDisco(this retInutCTe retInutCTe, string chaveNome if (instanciaServico.NaoSalvarXml()) return; var caminhoXml = instanciaServico.DiretorioSalvarXml; - + var arquivoSalvar = Path.Combine(caminhoXml, chaveNome + "-inu.xml"); FuncoesXml.ClasseParaArquivoXml(retInutCTe, arquivoSalvar); } - } } \ No newline at end of file diff --git a/CTe.Utils/Validacao/Validador.cs b/CTe.Utils/Validacao/Validador.cs index 015fc5f7..1d477399 100644 --- a/CTe.Utils/Validacao/Validador.cs +++ b/CTe.Utils/Validacao/Validador.cs @@ -60,7 +60,7 @@ public static void Valida(string xml, string schema, ConfiguracaoServico configu schemas.XmlResolver = new XmlUrlResolver(); cfg.Schemas = schemas; - // Quando carregar o eschema, especificar o namespace que ele valida + // Quando carregar o schema, especificar o namespace que ele valida // e a localização do arquivo schemas.Add(null, arquivoSchema); // Especifica o tratamento de evento para os erros de validacao