public void ConsultaPorProtocolo() { var porChave = MessageBoxConfirmTuche("Sim = Por chave\nNão = Por arquivo xml"); var chave = string.Empty; if (porChave == DialogResult.Yes) { chave = InputBoxTuche("Digite a chave de acesso da MDF-e"); } if (porChave == DialogResult.No) { chave = BuscarChave(); } if (string.IsNullOrEmpty(chave)) { MessageBoxTuche("Ops.. Não a oque fazer sem uma chave de acesso"); return; } var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var servicoConsultaProtocolo = new ConsultaProtcoloServico(); var retorno = servicoConsultaProtocolo.ConsultaProtocolo(chave); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void SalvarConfiguracoesXml() { var configuracaoDao = new ConfiguracaoDao(); var configuracaoAppTeste = new Configuracao { Empresa = { Cnpj = Cnpj, Bairro = Bairro, Cep = Cep, CodigoIbgeMunicipio = CodigoIbgeMunicipio, Complemento = Complemento, Email = Email, InscricaoEstadual = InscricaoEstadual, Logradouro = Logradouro, Nome = Nome, NomeFantasia = NomeFantasia, NomeMunicipio = NomeMunicipio, Numero = Numero, SiglaUf = SiglaUf, Telefone = Telefone, RNTRC = Rntrc }, CertificadoDigital = { CaminhoArquivo = CaminhoArquivo, NumeroDeSerie = NumeroDeSerie, Senha = Senha, ManterEmCache = ManterCertificadoEmCache }, ConfigWebService = { UfEmitente = UfDestino, Numeracao = Numeracao, Serie = Serie, VersaoMDFeConsNaoEnc = VersaoServico.Versao100, VersaoMDFeConsulta = VersaoServico.Versao100, VersaoMDFeRecepcao = VersaoServico.Versao100, VersaoMDFeRecepcaoEvento = VersaoServico.Versao100, VersaoMDFeRetRecepcao = VersaoServico.Versao100, VersaoMDFeStatusServico = VersaoServico.Versao100, CaminhoSchemas = DiretorioSchemas, TimeOut = TimeOut }, DiretorioSalvarXml = DiretorioSalvarXml, IsSalvarXml = IsSalvarXml }; if (AmbienteHomologacao) { configuracaoAppTeste.ConfigWebService.Ambiente = TipoAmbiente.Homologacao; } if (AmbienteProducao) { configuracaoAppTeste.ConfigWebService.Ambiente = TipoAmbiente.Producao; } configuracaoDao.SalvarConfiguracao(configuracaoAppTeste); }
private static async Task InutilizacaoDeNumeracao() { var config = new ConfiguracaoDao().BuscarConfiguracao(); //CarregarConfiguracoes(config); var configuracaoServico = MontarConfiguracoes(config); var numeroInicial = int.Parse(RequisitarInput("Númeração Inicial")); var numeroFinal = int.Parse(RequisitarInput("Númeração Final")); var ano = int.Parse(RequisitarInput("Digite o ano, apenas os ultimos dois digitos")); var justificativa = RequisitarInput("Justificativa (15 digitos no minimo)"); var configInutilizar = new ConfigInutiliza( config.Empresa.Cnpj, config.ConfigWebService.Serie, numeroInicial, numeroFinal, ano, justificativa ); var statusServico = new InutilizacaoServico(configInutilizar); var retorno = await statusServico.InutilizarAsync(configuracaoServico); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void InutilizacaoDeNumeracao() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var numeroInicial = int.Parse(InputBoxTuche("Númeração Inicial")); var numeroFinal = int.Parse(InputBoxTuche("Númeração Final")); var ano = int.Parse(InputBoxTuche("Digite o ano, apenas os ultimos dois digitos")); var justificativa = InputBoxTuche("Justificativa (15 digitos no minimo)"); var configInutilizar = new ConfigInutiliza( config.Empresa.Cnpj, config.ConfigWebService.Serie, numeroInicial, numeroFinal, ano, justificativa ); var statusServico = new InutilizacaoServico(configInutilizar); var retorno = statusServico.Inutilizar(); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void CarregarConfiguracoesMDFe() { var dao = new ConfiguracaoDao(); var config = dao.BuscarConfiguracao(); if (config == null) { return; } Cnpj = config.Empresa.Cnpj; Bairro = config.Empresa.Bairro; Cep = config.Empresa.Cep; CodigoIbgeMunicipio = config.Empresa.CodigoIbgeMunicipio; Complemento = config.Empresa.Complemento; Email = config.Empresa.Email; InscricaoEstadual = config.Empresa.InscricaoEstadual; Logradouro = config.Empresa.Logradouro; Nome = config.Empresa.Nome; NomeFantasia = config.Empresa.NomeFantasia; NomeMunicipio = config.Empresa.NomeMunicipio; Numero = config.Empresa.Numero; SiglaUf = config.Empresa.SiglaUf; Telefone = config.Empresa.Telefone; Rntrc = config.Empresa.RNTRC; Senha = config.CertificadoDigital.Senha; CaminhoArquivo = config.CertificadoDigital.CaminhoArquivo; NumeroDeSerie = config.CertificadoDigital.NumeroDeSerie; AmbienteProducao = true; if (config.ConfigWebService.Ambiente == TipoAmbiente.Homologacao) { AmbienteHomologacao = true; } Numeracao = config.ConfigWebService.Numeracao; Serie = config.ConfigWebService.Serie; UfDestino = config.ConfigWebService.UfEmitente; VersaoMDFeConsNaoEnc = config.ConfigWebService.VersaoMDFeConsNaoEnc; VersaoMDFeConsulta = config.ConfigWebService.VersaoMDFeConsulta; VersaoMDFeRecepcao = config.ConfigWebService.VersaoMDFeRecepcao; VersaoMDFeRecepcaoEvento = config.ConfigWebService.VersaoMDFeRecepcaoEvento; VersaoMDFeRetRecepcao = config.ConfigWebService.VersaoMDFeRetRecepcao; VersaoMDFeStatusServico = config.ConfigWebService.VersaoMDFeStatusServico; DiretorioSchemas = config.ConfigWebService.CaminhoSchemas; DiretorioSalvarXml = config.DiretorioSalvarXml; IsSalvarXml = config.IsSalvarXml; TimeOut = 3000; if (config.ConfigWebService.TimeOut > 0) { TimeOut = config.ConfigWebService.TimeOut; } }
public void EventoEncerramento1_0() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); MDFeEletronico mdfe; var caminhoXml = BuscarArquivoXmlMDFe(); if (caminhoXml.Contains("completo")) { var enviMDFe = MDFeEnviMDFe.LoadXmlArquivo(caminhoXml); mdfe = enviMDFe.MDFe; } else { mdfe = MDFeEletronico.LoadXmlArquivo(caminhoXml); } var evento = new ServicoMDFeEvento(); var protocolo = InputBoxTuche("Digite um protocolo"); if (string.IsNullOrEmpty(protocolo)) { MessageBoxTuche("O protocolo não pode ser vazio ou nulo"); return; } var retorno = evento.MDFeEventoEncerramentoMDFeEventoEncerramento(mdfe, 1, protocolo); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void ConsultarStatusServico2() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var statusServico = new StatusServico(); var retorno = statusServico.ConsultaStatus(); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void ConsultaNaoEncerrados() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var servicoConsultaNaoEncerrados = new ServicoMDFeConsultaNaoEncerrados(); var retorno = servicoConsultaNaoEncerrados.MDFeConsultaNaoEncerrados(config.Empresa.Cnpj); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void ConsultaStatusServico() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var servicoStatusServico = new ServicoMDFeStatusServico(); var retorno = servicoStatusServico.MDFeStatusServico(); OnSucessoSync(new RetornoEEnvio(retorno)); }
private static async Task ConsultarStatusServico2() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var statusServico = new StatusServico(); var retorno = await statusServico.ConsultaStatus(); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void ConsultaPorNumeroRecibo() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var numeroRecibo = InputBoxTuche("Número Recibo"); var consultaReciboServico = new ConsultaReciboServico(numeroRecibo); var retorno = consultaReciboServico.Consultar(); OnSucessoSync(new RetornoEEnvio(retorno)); }
private static async Task ConsultaPorNumeroRecibo() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var numeroRecibo = RequisitarInput("Número Recibo"); var consultaReciboServico = new ConsultaReciboServico(numeroRecibo); var retorno = await consultaReciboServico.Consultar(); OnSucessoSync(new RetornoEEnvio(retorno)); }
private static async Task DistribuicaoDFe() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); #region CTeDistribuicaoDFe var cnpj = RequisitarInput("CNPJ do destinatário do CTE:"); if (string.IsNullOrEmpty(cnpj)) { throw new Exception("O CNPJ deve ser informado!"); } if (cnpj.Length != 14) { throw new Exception("O CNPJ deve conter 14 caracteres!"); } var ultNSU = RequisitarInput("Ultimo NSU NSU "); if (string.IsNullOrEmpty(ultNSU)) { ultNSU = "0"; } if (int.Parse(ultNSU) < 0) { throw new Exception("ultNSU deve ser maior ou igual a 0"); } var nsu = RequisitarInput("NSU faltante"); if (string.IsNullOrEmpty(nsu)) { nsu = "0"; } if (int.Parse(nsu) < 0) { throw new Exception("NSU deve ser maior ou igual a 0"); } var servicoCTe = new ServicoCTeDistribuicaoDFe(); var retornoCTeDistDFe = await servicoCTe.CTeDistDFeInteresse(config.Empresa.SiglaUf.ToString(), cnpj, ultNSU, nsu); OnSucessoSync(new RetornoEEnvio(retornoCTeDistDFe.EnvioStr, retornoCTeDistDFe.RetornoStr)); #endregion }
public void EventoCancelar() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var evento = new ServicoMDFeEvento(); MDFeEletronico mdfe; var caminhoXml = BuscarArquivoXmlMDFe(); try { var enviMDFe = MDFeEnviMDFe.LoadXmlArquivo(caminhoXml); mdfe = enviMDFe.MDFe; } catch { try { mdfe = MDFeEletronico.LoadXmlArquivo(caminhoXml); } catch { var proc = FuncoesXml.ArquivoXmlParaClasse <MDFeProcMDFe>(caminhoXml); mdfe = proc.MDFe; } } var protocolo = InputBoxTuche("Digite um protocolo"); if (string.IsNullOrEmpty(protocolo)) { MessageBoxTuche("O protocolo não pode ser vazio ou nulo"); return; } var justificativa = InputBoxTuche("Digite uma justificativa (minimo 15 digitos)"); if (string.IsNullOrEmpty(justificativa)) { MessageBoxTuche("A justificativa não pode ser vazio ou nulo"); return; } var retorno = evento.MDFeEventoCancelar(mdfe, 1, protocolo, justificativa); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void EventoIncluirCondutor() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var evento = new ServicoMDFeEvento(); MDFeEletronico mdfe; var caminhoXml = BuscarArquivoXmlMDFe(); try { var enviMDFe = MDFeEnviMDFe.LoadXmlArquivo(caminhoXml); mdfe = enviMDFe.MDFe; } catch { try { mdfe = MDFeEletronico.LoadXmlArquivo(caminhoXml); } catch { var proc = FuncoesXml.ArquivoXmlParaClasse <MDFeProcMDFe>(caminhoXml); mdfe = proc.MDFe; } } var nomeCondutor = InputBoxTuche("Nome condutor"); var cpfCondutor = InputBoxTuche("Cpf condutor"); if (string.IsNullOrEmpty(nomeCondutor)) { MessageBoxTuche("Nome do condutor não pode ser vazio ou nulo"); return; } if (string.IsNullOrEmpty(cpfCondutor)) { MessageBoxTuche("CPF do condutor não pode ser vazio ou nulo"); return; } var retorno = evento.MDFeEventoIncluirCondutor(mdfe, 1, nomeCondutor, cpfCondutor); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void EventoPagamentoOperacaoTransporte() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var evento = new ServicoMDFeEvento(); MDFeEletronico mdfe; var caminhoXml = BuscarArquivoXmlMDFe(); try { var enviMDFe = MDFeEnviMDFe.LoadXmlArquivo(caminhoXml); mdfe = enviMDFe.MDFe; } catch { try { mdfe = MDFeEletronico.LoadXmlArquivo(caminhoXml); } catch { var proc = FuncoesXml.ArquivoXmlParaClasse <MDFeProcMDFe>(caminhoXml); mdfe = proc.MDFe; } } var protocolo = InputBoxTuche("Protocolo"); var qtdViagens = InputBoxTuche("Código do Município de Carregamento"); var nroViagem = InputBoxTuche("Nome do Município de Carregamento"); if (string.IsNullOrEmpty(qtdViagens)) { MessageBoxTuche("A quantidade de viagens não pode ser vazia ou nula"); return; } if (string.IsNullOrEmpty(nroViagem)) { MessageBoxTuche("Numero de referencia da viagem não pode ser vazio ou nulo"); return; } var retorno = evento.MDFeEventoPagamentoOperacaoTransporte(mdfe, 1, protocolo, int.Parse(qtdViagens), int.Parse(nroViagem)); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void EventoDesacordoCTe() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var cnpj = (InputBoxTuche("CNPJ Tomador")); var chave = (InputBoxTuche("Chave CTe")); var sequenciaEvento = int.Parse(InputBoxTuche("Sequencia Evento")); var indPres = InputBoxTuche("Indicador da prestação (1)"); var obs = InputBoxTuche("Observação (mínimo 15 digitos)"); var servico = new EventoDesacordo(sequenciaEvento, chave, cnpj, indPres, obs); var retorno = servico.Discordar(); OnSucessoSync(new RetornoEEnvio(retorno)); }
private static async Task EventoDesacordoCTe() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var cnpj = RequisitarInput("CNPJ Tomador"); var chave = RequisitarInput("Chave CTe"); var sequenciaEvento = int.Parse(RequisitarInput("Sequencia Evento")); var indPres = RequisitarInput("Indicador da prestação (1)"); var obs = RequisitarInput("Observação (mínimo 15 digitos)"); var servico = new EventoDesacordo(sequenciaEvento, chave, cnpj, indPres, obs); var retorno = await servico.Discordar(); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void ConsultaPorRecibo() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var recibo = InputBoxTuche("Digite o recibo"); if (string.IsNullOrEmpty(recibo)) { MessageBoxTuche("Recibo inválido"); return; } var servicoRecibo = new ServicoMDFeRetRecepcao(); var retorno = servicoRecibo.MDFeRetRecepcao(recibo); OnSucessoSync(new RetornoEEnvio(retorno)); }
private static async Task ConsultaPorProtocolo() { Console.WriteLine("1 - Por chave"); Console.WriteLine("2 - Por arquivo xml"); var option = Console.ReadLine(); string chave; switch (Convert.ToInt32(option)) { case 1: Console.WriteLine("Digite a chave de acesso da CT-e:"); chave = Console.ReadLine(); break; case 2: chave = BuscarChave(); break; default: Console.WriteLine("Opção inválida!"); return; } if (string.IsNullOrEmpty(chave)) { Console.WriteLine("Ops.. Não há o que fazer sem uma chave de acesso."); return; } var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var servicoConsultaProtocolo = new ConsultaProtcoloServico(); var retorno = await servicoConsultaProtocolo.ConsultaProtocolo(chave); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void CartaCorrecao() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var caminho = BuscarArquivoXml(); // aqui estou fazendo um load no lote de ct-e var cte = enviCTe.LoadXmlArquivo(caminho).CTe[0]; // aqui estou fazendo um load no xml de envio de um ct-e //var cte = CteEletronico.LoadXmlArquivo(caminho); var sequenciaEvento = int.Parse(InputBoxTuche("Sequencia Evento")); // correções adicionadas.. não disponibilizei tela, mas serve como exemplo // como vemos a correção é bem diferente da nf-e var correcoes = new List <infCorrecao> { new infCorrecao { campoAlterado = "nro", grupoAlterado = "enderRem", valorAlterado = "170" }, new infCorrecao { campoAlterado = "fone", grupoAlterado = "rem", valorAlterado = "14991001000" } }; var servico = new EventoCartaCorrecao(cte, sequenciaEvento, correcoes); var retorno = servico.AdicionarCorrecoes(); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void EventoCancelarCTe() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var caminho = BuscarArquivoXml(); // aqui estou fazendo um load no lote de ct-e var cte = enviCTe.LoadXmlArquivo(caminho).CTe[0]; // aqui estou fazendo um load no xml de envio de um ct-e //var cte = CteEletronico.LoadXmlArquivo(caminho); var sequenciaEvento = int.Parse(InputBoxTuche("Sequencia Evento")); var protocolo = InputBoxTuche("Protocolo"); var justificativa = InputBoxTuche("Justificativa mínimo 15 digitos vlw"); var servico = new EventoCancelamento(cte, sequenciaEvento, protocolo, justificativa); var retorno = servico.Cancelar(); OnSucessoSync(new RetornoEEnvio(retorno)); }
private static async Task EventoCancelarCTe() { var config = new ConfiguracaoDao().BuscarConfiguracao(); //CarregarConfiguracoes(config); var configuracaoServico = MontarConfiguracoes(config); var caminho = BuscarArquivoXml(); // aqui estou fazendo um load no lote de ct-e var cte = enviCTe.LoadXmlArquivo(caminho).CTe[0]; // aqui estou fazendo um load no xml de envio de um ct-e //var cte = CteEletronico.LoadXmlArquivo(caminho); var sequenciaEvento = int.Parse(RequisitarInput("Sequencia Evento")); var protocolo = RequisitarInput("Protocolo"); var justificativa = RequisitarInput("Justificativa mínimo 15 digitos vlw"); var servico = new EventoCancelamento(cte, sequenciaEvento, protocolo, justificativa); var retorno = await servico.CancelarAsync(configuracaoServico); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void CriarEnviarCTe2e3() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); var cteEletronico = new CteEletronico(); #region infCte cteEletronico.infCte = new infCte(); cteEletronico.infCte.versao = config.ConfigWebService.Versao; #endregion #region ide cteEletronico.infCte.ide = new ide(); cteEletronico.infCte.ide.cUF = config.Empresa.SiglaUf; cteEletronico.infCte.ide.cCT = GetRandom(); cteEletronico.infCte.ide.CFOP = 5353; cteEletronico.infCte.ide.natOp = "PRESTAÇÃO DE SERVICO DE TRANSPORTE CT-E EXEMPLO"; if (config.ConfigWebService.Versao == versao.ve200) { cteEletronico.infCte.ide.forPag = forPag.Pago; } cteEletronico.infCte.ide.mod = ModeloDocumento.CTe; cteEletronico.infCte.ide.serie = config.ConfigWebService.Serie; cteEletronico.infCte.ide.nCT = config.ConfigWebService.Numeracao; cteEletronico.infCte.ide.dhEmi = DateTimeOffset.Now; cteEletronico.infCte.ide.tpImp = tpImp.Retrado; cteEletronico.infCte.ide.tpEmis = tpEmis.teNormal; cteEletronico.infCte.ide.tpAmb = config.ConfigWebService.Ambiente; // o serviço adicionara automaticamente isso para você cteEletronico.infCte.ide.tpCTe = tpCTe.Normal; cteEletronico.infCte.ide.procEmi = procEmi.AplicativoContribuinte; cteEletronico.infCte.ide.verProc = "0.0.0.1"; cteEletronico.infCte.ide.cMunEnv = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.ide.xMunEnv = config.Empresa.NomeMunicipio; cteEletronico.infCte.ide.UFEnv = config.Empresa.SiglaUf; cteEletronico.infCte.ide.modal = modal.rodoviario; cteEletronico.infCte.ide.tpServ = tpServ.normal; cteEletronico.infCte.ide.cMunIni = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.ide.xMunIni = config.Empresa.NomeMunicipio; cteEletronico.infCte.ide.UFIni = config.Empresa.SiglaUf; cteEletronico.infCte.ide.cMunFim = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.ide.xMunFim = config.Empresa.NomeMunicipio; cteEletronico.infCte.ide.UFFim = config.Empresa.SiglaUf; cteEletronico.infCte.ide.retira = retira.Nao; if (config.ConfigWebService.Versao == versao.ve300) { cteEletronico.infCte.ide.indIEToma = indIEToma.ContribuinteIcms; } if (config.ConfigWebService.Versao == versao.ve200) { cteEletronico.infCte.ide.tomaBase3 = new toma03 { toma = toma.Remetente }; } if (config.ConfigWebService.Versao == versao.ve300) { cteEletronico.infCte.ide.tomaBase3 = new toma3 { toma = toma.Remetente }; } #endregion #region emit cteEletronico.infCte.emit = new emit(); cteEletronico.infCte.emit.CNPJ = config.Empresa.Cnpj; cteEletronico.infCte.emit.IE = config.Empresa.InscricaoEstadual; cteEletronico.infCte.emit.xNome = config.Empresa.Nome; cteEletronico.infCte.emit.xFant = config.Empresa.NomeFantasia; cteEletronico.infCte.emit.enderEmit = new enderEmit(); cteEletronico.infCte.emit.enderEmit.xLgr = config.Empresa.Logradouro; cteEletronico.infCte.emit.enderEmit.nro = config.Empresa.Numero; cteEletronico.infCte.emit.enderEmit.xCpl = config.Empresa.Complemento; cteEletronico.infCte.emit.enderEmit.xBairro = config.Empresa.Bairro; cteEletronico.infCte.emit.enderEmit.cMun = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.emit.enderEmit.xMun = config.Empresa.NomeMunicipio; cteEletronico.infCte.emit.enderEmit.CEP = long.Parse(config.Empresa.Cep); cteEletronico.infCte.emit.enderEmit.UF = config.Empresa.SiglaUf; cteEletronico.infCte.emit.enderEmit.fone = config.Empresa.Telefone; #endregion // Remetente , no caso adicionei os mesmos dados do emitente.. mas seriam o do remente. #region rem cteEletronico.infCte.rem = new rem(); cteEletronico.infCte.rem.CNPJ = config.Empresa.Cnpj; cteEletronico.infCte.rem.IE = config.Empresa.InscricaoEstadual; cteEletronico.infCte.rem.xNome = config.Empresa.Nome; cteEletronico.infCte.rem.xFant = config.Empresa.NomeFantasia; cteEletronico.infCte.rem.fone = config.Empresa.Telefone; cteEletronico.infCte.rem.enderReme = new enderReme(); cteEletronico.infCte.rem.enderReme.xLgr = config.Empresa.Logradouro; cteEletronico.infCte.rem.enderReme.nro = config.Empresa.Numero; cteEletronico.infCte.rem.enderReme.xCpl = config.Empresa.Complemento; cteEletronico.infCte.rem.enderReme.xBairro = config.Empresa.Bairro; cteEletronico.infCte.rem.enderReme.cMun = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.rem.enderReme.xMun = config.Empresa.NomeMunicipio; cteEletronico.infCte.rem.enderReme.CEP = long.Parse(config.Empresa.Cep); cteEletronico.infCte.rem.enderReme.UF = config.Empresa.SiglaUf; #endregion // Destinatário #region dest cteEletronico.infCte.dest = new dest(); cteEletronico.infCte.dest.CNPJ = config.Empresa.Cnpj; cteEletronico.infCte.dest.IE = config.Empresa.InscricaoEstadual; cteEletronico.infCte.dest.xNome = config.Empresa.Nome; cteEletronico.infCte.dest.fone = config.Empresa.Telefone; cteEletronico.infCte.dest.enderDest = new enderDest(); cteEletronico.infCte.dest.enderDest.xLgr = config.Empresa.Logradouro; cteEletronico.infCte.dest.enderDest.nro = config.Empresa.Numero; cteEletronico.infCte.dest.enderDest.xCpl = config.Empresa.Complemento; cteEletronico.infCte.dest.enderDest.xBairro = config.Empresa.Bairro; cteEletronico.infCte.dest.enderDest.cMun = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.dest.enderDest.xMun = config.Empresa.NomeMunicipio; cteEletronico.infCte.dest.enderDest.CEP = long.Parse(config.Empresa.Cep); cteEletronico.infCte.dest.enderDest.UF = config.Empresa.SiglaUf; #endregion #region vPrest cteEletronico.infCte.vPrest = new vPrest(); cteEletronico.infCte.vPrest.vTPrest = 100m; cteEletronico.infCte.vPrest.vRec = 100m; #endregion #region imp cteEletronico.infCte.imp = new imp(); cteEletronico.infCte.imp.ICMS = new ICMS(); var icmsSimplesNacional = new ICMSSN(); cteEletronico.infCte.imp.ICMS.TipoICMS = icmsSimplesNacional; if (config.ConfigWebService.Versao == versao.ve300) { icmsSimplesNacional.CST = CST.ICMS90; } #endregion #region infCTeNorm cteEletronico.infCte.infCTeNorm = new infCTeNorm(); cteEletronico.infCte.infCTeNorm.infCarga = new infCarga(); cteEletronico.infCte.infCTeNorm.infCarga.vCarga = 1000m; cteEletronico.infCte.infCTeNorm.infCarga.proPred = "Linguiça com piqui"; cteEletronico.infCte.infCTeNorm.infCarga.infQ = new List <infQ>(); cteEletronico.infCte.infCTeNorm.infCarga.infQ.Add(new infQ { cUnid = cUnid.KG, qCarga = 10000, tpMed = "quilos gramas" }); cteEletronico.infCte.infCTeNorm.infDoc = new infDoc(); cteEletronico.infCte.infCTeNorm.infDoc.infNFe = new List <infNFe>(); cteEletronico.infCte.infCTeNorm.infDoc.infNFe.Add(new infNFe { chave = "52161021025760000123550010000087341557247948" }); if (config.ConfigWebService.Versao == versao.ve200) { cteEletronico.infCte.infCTeNorm.seg = new List <seg>(); cteEletronico.infCte.infCTeNorm.seg.Add(new seg { respSeg = respSeg.Destinatario }); } cteEletronico.infCte.infCTeNorm.infModal = new infModal(); if (config.ConfigWebService.Versao == versao.ve200) { cteEletronico.infCte.infCTeNorm.infModal.versaoModal = versaoModal.veM200; } if (config.ConfigWebService.Versao == versao.ve300) { cteEletronico.infCte.infCTeNorm.infModal.versaoModal = versaoModal.veM300; } var rodoviario = new rodo(); rodoviario.RNTRC = config.Empresa.RNTRC; if (config.ConfigWebService.Versao == versao.ve200) { rodoviario.dPrev = DateTime.Now; rodoviario.lota = lota.Nao; } cteEletronico.infCte.infCTeNorm.infModal.ContainerModal = rodoviario; #endregion var numeroLote = InputBoxTuche("Número Lote"); var servicoRecepcao = new ServicoCTeRecepcao(); // Evento executado antes do envio do CT-e para o WebService // servicoRecepcao.AntesDeEnviar += AntesEnviarLoteCte; var retornoEnvio = servicoRecepcao.CTeRecepcao(int.Parse(numeroLote), new List <CteEletronico> { cteEletronico }); OnSucessoSync(new RetornoEEnvio(retornoEnvio)); config.ConfigWebService.Numeracao++; new ConfiguracaoDao().SalvarConfiguracao(config); }
public void GerarESalvar1_0() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var mdfe = new ManifestoDocumentoFiscalEletronico.Classes.Informacoes.MDFe(); #region (ide) mdfe.InfMDFe.Ide.CUF = config.ConfigWebService.UfEmitente; mdfe.InfMDFe.Ide.TpAmb = config.ConfigWebService.Ambiente; mdfe.InfMDFe.Ide.TpEmit = MDFeTipoEmitente.PrestadorServicoDeTransporte; mdfe.InfMDFe.Ide.Mod = MDFeModelo.MDFe; mdfe.InfMDFe.Ide.Serie = 750; mdfe.InfMDFe.Ide.NMDF = ++config.ConfigWebService.Numeracao; mdfe.InfMDFe.Ide.CMDF = GetRandom(); mdfe.InfMDFe.Ide.Modal = MDFeModal.Rodoviario; mdfe.InfMDFe.Ide.DhEmi = DateTime.Now; mdfe.InfMDFe.Ide.TpEmis = MDFeTipoEmissao.Normal; mdfe.InfMDFe.Ide.ProcEmi = MDFeIdentificacaoProcessoEmissao.EmissaoComAplicativoContribuinte; mdfe.InfMDFe.Ide.VerProc = "versao28383"; mdfe.InfMDFe.Ide.UFIni = EstadoUF.GO; mdfe.InfMDFe.Ide.UFFim = EstadoUF.MT; mdfe.InfMDFe.Ide.InfMunCarrega.Add(new MDFeInfMunCarrega { CMunCarrega = "5211701", XMunCarrega = "JANDAIA" }); mdfe.InfMDFe.Ide.InfMunCarrega.Add(new MDFeInfMunCarrega { CMunCarrega = "5209952", XMunCarrega = "INDIARA" }); mdfe.InfMDFe.Ide.InfMunCarrega.Add(new MDFeInfMunCarrega { CMunCarrega = "5200134", XMunCarrega = "ACREUNA" }); #endregion (ide) #region dados emitente (emit) mdfe.InfMDFe.Emit.CNPJ = config.Empresa.Cnpj; mdfe.InfMDFe.Emit.IE = config.Empresa.InscricaoEstadual; mdfe.InfMDFe.Emit.XNome = config.Empresa.Nome; mdfe.InfMDFe.Emit.XFant = config.Empresa.NomeFantasia; mdfe.InfMDFe.Emit.EnderEmit.XLgr = config.Empresa.Logradouro; mdfe.InfMDFe.Emit.EnderEmit.Nro = config.Empresa.Numero; mdfe.InfMDFe.Emit.EnderEmit.XCpl = config.Empresa.Complemento; mdfe.InfMDFe.Emit.EnderEmit.XBairro = config.Empresa.Bairro; mdfe.InfMDFe.Emit.EnderEmit.CMun = config.Empresa.CodigoIbgeMunicipio; mdfe.InfMDFe.Emit.EnderEmit.XMun = config.Empresa.NomeMunicipio; mdfe.InfMDFe.Emit.EnderEmit.CEP = long.Parse(config.Empresa.Cep); mdfe.InfMDFe.Emit.EnderEmit.UF = config.Empresa.SiglaUf; mdfe.InfMDFe.Emit.EnderEmit.Fone = config.Empresa.Telefone; mdfe.InfMDFe.Emit.EnderEmit.Email = config.Empresa.Email; #endregion dados emitente (emit) #region modal mdfe.InfMDFe.InfModal.Modal = new MDFeRodo { RNTRC = config.Empresa.RNTRC, VeicTracao = new MDFeVeicTracao { Placa = "KKK9888", RENAVAM = "888888888", UF = EstadoUF.GO, Tara = 222, CapM3 = 222, CapKG = 22, Condutor = new List <MDFeCondutor> { new MDFeCondutor { CPF = "11392381754", XNome = "Ricardão" } }, TpRod = MDFeTpRod.Outros, TpCar = MDFeTpCar.NaoAplicavel } }; #endregion modal #region infMunDescarga mdfe.InfMDFe.InfDoc.InfMunDescarga = new List <MDFeInfMunDescarga> { new MDFeInfMunDescarga { XMunDescarga = "CUIABA", CMunDescarga = "5103403", InfCTe = new List <MDFeInfCTe> { new MDFeInfCTe { ChCTe = "52161021351378000100577500000000191194518006" } } } }; #endregion infMunDescarga #region Totais (tot) mdfe.InfMDFe.Tot.QCTe = 1; mdfe.InfMDFe.Tot.vCarga = 500.00m; mdfe.InfMDFe.Tot.CUnid = MDFeCUnid.KG; mdfe.InfMDFe.Tot.QCarga = 100.0000m; #endregion Totais (tot) #region informações adicionais (infAdic) mdfe.InfMDFe.InfAdic = new MDFeInfAdic { InfCpl = "aaaaaaaaaaaaaaaa" }; #endregion mdfe = mdfe.Assina(); mdfe = mdfe.Valida(); mdfe.SalvarXmlEmDisco(); }
public void EventoIncluirDFe() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var evento = new ServicoMDFeEvento(); MDFeEletronico mdfe; var caminhoXml = BuscarArquivoXmlMDFe(); try { var enviMDFe = MDFeEnviMDFe.LoadXmlArquivo(caminhoXml); mdfe = enviMDFe.MDFe; } catch { try { mdfe = MDFeEletronico.LoadXmlArquivo(caminhoXml); } catch { var proc = FuncoesXml.ArquivoXmlParaClasse <MDFeProcMDFe>(caminhoXml); mdfe = proc.MDFe; } } var protocolo = InputBoxTuche("Protocolo"); var codigoMunicipioCarregamento = InputBoxTuche("Código do Município de Carregamento"); var nomeMunicipioCarregamento = InputBoxTuche("Nome do Município de Carregamento"); var cmunDescarga = InputBoxTuche("Código do Município de Descarga"); var xmunDescarga = InputBoxTuche("Nome do Município de Descarga"); var chNFe = InputBoxTuche("Chave da NFe"); if (string.IsNullOrEmpty(codigoMunicipioCarregamento)) { MessageBoxTuche("Código do Município de Carregamento não pode ser vazio ou nulo"); return; } if (string.IsNullOrEmpty(nomeMunicipioCarregamento)) { MessageBoxTuche("Nome do Município de Carregamento não pode ser vazio ou nulo"); return; } if (string.IsNullOrEmpty(cmunDescarga)) { MessageBoxTuche("Nome do Município de Descarga não pode ser vazio ou nulo"); return; } if (string.IsNullOrEmpty(xmunDescarga)) { MessageBoxTuche("Nome do Município de Descarga não pode ser vazio ou nulo"); return; } if (string.IsNullOrEmpty(chNFe)) { MessageBoxTuche("Chave NFe não pode ser vazio ou nulo"); return; } var informacoesDocumentos = new List <MDFeInfDocInc> { new MDFeInfDocInc { CMunDescarga = cmunDescarga, XMunDescarga = xmunDescarga, ChNFe = chNFe } }; var retorno = evento.MDFeEventoIncluirDFe(mdfe, 1, protocolo, codigoMunicipioCarregamento, nomeMunicipioCarregamento, informacoesDocumentos); OnSucessoSync(new RetornoEEnvio(retorno)); }
public void GerarESalvar() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoesMDFe(config); var mdfe = new MDFeEletronico(); #region (ide) mdfe.InfMDFe.Ide.CUF = config.ConfigWebService.UfEmitente; mdfe.InfMDFe.Ide.TpAmb = config.ConfigWebService.Ambiente; mdfe.InfMDFe.Ide.TpEmit = MDFeTipoEmitente.PrestadorServicoDeTransporte; mdfe.InfMDFe.Ide.Mod = ModeloDocumento.MDFe; mdfe.InfMDFe.Ide.Serie = 751; mdfe.InfMDFe.Ide.NMDF = ++config.ConfigWebService.Numeracao; mdfe.InfMDFe.Ide.CMDF = GetRandom(); mdfe.InfMDFe.Ide.Modal = MDFeModal.Rodoviario; mdfe.InfMDFe.Ide.DhEmi = DateTime.Now; mdfe.InfMDFe.Ide.TpEmis = MDFeTipoEmissao.Normal; mdfe.InfMDFe.Ide.ProcEmi = MDFeIdentificacaoProcessoEmissao.EmissaoComAplicativoContribuinte; mdfe.InfMDFe.Ide.VerProc = "versao28383"; mdfe.InfMDFe.Ide.UFIni = Estado.SP; mdfe.InfMDFe.Ide.UFFim = Estado.MT; mdfe.InfMDFe.Ide.InfMunCarrega.Add(new MDFeInfMunCarrega { CMunCarrega = "5211701", XMunCarrega = "JANDAIA" }); mdfe.InfMDFe.Ide.InfMunCarrega.Add(new MDFeInfMunCarrega { CMunCarrega = "5209952", XMunCarrega = "INDIARA" }); mdfe.InfMDFe.Ide.InfMunCarrega.Add(new MDFeInfMunCarrega { CMunCarrega = "5200134", XMunCarrega = "ACREUNA" }); #endregion (ide) #region dados emitente (emit) mdfe.InfMDFe.Emit.CNPJ = config.Empresa.Cnpj; mdfe.InfMDFe.Emit.IE = config.Empresa.InscricaoEstadual; mdfe.InfMDFe.Emit.XNome = config.Empresa.Nome; mdfe.InfMDFe.Emit.XFant = config.Empresa.NomeFantasia; mdfe.InfMDFe.Emit.EnderEmit.XLgr = config.Empresa.Logradouro; mdfe.InfMDFe.Emit.EnderEmit.Nro = config.Empresa.Numero; mdfe.InfMDFe.Emit.EnderEmit.XCpl = config.Empresa.Complemento; mdfe.InfMDFe.Emit.EnderEmit.XBairro = config.Empresa.Bairro; mdfe.InfMDFe.Emit.EnderEmit.CMun = config.Empresa.CodigoIbgeMunicipio; mdfe.InfMDFe.Emit.EnderEmit.XMun = config.Empresa.NomeMunicipio; mdfe.InfMDFe.Emit.EnderEmit.CEP = long.Parse(config.Empresa.Cep); mdfe.InfMDFe.Emit.EnderEmit.UF = config.Empresa.SiglaUf; mdfe.InfMDFe.Emit.EnderEmit.Fone = config.Empresa.Telefone; mdfe.InfMDFe.Emit.EnderEmit.Email = config.Empresa.Email; #endregion dados emitente (emit) #region modal if (MDFeConfiguracao.VersaoWebService.VersaoLayout == VersaoServico.Versao100) { mdfe.InfMDFe.InfModal.VersaoModal = MDFeVersaoModal.Versao100; mdfe.InfMDFe.InfModal.Modal = new MDFeRodo { RNTRC = config.Empresa.RNTRC, VeicTracao = new MDFeVeicTracao { Placa = "KKK9888", RENAVAM = "888888888", UF = Estado.GO, Tara = 222, CapM3 = 222, CapKG = 22, Condutor = new List <MDFeCondutor> { new MDFeCondutor { CPF = "11392381754", XNome = "Ricardão" } }, TpRod = MDFeTpRod.Outros, TpCar = MDFeTpCar.NaoAplicavel } }; } if (MDFeConfiguracao.VersaoWebService.VersaoLayout == VersaoServico.Versao300) { mdfe.InfMDFe.InfModal.VersaoModal = MDFeVersaoModal.Versao300; mdfe.InfMDFe.InfModal.Modal = new MDFeRodo { infANTT = new MDFeInfANTT { RNTRC = config.Empresa.RNTRC, // não é obrigatorio infCIOT = new List <infCIOT> { new infCIOT { CIOT = "123456789123", CNPJ = "21025760000123" } }, valePed = new MDFeValePed { Disp = new List <MDFeDisp> { new MDFeDisp { CNPJForn = "21025760000123", CNPJPg = "21025760000123", NCompra = "838388383", vValePed = 100.33m } } } }, VeicTracao = new MDFeVeicTracao { Placa = "KKK9888", RENAVAM = "888888888", UF = Estado.GO, Tara = 222, CapM3 = 222, CapKG = 22, Condutor = new List <MDFeCondutor> { new MDFeCondutor { CPF = "11392381754", XNome = "Ricardão" } }, TpRod = MDFeTpRod.Outros, TpCar = MDFeTpCar.NaoAplicavel }, lacRodo = new List <MDFeLacre> { new MDFeLacre { NLacre = "lacre01" } } }; } #endregion modal #region infMunDescarga mdfe.InfMDFe.InfDoc.InfMunDescarga = new List <MDFeInfMunDescarga> { new MDFeInfMunDescarga { XMunDescarga = "CUIABA", CMunDescarga = "5103403", InfCTe = new List <MDFeInfCTe> { new MDFeInfCTe { ChCTe = "52161021351378000100577500000000191194518006" } } } }; if (MDFeConfiguracao.VersaoWebService.VersaoLayout == VersaoServico.Versao300) { mdfe.InfMDFe.InfDoc.InfMunDescarga[0].InfCTe[0].Peri = new List <MDFePeri> { new MDFePeri { NONU = "1111", QTotProd = "quantidade 20" } }; } #endregion infMunDescarga #region seg if (MDFeConfiguracao.VersaoWebService.VersaoLayout == VersaoServico.Versao300) { mdfe.InfMDFe.Seg = new List <MDFeSeg>(); mdfe.InfMDFe.Seg.Add(new MDFeSeg { InfResp = new MDFeInfResp { CNPJ = "21025760000123", RespSeg = MDFeRespSeg.EmitenteDoMDFe }, InfSeg = new MDFeInfSeg { CNPJ = "21025760000123", XSeg = "aaaaaaaaaa" }, NApol = "aaaaaaaaaa", NAver = new List <string> { "aaaaaaaa" } }); } #endregion #region Totais (tot) mdfe.InfMDFe.Tot.QCTe = 1; mdfe.InfMDFe.Tot.vCarga = 500.00m; mdfe.InfMDFe.Tot.CUnid = MDFeCUnid.KG; mdfe.InfMDFe.Tot.QCarga = 100.0000m; #endregion Totais (tot) #region informações adicionais (infAdic) mdfe.InfMDFe.InfAdic = new MDFeInfAdic { InfCpl = "aaaaaaaaaaaaaaaa" }; #endregion mdfe = mdfe.Assina(); mdfe = mdfe.Valida(); mdfe.SalvarXmlEmDisco(); }
private static async Task CriarEnviarCTeConsultaReciboAutomatico2e3() { var config = new ConfiguracaoDao().BuscarConfiguracao(); CarregarConfiguracoes(config); #region infCte var cteEletronico = new CteEletronico { infCte = new infCte { versao = config.ConfigWebService.Versao, ide = new ide { cUF = config.Empresa.SiglaUf, cCT = GetRandom(), CFOP = 5353, natOp = "PRESTAÇÃO DE SERVICO DE TRANSPORTE CT-E EXEMPLO" } } }; #endregion #region ide if (config.ConfigWebService.Versao == versao.ve200) { cteEletronico.infCte.ide.forPag = forPag.Pago; } cteEletronico.infCte.ide.mod = ModeloDocumento.CTe; cteEletronico.infCte.ide.serie = config.ConfigWebService.Serie; cteEletronico.infCte.ide.nCT = config.ConfigWebService.Numeracao; cteEletronico.infCte.ide.dhEmi = DateTime.Now; cteEletronico.infCte.ide.tpImp = tpImp.Retrado; cteEletronico.infCte.ide.tpEmis = tpEmis.teNormal; cteEletronico.infCte.ide.tpAmb = config.ConfigWebService.Ambiente; // o serviço adicionara automaticamente isso para você cteEletronico.infCte.ide.tpCTe = tpCTe.Normal; cteEletronico.infCte.ide.procEmi = procEmi.AplicativoContribuinte; cteEletronico.infCte.ide.verProc = "0.0.0.1"; cteEletronico.infCte.ide.cMunEnv = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.ide.xMunEnv = config.Empresa.NomeMunicipio; cteEletronico.infCte.ide.UFEnv = config.Empresa.SiglaUf; cteEletronico.infCte.ide.modal = modal.rodoviario; cteEletronico.infCte.ide.tpServ = tpServ.normal; cteEletronico.infCte.ide.cMunIni = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.ide.xMunIni = config.Empresa.NomeMunicipio; cteEletronico.infCte.ide.UFIni = config.Empresa.SiglaUf; cteEletronico.infCte.ide.cMunFim = config.Empresa.CodigoIbgeMunicipio; cteEletronico.infCte.ide.xMunFim = config.Empresa.NomeMunicipio; cteEletronico.infCte.ide.UFFim = config.Empresa.SiglaUf; cteEletronico.infCte.ide.retira = retira.Nao; switch (config.ConfigWebService.Versao) { case versao.ve300: cteEletronico.infCte.ide.indIEToma = indIEToma.ContribuinteIcms; cteEletronico.infCte.ide.tomaBase3 = new toma3 { toma = toma.Remetente }; break; case versao.ve200: cteEletronico.infCte.ide.tomaBase3 = new toma03 { toma = toma.Remetente }; break; } #endregion #region emit cteEletronico.infCte.emit = new emit { CNPJ = config.Empresa.Cnpj, IE = config.Empresa.InscricaoEstadual, xNome = config.Empresa.Nome, xFant = config.Empresa.NomeFantasia, enderEmit = new enderEmit { xLgr = config.Empresa.Logradouro, nro = config.Empresa.Numero, xCpl = config.Empresa.Complemento, xBairro = config.Empresa.Bairro, cMun = config.Empresa.CodigoIbgeMunicipio, xMun = config.Empresa.NomeMunicipio, CEP = long.Parse(config.Empresa.Cep), UF = config.Empresa.SiglaUf, fone = config.Empresa.Telefone } }; #endregion // Remetente , no caso adicionei os mesmos dados do emitente.. mas seriam o do remente. #region rem cteEletronico.infCte.rem = new rem { CNPJ = config.Empresa.Cnpj, IE = config.Empresa.InscricaoEstadual, xNome = config.Empresa.Nome, xFant = config.Empresa.NomeFantasia, fone = config.Empresa.Telefone, enderReme = new enderReme { xLgr = config.Empresa.Logradouro, nro = config.Empresa.Numero, xCpl = config.Empresa.Complemento, xBairro = config.Empresa.Bairro, cMun = config.Empresa.CodigoIbgeMunicipio, xMun = config.Empresa.NomeMunicipio, CEP = long.Parse(config.Empresa.Cep), UF = config.Empresa.SiglaUf } }; #endregion // Destinatário #region dest cteEletronico.infCte.dest = new dest { CNPJ = config.Empresa.Cnpj, IE = config.Empresa.InscricaoEstadual, xNome = config.Empresa.Nome, fone = config.Empresa.Telefone, enderDest = new enderDest { xLgr = config.Empresa.Logradouro, nro = config.Empresa.Numero, xCpl = config.Empresa.Complemento, xBairro = config.Empresa.Bairro, cMun = config.Empresa.CodigoIbgeMunicipio, xMun = config.Empresa.NomeMunicipio, CEP = long.Parse(config.Empresa.Cep), UF = config.Empresa.SiglaUf } }; #endregion #region vPrest cteEletronico.infCte.vPrest = new vPrest { vTPrest = 100m, vRec = 100m }; #endregion #region imp cteEletronico.infCte.imp = new imp { ICMS = new ICMS() }; var icmsSimplesNacional = new ICMSSN(); cteEletronico.infCte.imp.ICMS.TipoICMS = icmsSimplesNacional; if (config.ConfigWebService.Versao == versao.ve300) { icmsSimplesNacional.CST = CST.ICMS90; } #endregion #region infCTeNorm cteEletronico.infCte.infCTeNorm = new infCTeNorm { infCarga = new infCarga { vCarga = 1000m, proPred = "Linguiça com piqui", infQ = new List <infQ> { new infQ { cUnid = cUnid.KG, qCarga = 10000, tpMed = "quilos gramas" } } } }; cteEletronico.infCte.infCTeNorm.infDoc = new infDoc { infNFe = new List <infNFe> { new infNFe { chave = "52161021025760000123550010000087341557247948" } } }; if (config.ConfigWebService.Versao == versao.ve200) { cteEletronico.infCte.infCTeNorm.seg = new List <seg> { new seg { respSeg = respSeg.Destinatario } } } ; cteEletronico.infCte.infCTeNorm.infModal = new infModal(); switch (config.ConfigWebService.Versao) { case versao.ve200: cteEletronico.infCte.infCTeNorm.infModal.versaoModal = versaoModal.veM200; break; case versao.ve300: cteEletronico.infCte.infCTeNorm.infModal.versaoModal = versaoModal.veM300; break; } var rodoviario = new rodo { RNTRC = config.Empresa.RNTRC }; if (config.ConfigWebService.Versao == versao.ve200) { rodoviario.dPrev = DateTime.Now; rodoviario.lota = lota.Nao; } cteEletronico.infCte.infCTeNorm.infModal.ContainerModal = rodoviario; #endregion var numeroLote = RequisitarInput("Número Lote"); var servico = new ServicoEnviarCte(); var retorno = await servico.Enviar(Convert.ToInt32(numeroLote), cteEletronico); var xmlRetorno = string.Empty; if (retorno.CteProc != null) { xmlRetorno = retorno.CteProc.ObterXmlString(); } if (retorno.RetConsReciCTe.protCTe[0].infProt.cStat != 100) { xmlRetorno = retorno.RetConsReciCTe.RetornoXmlString; } OnSucessoSync(new RetornoEEnvio(retorno.RetEnviCte.EnvioXmlString, xmlRetorno)); config.ConfigWebService.Numeracao++; new ConfiguracaoDao().SalvarConfiguracao(config); }