Exemplo n.º 1
0
        protected async void btnValidarDUE_Click(object sender, EventArgs e)
        {
            if (this.txtUpload.PostedFile != null)
            {
                if (this.txtUpload.PostedFile.ContentLength > 0)
                {
                    using (StreamReader reader = new StreamReader(this.txtUpload.PostedFile.InputStream))
                    {
                        StringBuilder conteudo = new StringBuilder();
                        XmlDocument   document = new XmlDocument();
                        document.Load(reader);

                        var validarXML = new ValidarXML();
                        var retorno    = await validarXML.Validar(document);

                        foreach (var erro in retorno.Mensagens)
                        {
                            ModelState.AddModelError(string.Empty, erro);
                        }

                        ViewState["RetornoSucesso"] = retorno.Sucesso;
                        ViewState["Debug"]          = retorno.Debug;

                        document.Save(Path.Combine(Server.MapPath("Uploads"), "NOVO_" + this.txtUpload.PostedFile.FileName + "SS"));

                        var due = dueDAO.ObterDUEPorNumero(retorno.NumeroDUE);
                        if (due != null)
                        {
                            dueDAO.AtualizarXMLRetorno(due.Id, retorno.XmlRetorno);
                            SalvarTXT(due.DUE, conteudo);
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        private async System.Threading.Tasks.Task ValidarXMLAsync(int id)
        {
            var arquivo = new GerarXML();

            arquivo.DUEId = id;
            arquivo.Validar(ModelState);
            if (!ModelState.IsValid)
            {
                return;
            }
            arquivo.Gerar();
            var validarXML = new ValidarXML();

            var         xml          = dueDAO.ObterUltimoXMLGerado(arquivo.DUEId);
            XmlDocument documentoXML = new XmlDocument();

            documentoXML.LoadXml(xml);

            var retorno = await validarXML.Validar(documentoXML);

            ViewState["RetornoSucesso"] = retorno.Sucesso;

            dueDAO.AtualizarXMLRetorno(id, retorno.XmlRetorno);

            alertaValidacao.Visible = retorno.Sucesso;

            if (retorno.Mensagens.Count > 0 & retorno.XmlRetorno != null)
            {
                alertaValidacao.Visible     = true;
                ViewState["RetornoSucesso"] = null;
            }

            if (!retorno.Sucesso & retorno.XmlRetorno == null)
            {
                foreach (var erro in retorno.Mensagens)
                {
                    ModelState.AddModelError(string.Empty, erro);
                }
            }
            else if (!retorno.Sucesso & retorno.XmlRetorno != null)
            {
                //Response.Redirect("ArquivoXML.aspx?id=" + id + "&dest=SALVAR&tipo=RETORNO", false);
                StringBuilder conteudo = new StringBuilder();
                foreach (var erro in retorno.Mensagens)
                {
                    conteudo.AppendLine(erro);
                }

                SalvarTXT(arquivo.DUE.DUE, conteudo);
            }
        }