Exemple #1
0
        private string BuscarChaveMDFe()
        {
            var chave             = string.Empty;
            var caminhoArquivoXml = BuscarArquivoXmlMDFe();

            if (caminhoArquivoXml != null)
            {
                try
                {
                    var enviMDFe = MDFeEnviMDFe.LoadXmlArquivo(caminhoArquivoXml);

                    chave = enviMDFe.MDFe.Chave();
                }
                catch
                {
                    try
                    {
                        chave = MDFeEletronico.LoadXmlArquivo(caminhoArquivoXml).Chave();
                    }
                    catch
                    {
                        var proc = FuncoesXml.ArquivoXmlParaClasse <MDFeProcMDFe>(caminhoArquivoXml);
                        chave = proc.MDFe.Chave();
                    }
                }
            }
            return(chave);
        }
Exemple #2
0
        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));
        }
Exemple #3
0
        public static XmlDocument CriaXmlRequestWs(this MDFeEnviMDFe enviMDFe)
        {
            var dadosEnvio = new XmlDocument();

            dadosEnvio.LoadXml(enviMDFe.XmlString());

            return(dadosEnvio);
        }
Exemple #4
0
        public static MDFeRetEnviMDFe LoadXml(string xml, MDFeEnviMDFe enviMDFe)
        {
            var retorno = LoadXml(xml);

            retorno.EnvioXmlString  = FuncoesXml.ClasseParaXmlString(enviMDFe.MDFe);
            retorno.RetornoCompleto = FuncoesXml.ClasseParaXmlString(enviMDFe);

            return(retorno);
        }
Exemple #5
0
        protected virtual void OnAntesDeEnviar(MDFeEnviMDFe enviMdfe)
        {
            var handler = AntesDeEnviar;

            if (handler != null)
            {
                handler(this, new AntesDeEnviar(enviMdfe));
            }
        }
Exemple #6
0
        public static MDFeEnviMDFe CriaEnviMDFe(long lote, MDFeEletronico mdfe)
        {
            var enviMdfe = new MDFeEnviMDFe
            {
                MDFe   = mdfe,
                IdLote = lote.ToString(),
                Versao = VersaoServico.Versao100
            };

            return(enviMdfe);
        }
        public static MDFeEnviMDFe CriaEnviMDFe(long lote, MDFeEletronico mdfe)
        {
            var enviMdfe = new MDFeEnviMDFe
            {
                MDFe   = mdfe,
                IdLote = lote.ToString(),
                Versao = MDFeConfiguracao.VersaoWebService.VersaoLayout
            };

            return(enviMdfe);
        }
Exemple #8
0
        public static void Valida(this MDFeEnviMDFe enviMDFe)
        {
            if (enviMDFe == null)
            {
                throw new ArgumentException("Erro de assinatura, EnviMDFe esta null");
            }

            var xmlMdfe = FuncoesXml.ClasseParaXmlString(enviMDFe);

            Validador.Valida(xmlMdfe, "enviMDFe_v1.00.xsd");

            enviMDFe.MDFe.Valida();
        }
Exemple #9
0
        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));
        }
Exemple #10
0
        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));
        }
Exemple #11
0
        public static void SalvarXmlEmDisco(this MDFeEnviMDFe enviMDFe)
        {
            if (MDFeConfiguracao.NaoSalvarXml())
            {
                return;
            }

            var caminhoXml = MDFeConfiguracao.CaminhoSalvarXml;

            var arquivoSalvar = caminhoXml + @"\" + enviMDFe.MDFe.Chave() + "-completo-mdfe.xml";

            FuncoesXml.ClasseParaArquivoXml(enviMDFe, arquivoSalvar);

            enviMDFe.MDFe.SalvarXmlEmDisco();
        }
Exemple #12
0
        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 static void Valida(this MDFeEnviMDFe enviMDFe)
        {
            if (enviMDFe == null)
            {
                throw new ArgumentException("Erro de assinatura, EnviMDFe esta null");
            }

            var xmlMdfe = FuncoesXml.ClasseParaXmlString(enviMDFe);

            switch (MDFeConfiguracao.VersaoWebService.VersaoLayout)
            {
            case VersaoServico.Versao100:
                Validador.Valida(xmlMdfe, "enviMDFe_v1.00.xsd");
                break;

            case VersaoServico.Versao300:
                Validador.Valida(xmlMdfe, "enviMDFe_v3.00.xsd");
                break;
            }

            enviMDFe.MDFe.Valida();
        }
Exemple #14
0
        private string BuscarChaveMDFe()
        {
            var chave             = string.Empty;
            var caminhoArquivoXml = BuscarArquivoXmlMDFe();

            if (caminhoArquivoXml != null)
            {
                if (caminhoArquivoXml.Contains("completo"))
                {
                    var enviMDFe = MDFeEnviMDFe.LoadXmlArquivo(caminhoArquivoXml);

                    chave = enviMDFe.MDFe.Chave();
                }
                else
                {
                    var mdfe = MDFeEletronico.LoadXmlArquivo(caminhoArquivoXml);

                    chave = mdfe.Chave();
                }
            }
            return(chave);
        }
Exemple #15
0
        public static string XmlString(this MDFeEnviMDFe enviMDFe)
        {
            var xmlString = FuncoesXml.ClasseParaXmlString(enviMDFe);

            return(xmlString);
        }
Exemple #16
0
 public AntesDeEnviar(MDFeEnviMDFe enviMdfe)
 {
     _enviMdFe = enviMdfe;
 }
Exemple #17
0
        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));
        }