public static eventoCTe CriaEvento(CTeTipoEvento cTeTipoEvento, int sequenciaEvento, string chave, string cnpj, EventoContainer container) { var configuracaoServico = ConfiguracaoServico.Instancia; var id = new StringBuilder("ID"); id.Append((int)cTeTipoEvento); id.Append(chave); id.Append(sequenciaEvento.ToString("D2")); return(new eventoCTe { versao = configuracaoServico.VersaoLayout, infEvento = new infEventoEnv { tpAmb = configuracaoServico.tpAmb, CNPJ = cnpj, cOrgao = configuracaoServico.cUF, chCTe = chave, dhEvento = DateTime.Now, nSeqEvento = sequenciaEvento, tpEvento = cTeTipoEvento, detEvento = new detEvento { versaoEvento = configuracaoServico.VersaoLayout, EventoContainer = container }, Id = id.ToString() } }); }
/// <summary> /// Salvar o arquivo xml do Evento no disco de acordo com as propriedades. /// </summary> /// <param name="conteudoArquivo"></param> /// <param name="nomeArquivo"></param> /// <param name="evento"></param> /// <param name="data"></param> /// <param name="cnpj"></param> /// <exception cref="ArgumentOutOfRangeException"></exception> protected void GravarEvento(string conteudoArquivo, string nomeArquivo, CTeTipoEvento evento, DateTime data, string cnpj) { if (!Configuracoes.Arquivos.Salvar) { return; } conteudoArquivo = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + conteudoArquivo.RemoverDeclaracaoXml(); nomeArquivo = Path.Combine(Configuracoes.Arquivos.GetPathEvento(evento, cnpj, data), nomeArquivo); File.WriteAllText(nomeArquivo, conteudoArquivo, Encoding.UTF8); }
/// <summary> /// /// </summary> /// <param name="tipo"></param> /// <param name="cnpj"></param> /// <param name="data"></param> /// <returns></returns> public string GetPathEvento(CTeTipoEvento tipo, string cnpj = "", DateTime?data = null) { var result = GetPath(PathEvento, "Evento", cnpj, data); if (AdicionarLiteral) { result = Path.Combine(result, tipo.GetDescription()); } if (!Directory.Exists(result)) { Directory.CreateDirectory(result); } return(result); }
public async Task <retEventoCTe> 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); evento.ValidarSchema(configuracaoServico); evento.SalvarXmlEmDisco(configuracaoServico); var webService = WsdlFactory.CriaWsdlCteEvento(configuracaoServico); var retornoXml = await webService.cteRecepcaoEventoAsync(evento.CriaXmlRequestWs()); var retorno = retEventoCTe.LoadXml(retornoXml.OuterXml, evento); retorno.SalvarXmlEmDisco(configuracaoServico); return(retorno); }
public retEventoCTe Executar(CTeTipoEvento cTeTipoEvento, int sequenciaEvento, string chave, string cnpj, EventoContainer container) { var evento = FactoryEvento.CriaEvento(cTeTipoEvento, sequenciaEvento, chave, cnpj, container); evento.Assina(); evento.ValidarSchema(); evento.SalvarXmlEmDisco(); var webService = WsdlFactory.CriaWsdlCteEvento(); var retornoXml = webService.cteRecepcaoEvento(evento.CriaXmlRequestWs()); var retorno = retEventoCTe.LoadXml(retornoXml.OuterXml, evento); retorno.SalvarXmlEmDisco(); return(retorno); }
//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) { return(CriaEvento(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container)); }
//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)); }
public async Task <retEventoCTe> 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)); }
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)); }
public retEventoCTe Executar(CteEletronico cte, int sequenciaEvento, EventoContainer container, CTeTipoEvento cTeTipoEvento) { return(Executar(cTeTipoEvento, sequenciaEvento, cte.Chave(), cte.infCte.emit.CNPJ, container)); }