/// <summary> /// Impostazione dell'url del webservice /// </summary> /// <param name="module"></param> /// <param name="serviceInstance"></param> private static void SetServiceInstanceUrl(string module, System.Web.Services.Protocols.SoapHttpClientProtocol serviceInstance) { string httpBindingClassName = serviceInstance.GetType().Name; string serviceName = httpBindingClassName.Remove(httpBindingClassName.IndexOf("SOAPHTTPBinding")); serviceInstance.Url = string.Concat(OCSConfigurations.GetServiceUrl(), string.Format("{0}/{1}SOAPHTTPPort", module, serviceName)); }
public static string RetornarDescricaoEnum <T>(this System.Web.Services.Protocols.SoapHttpClientProtocol valor, T enumerador) { return(valor.RetornarDadosEnum <T>() .Where(w => w.Valor.Equals(enumerador)) .FirstOrDefault() .Descricao); }
/// <summary> /// Sets the KMD web service url to the correct value based on the database object and the service name /// </summary> /// <param name="service">Web service proxy object</param> /// <param name="serviceType">Type of service</param> private void SetServiceUrl(System.Web.Services.Protocols.SoapHttpClientProtocol service, ServiceTypes serviceType) { string query = string.Format("?zservice={0}", serviceType); string url = Address.Split(new char[] { '?' }, StringSplitOptions.RemoveEmptyEntries)[0]; url += query; service.Url = url; }
public static void SetBaseWebReference(System.Web.Services.Protocols.SoapHttpClientProtocol objservice) { string baseUrl = CommonData.GetInstance().GetWebReferenceUrl(); //MessageBox.Show(baseUrl); //MessageBox.Show(System.IO.Directory.GetCurrentDirectory()); objservice.Url = baseUrl + objservice.Url.Substring(objservice.Url.LastIndexOf('/')); //MessageBox.Show(objservice.Url); }
public static sDadosEnum[] RetornarDadosEnum <T>(this System.Web.Services.Protocols.SoapHttpClientProtocol valor) { Assembly assembly = valor.GetType().Assembly; Type type = assembly.GetType(valor.GetType().FullName); object activator = Activator.CreateInstance(type); List <object> parametros = new List <object>(); parametros.Add(typeof(T).Name); var listaRetono1 = type.InvokeMember( "RetornarDadosEnum", BindingFlags.InvokeMethod | BindingFlags.Instance | BindingFlags.Public, null, activator, parametros.ToArray()); IEnumerable <string> listaRetono = listaRetono1 as IEnumerable <string>; if (listaRetono.Count().Equals(0)) { return(null); } else { var listaEnum = Enum.GetValues(typeof(T)) .OfType <Enum>() .Select(s => new { Item = s, ItemString = s.ToString() }); var listaDadorEnum = listaRetono .Select(s => s.Split(new string[] { FGlobus.Util.Constantes.CARACTER_SEPARACAO }, StringSplitOptions.None)) .Select(s => new { ItemString = s.FirstOrDefault(), Descricao = s.LastOrDefault() }); IEnumerable <sDadosEnum> listaDadosEnum = (from a in listaEnum join b in listaDadorEnum on a.ItemString equals b.ItemString into join_b from b in join_b.DefaultIfEmpty() select new sDadosEnum() { Descricao = b == null ? a.Item.ToString() : b.Descricao, Valor = a.Item }); return(listaDadosEnum .ToArray()); } }
/// <summary> /// Set the URL of the web service. This is how you point the service to a specific server. /// </summary> private string SetSvcUrl(System.Web.Services.Protocols.SoapHttpClientProtocol svc) { UriBuilder url = new UriBuilder(svc.Url); url.Host = m_loginInfo.Server; if (m_loginInfo.Port != 0) { url.Port = m_loginInfo.Port; } if (m_loginInfo.SSL) { url.Scheme = "https"; } svc.Url = url.Uri.ToString(); return(svc.Url); }
private static void ReplaceServiceUrl(System.Web.Services.Protocols.SoapHttpClientProtocol service, SystemType systemType) { Uri uri = new Uri(service.Url); string hostAndPort = uri.Host; if (!uri.IsDefaultPort) { hostAndPort += ":" + uri.Port; } string url = uri.ToString(); if (systemType == SystemType.CprBroker) { url = url.Replace(hostAndPort, "localhost:1551"); } else { url = url.Replace(hostAndPort, "localhost:1552"); } service.Url = url; }
public static void SetBaseWebReference(string referenceType, System.Web.Services.Protocols.SoapHttpClientProtocol objservice) { string baseUrl = CommonData.GetInstance().GetWebReferenceUrl(referenceType); objservice.Url = baseUrl + objservice.Url.Substring(objservice.Url.LastIndexOf('/')); }
private void ExecutarEnviaArquivo() { try { if (pnlArquivo.Controls?.Cast <CheckBox>().Where(_check => _check.Checked)?.ToList().Any() ?? false) { Custom = false; gpbArquivos.Visible = false; btnSel.Visible = false; btnDes.Visible = false; gpbEnviados.Visible = true; btnVoltar.Visible = true; pnlArquivo.Controls?.Cast <CheckBox>().Where(_check => _check.Checked)?.ToList().ForEach(_check => { TreeNode _nodeCheck = new TreeNode(_check.Text); int _contador = 0; while (true) { _contador++; string _url = "https://www.irko.com.br/csp/prgtrb/esocial/retornoXML.csp?CODEMP=" + GetDesktop().GetEmpresa().Codigo.ToString(); _url += "&NOMEVT=" + ((SCI.ESocial.IRKO.TipoEvento)_check.Tag).Codigo; _url += "&GUID=" + Guid; XmlDocument _xml = new XmlDocument(); _xml.Load(_url); if (_xml.DocumentElement.Name == "Fim") { break; } if (_xml.DocumentElement.Name == "Falha") { MessageBox.Show(_xml.DocumentElement.InnerText); break; } XmlElement _xmlEsocial = _xml.DocumentElement; string _cnpj = _xmlEsocial.GetElementsByTagName("ideTransmissor").Cast <XmlElement>().FirstOrDefault() .GetElementsByTagName("nrInsc").Cast <XmlElement>().FirstOrDefault().InnerText; XmlNode _ideTransmissor = _xmlEsocial.GetElementsByTagName("ideTransmissor").Cast <XmlNode>().FirstOrDefault(); _xmlEsocial.RemoveChild(_ideTransmissor); string _protocoEnvio = _xmlEsocial.GetElementsByTagName("protocoloEnvio").Cast <XmlElement>().FirstOrDefault().InnerText; string _tpAmb = _protocoEnvio.Split('.')[1]; Resultado <System.Web.Services.Protocols.SoapHttpClientProtocol> _resultado = GetWrAssinado(_cnpj, (tpAmb)int.Parse(_tpAmb)); if (_resultado.Sucesso) { XmlElement _retorno = null; System.Web.Services.Protocols.SoapHttpClientProtocol _wrESocialConsultar = _resultado.Retorno; try { System.Net.ServicePointManager.ServerCertificateValidationCallback += delegate( object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors sslPolicyErrors) { if (sslPolicyErrors == SslPolicyErrors.None) { return(true); } if (cert.GetCertHashString() == "F947B2BF566DF881A4F52CDDB436BE522CB48A3F") { return(true); } return(false); }; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; if ((tpAmb)int.Parse(_tpAmb) == tpAmb.Producão) { _retorno = ((SCI.ESocial.Producao.Retorno.ServicoConsultarLoteEventos)_wrESocialConsultar).ConsultarLoteEventos(_xmlEsocial); } else { _retorno = ((SCI.ESocial.ProducaoRestrita.Retorno.ServicoConsultarLoteEventos)_wrESocialConsultar).ConsultarLoteEventos(_xmlEsocial); } } #pragma warning disable CS0168 // A variável foi declarada, mas nunca foi usada catch (Exception ex) #pragma warning restore CS0168 // A variável foi declarada, mas nunca foi usada { continue; } TreeNode _node = new TreeNode("Protocolo:" + _protocoEnvio); XmlElement _status = _retorno.GetElementsByTagName("status").Cast <XmlElement>().FirstOrDefault(); if (_status.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText == "201") { if (GravarRetorno(_retorno, "")) { XmlNodeList _eventos = _retorno.GetElementsByTagName("evento"); _eventos.Cast <XmlElement>().ToList().ForEach(_evento => { TreeNode _nodeId = new TreeNode(_evento.Attributes["Id"].Value); XmlElement _processamento = _evento.GetElementsByTagName("processamento").Cast <XmlElement>().FirstOrDefault(); _nodeId.Nodes.AddRange(new TreeNode[] { new TreeNode("Código: " + _processamento.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Descrição: " + _processamento.GetElementsByTagName("descResposta").Cast <XmlElement>().FirstOrDefault().InnerText) }); int _cttOcor = 0; XmlNodeList _ocorrencias = _processamento.GetElementsByTagName("ocorrencia"); _ocorrencias.Cast <XmlElement>().ToList().ForEach(_ocorrencia => { _cttOcor++; TreeNode _nodeOcor = new TreeNode("Ocorrencia " + _cttOcor); _nodeOcor.Nodes.AddRange(new TreeNode[] { new TreeNode("Tipo: " + _ocorrencia.GetElementsByTagName("tipo").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Código: " + _ocorrencia.GetElementsByTagName("codigo").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Descrição: " + _ocorrencia.GetElementsByTagName("descricao").Cast <XmlElement>().FirstOrDefault().InnerText) }); _nodeId.Nodes.Add(_nodeOcor); }); _node.Nodes.Add(_nodeId); }); } else { break; } } else if (_status.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText == "501") { if (GravarRetorno(_retorno, _protocoEnvio)) { _node.Nodes.AddRange(new TreeNode[] { new TreeNode("Código :" + _status.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Descrição:" + _status.GetElementsByTagName("descResposta").Cast <XmlElement>().FirstOrDefault().InnerText) }); int _cttOcor = 0; XmlNodeList _ocorrencias = _status.GetElementsByTagName("ocorrencia"); _ocorrencias.Cast <XmlElement>().ToList().ForEach(_ocorrencia => { _cttOcor++; TreeNode _nodeOcor = new TreeNode("Ocorrencia " + _cttOcor); _nodeOcor.Nodes.AddRange(new TreeNode[] { new TreeNode("Tipo: " + _ocorrencia.GetElementsByTagName("tipo").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Código: " + _ocorrencia.GetElementsByTagName("codigo").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Descrição: " + _ocorrencia.GetElementsByTagName("descricao").Cast <XmlElement>().FirstOrDefault().InnerText) }); _node.Nodes.Add(_nodeOcor); }); } else { break; } } else if (_status.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText == "69") { if (GravarRetorno(_retorno, _protocoEnvio)) { _node.Nodes.AddRange(new TreeNode[] { new TreeNode("Código :" + _status.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Descrição:" + _status.GetElementsByTagName("descResposta").Cast <XmlElement>().FirstOrDefault().InnerText) }); _nodeCheck.Nodes.Add(_node); break; } } else { String _textoDescricão = _status.GetElementsByTagName("descResposta").Cast <XmlElement>().FirstOrDefault().InnerText; String[] _palavras = _textoDescricão.Split(' '); if (_palavras.Length > 15) { string _NovotextoDescricão = ""; for (int i = 0; i < _palavras.Length; i++) { if ((i % 15 == 0) && (i != 0)) { _NovotextoDescricão = _NovotextoDescricão + " " + _palavras[i]; _node.Nodes.AddRange(new TreeNode[] { new TreeNode(_NovotextoDescricão) }); _NovotextoDescricão = ""; } else { _NovotextoDescricão = _NovotextoDescricão + " " + _palavras[i]; } } if (_NovotextoDescricão != "") { _node.Nodes.AddRange(new TreeNode[] { new TreeNode(_NovotextoDescricão) }); } _nodeCheck.Nodes.Add(_node); break; } else { _node.Nodes.AddRange(new TreeNode[] { new TreeNode("Código :" + _status.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode("Descrição:" + _textoDescricão) }); _nodeCheck.Nodes.Add(_node); break; } } _nodeCheck.Nodes.Add(_node); } else { MessageBox.Show(_resultado.Mensagem); break; } } trvEnviado.Nodes.Add(_nodeCheck); }); trvEnviado.ExpandAll(); } else { MessageBox.Show("Nenhum arquivo selecionado para envio."); } } catch (Exception _ex) { MessageBox.Show(_ex.Message); } GetDesktop().HideLoading(); }
private void ExecutarEnviaArquivo() { Custom = false; gpbArquivos.Visible = false; btnSel.Visible = false; btnDes.Visible = false; gpbEnviados.Visible = true; btnVoltar.Visible = true; btnEnviar.Visible = false; try { pnlArquivo.Controls?.Cast <CheckBox>().Where(_check => _check.Checked)?.ToList().ForEach(_check => { Model.Report.DCTF.RetornoREINF.RetornoEvento _retornoEvento = new Model.Report.DCTF.RetornoREINF.RetornoEvento { Descricao = _check.Text }; TreeNode _nodeCheck = new TreeNode(_check.Text); int _contador = 0; string _url; if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo == "R-5011") { _url = "https://www.irko.com.br/csp/prgdcn/reinf/retornoXML.csp?"; _url += "CODEMP=" + GetDesktop().GetEmpresa().Codigo.ToString(); _url += "&GUID=" + Guid; } else { _url = "https://www.irko.com.br/csp/prgdcn/reinf/arquivoXML.csp?"; _url += "CODEMP=" + GetDesktop().GetEmpresa().Codigo.ToString(); _url += "&NOMREG=" + ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo; _url += "&GUID=" + Guid; } XmlDocument _xml = new XmlDocument { PreserveWhitespace = false }; _xml.Load(_url); if (_xml.DocumentElement.Name == "Fim" || _xml.DocumentElement.Name == "Falha") { } else { XmlNode _xmlReinf = _xml.DocumentElement; string _cnpjTransmissao = "07074083000102"; string _cnpjContr = string.Empty; var resultadoCNPJ = wrReinf.RecuperaCNPJCPFCertificado(Guid); if (resultadoCNPJ.Sucesso) { _cnpjContr = resultadoCNPJ.RetornoResultadoRecuperaCNPJCPFCertificado; } if (String.IsNullOrEmpty(_cnpjContr)) { _cnpjContr = _xml.DocumentElement.GetElementsByTagName("ideContri")?.Cast <XmlElement>() .FirstOrDefault()?.GetElementsByTagName("nrInsc")?.Cast <XmlElement>().FirstOrDefault()?.InnerText; } String _tpAmb = _xml.DocumentElement.GetElementsByTagName("tpAmb")?.Cast <XmlElement>()? .FirstOrDefault()?.InnerText; _cnpjTransmissao = _cnpjContr; var _xmlElements = _xml.GetElementsByTagName("loteEventos").Cast <XmlElement>().FirstOrDefault(); List <string> _listaId = _xmlElements?.Cast <XmlNode>().Where(_node => _node.Name == "evento")? .Select(_id => _id.Attributes["id"].Value)?.ToList(); Resultado _resultadoAssinar = new Resultado(); _resultadoAssinar.Sucesso = true; if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo != "R-5011") { _resultadoAssinar = AssinarXML(ref _xml, _cnpjContr); } if (_resultadoAssinar.Sucesso) { XmlNode _retorno = null; SCI.Base.Resultado <System.Web.Services.Protocols.SoapHttpClientProtocol> _resultado = GetWrAssinado(_cnpjTransmissao, ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo, _tpAmb); if (_resultado.Sucesso) { System.Web.Services.Protocols.SoapHttpClientProtocol _wrAssinado = _resultado.Retorno; try { System.Net.ServicePointManager.ServerCertificateValidationCallback += delegate( object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors sslPolicyErrors) { if (sslPolicyErrors == SslPolicyErrors.None) { return(true); } return(false); }; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo == "R-5011") { XmlNodeList xnList = _xmlReinf.SelectNodes("/ConsultaInformacoesConsolidadas"); byte _tipoInscricaoContribuinte = Convert.ToByte(xnList.Item(0).ChildNodes.Item(0).InnerText); string _numeroInscricaoContribuinte = xnList.Item(0).ChildNodes.Item(1).InnerText; string _numeroProtocoloFechamento = xnList.Item(0).ChildNodes.Item(2).InnerText; if (_tpAmb == "1") { _retorno = ((Reinf.Producao.Retorno.ConsultasReinf)_wrAssinado).ConsultaInformacoesConsolidadas(_tipoInscricaoContribuinte, _numeroInscricaoContribuinte, _numeroProtocoloFechamento); } else { _retorno = ((Reinf.ProducaoRestrita.Retorno.ConsultasReinf)_wrAssinado).ConsultaInformacoesConsolidadas(_tipoInscricaoContribuinte, _numeroInscricaoContribuinte, _numeroProtocoloFechamento); } } else { if (_tpAmb == "1") { _retorno = ((Reinf.Producao.Envio.RecepcaoLoteReinf)_wrAssinado).ReceberLoteEventos(_xmlReinf); } else { _retorno = ((Reinf.ProducaoRestrita.Envio.RecepcaoLoteReinf)_wrAssinado).ReceberLoteEventos(_xmlReinf); } } XmlDocument _docRetorno = new XmlDocument(); _docRetorno.LoadXml(_retorno.OuterXml); XmlElement _retornoElement = _docRetorno.DocumentElement; Reinf.Irko.ResultadoGravarRetornoEvento _retornoWR = GravarEnvio(_retorno, _listaId, _cnpjTransmissao, ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo); if (_retornoWR.Sucesso) { if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo == "R-5011") { if (_retornoWR.RetornoRetornoTotEvt10300 != null) { Reinf.Irko.evtTotalContrib _retornoLoteEventos = _retornoWR.RetornoRetornoTotEvt10300.evtTotalContrib; _contador++; TreeNode _nodeArquivo = new TreeNode("Arquivo " + _contador.ToString()); TreeNode _nodeStatus = new TreeNode(_retornoLoteEventos.ideRecRetorno.ideStatus.descRetorno); TreeNode _nodeId = new TreeNode(_retornoLoteEventos.id); _retornoLoteEventos.ideRecRetorno.ideStatus.regOcorrs?.ToList().ForEach(_ocorr => { TreeNode _nodeTpOcorr = new TreeNode(_ocorr.tpOcorr.ToString()); _nodeId.Nodes.Add(_nodeTpOcorr); TreeNode _nodeCodResp = new TreeNode(_ocorr.codResp); _nodeId.Nodes.Add(_nodeCodResp); TreeNode _nodeDscResp = new TreeNode(_ocorr.dscResp); _nodeId.Nodes.Add(_nodeDscResp); }); _nodeStatus.Nodes.Add(_nodeId); _nodeArquivo.Nodes.Add(_nodeStatus); _nodeCheck.Nodes.Add(_nodeArquivo); } else { Reinf.Irko.evtTotalContrib1 _retornoLoteEventos = _retornoWR.RetornoRetornoTotEvt10400.evtTotalContrib; _contador++; TreeNode _nodeArquivo = new TreeNode("Arquivo " + _contador.ToString()); TreeNode _nodeStatus = new TreeNode(_retornoLoteEventos.ideRecRetorno.ideStatus.descRetorno); TreeNode _nodeId = new TreeNode(_retornoLoteEventos.id); _retornoLoteEventos.ideRecRetorno.ideStatus.regOcorrs?.ToList().ForEach(_ocorr => { TreeNode _nodeTpOcorr = new TreeNode(_ocorr.tpOcorr.ToString()); _nodeId.Nodes.Add(_nodeTpOcorr); TreeNode _nodeCodResp = new TreeNode(_ocorr.codResp); _nodeId.Nodes.Add(_nodeCodResp); TreeNode _nodeDscResp = new TreeNode(_ocorr.dscResp); _nodeId.Nodes.Add(_nodeDscResp); }); _nodeStatus.Nodes.Add(_nodeId); _nodeArquivo.Nodes.Add(_nodeStatus); _nodeCheck.Nodes.Add(_nodeArquivo); } } else { if (_retornoWR.RetornoRetornoLote10300 != null) { Reinf.Irko.retornoLoteEventos _retornoLoteEventos = _retornoWR.RetornoRetornoLote10300.retornoLoteEventos; _contador++; TreeNode _nodeArquivo = new TreeNode("Arquivo " + _contador.ToString()); TreeNode _nodeStatus = new TreeNode(_retornoLoteEventos.status.descRetorno); _retornoLoteEventos.retornoEventos?.ToList().ForEach(_evento => { TreeNode _nodeId = new TreeNode(_evento.id); TreeNode _nodeStatusId = new TreeNode(_evento.Reinf.evtTotal.ideRecRetorno.ideStatus.descRetorno); _evento.Reinf.evtTotal.ideRecRetorno.ideStatus.regOcorrs?.ToList().ForEach(_ocorr => { TreeNode _nodeTpOcorr = new TreeNode(_ocorr.tpOcorr.ToString()); _nodeStatusId.Nodes.Add(_nodeTpOcorr); TreeNode _nodeCodResp = new TreeNode(_ocorr.codResp); _nodeStatusId.Nodes.Add(_nodeCodResp); TreeNode _nodeDscResp = new TreeNode(_ocorr.dscResp); _nodeStatusId.Nodes.Add(_nodeDscResp); }); _nodeId.Nodes.Add(_nodeStatusId); _nodeStatus.Nodes.Add(_nodeId); }); _retornoLoteEventos.status.dadosRegistroOcorrenciaLote?.ToList().ForEach(_evento => { TreeNode _nodeCodigo = new TreeNode(_evento.codigo); TreeNode _nodeDescricao = new TreeNode(_evento.descricao); _nodeCodigo.Nodes.Add(_nodeDescricao); _nodeStatus.Nodes.Add(_nodeCodigo); }); _nodeArquivo.Nodes.Add(_nodeStatus); _nodeCheck.Nodes.Add(_nodeArquivo); } else { Reinf.Irko.retornoLoteEventos1 _retornoLoteEventos = _retornoWR.RetornoRetornoLote10400.retornoLoteEventos; _contador++; TreeNode _nodeArquivo = new TreeNode("Arquivo " + _contador.ToString()); TreeNode _nodeStatus = new TreeNode(_retornoLoteEventos.status.descRetorno); _retornoLoteEventos.retornoEventos?.ToList().ForEach(_evento => { TreeNode _nodeId = new TreeNode(_evento.id); TreeNode _nodeStatusId = new TreeNode(_evento.Reinf.evtTotal.ideRecRetorno.ideStatus.descRetorno); _evento.Reinf.evtTotal.ideRecRetorno.ideStatus.regOcorrs?.ToList().ForEach(_ocorr => { TreeNode _nodeTpOcorr = new TreeNode(_ocorr.tpOcorr.ToString()); _nodeStatusId.Nodes.Add(_nodeTpOcorr); TreeNode _nodeCodResp = new TreeNode(_ocorr.codResp); _nodeStatusId.Nodes.Add(_nodeCodResp); TreeNode _nodeDscResp = new TreeNode(_ocorr.dscResp); _nodeStatusId.Nodes.Add(_nodeDscResp); }); _nodeId.Nodes.Add(_nodeStatusId); _nodeStatus.Nodes.Add(_nodeId); }); _retornoLoteEventos.status.dadosRegistroOcorrenciaLote?.ToList().ForEach(_evento => { TreeNode _nodeCodigo = new TreeNode(_evento.codigo); TreeNode _nodeDescricao = new TreeNode(_evento.descricao); _nodeCodigo.Nodes.Add(_nodeDescricao); _nodeStatus.Nodes.Add(_nodeCodigo); }); _nodeArquivo.Nodes.Add(_nodeStatus); _nodeCheck.Nodes.Add(_nodeArquivo); } /*Reinf.Irko.retornoLoteEventos1 _retornoLoteEventos = _retornoWR.RetornoRetornoLote10400.retornoLoteEventos; * _contador++; * * TreeNode _nodeArquivo = new TreeNode("Arquivo " + _contador.ToString()); * * TreeNode _nodeStatus = new TreeNode(_retornoLoteEventos.status.descRetorno); * * _retornoLoteEventos.retornoEventos.ToList().ForEach(_evento => * { * TreeNode _nodeId = new TreeNode(_evento.id); * * TreeNode _nodeStatusId = new TreeNode(_evento.Reinf.evtTotal.ideRecRetorno.ideStatus.descRetorno); * _evento.Reinf.evtTotal.ideRecRetorno.ideStatus.regOcorrs?.ToList().ForEach(_ocorr => * { * TreeNode _nodeTpOcorr = new TreeNode(_ocorr.tpOcorr.ToString()); * _nodeStatusId.Nodes.Add(_nodeTpOcorr); * TreeNode _nodeCodResp = new TreeNode(_ocorr.codResp); * _nodeStatusId.Nodes.Add(_nodeCodResp); * TreeNode _nodeDscResp = new TreeNode(_ocorr.dscResp); * _nodeStatusId.Nodes.Add(_nodeDscResp); * }); * * _nodeId.Nodes.Add(_nodeStatusId); * _nodeStatus.Nodes.Add(_nodeId); * }); * * _nodeArquivo.Nodes.Add(_nodeStatus); * _nodeCheck.Nodes.Add(_nodeArquivo);*/ } } else { MessageBox.Show(_retornoWR.Mensagem); } } #pragma warning disable CS0168 // A variável foi declarada, mas nunca foi usada catch (Exception ex) #pragma warning restore CS0168 // A variável foi declarada, mas nunca foi usada { MessageBox.Show(ex.Message); return; } } //_retornReinf.Eventos.Add(_retornoEvento); trvEnviado.Nodes.Add(_nodeCheck); } else { MessageBox.Show(_resultadoAssinar.Mensagem); } } }); } catch (Exception _ex) { MessageBox.Show(_ex.Message); } }
private void ExecutarEnviaArquivo() { try { if (pnlArquivo.Controls?.Cast <CheckBox>().Where(_check => _check.Checked)?.ToList().Any() ?? false) { Custom = false; gpbArquivos.Visible = false; btnSel.Visible = false; btnDes.Visible = false; gpbEnviados.Visible = true; btnVoltar.Visible = true; pnlArquivo.Controls?.Cast <CheckBox>().Where(_check => _check.Checked)?.ToList().ForEach(_check => { TreeNode _nodeCheck = new TreeNode(_check.Text); int _contador = 0; while (true) { string _url = "https://www.irko.com.br/csp/prgdcn/esocial/arquivoXML.csp?CODEMP=" + GetDesktop().GetEmpresa().Codigo.ToString(); _url += "&NOMEVT=" + ((SCI.ESocial.IRKO.DCTF.TipoEvento)_check.Tag).Codigo; _url += "&GUID=" + Guid; XmlDocument _xml = new XmlDocument { PreserveWhitespace = false }; _xml.Load(_url); if (_xml.DocumentElement.Name == "Fim") { break; } if (_xml.DocumentElement.Name == "Falha") { MessageBox.Show(_xml.DocumentElement.InnerText); break; } XmlElement _xmlEsocial = _xml.DocumentElement; string _cnpjTransmissao = _xmlEsocial.GetElementsByTagName("ideTransmissor").Cast <XmlElement>().FirstOrDefault() .GetElementsByTagName("nrInsc").Cast <XmlElement>().FirstOrDefault().InnerText; string _cnpjEmpregador = _xmlEsocial.GetElementsByTagName("ideEmpregador").Cast <XmlElement>().FirstOrDefault() .GetElementsByTagName("nrInsc").Cast <XmlElement>().FirstOrDefault().InnerText; Resultado _resultadoAssinar = AssinarXML(ref _xml, _cnpjTransmissao); XmlNodeList _xmlData = _xml.GetElementsByTagName("evento"); List <string> _listaId = _xmlData.Cast <XmlNode>().Where(_id => _id.Name == "evento") .Select(_id => _id.Attributes["Id"].Value).ToList(); XmlElement _retorno = null; string _tpAmb = _xmlEsocial.GetElementsByTagName("evento").Cast <XmlElement>().FirstOrDefault() .GetElementsByTagName("ideEvento").Cast <XmlElement>().FirstOrDefault() .GetElementsByTagName("tpAmb").Cast <XmlElement>().FirstOrDefault().InnerText; SCI.Base.Resultado <System.Web.Services.Protocols.SoapHttpClientProtocol> _resultado = GetWrAssinado(_cnpjTransmissao, (TpAmb)int.Parse(_tpAmb)); if (_resultado.Sucesso) { System.Web.Services.Protocols.SoapHttpClientProtocol _wrAssinado = _resultado.Retorno; try { System.Net.ServicePointManager.ServerCertificateValidationCallback += delegate( object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors sslPolicyErrors) { if (sslPolicyErrors == SslPolicyErrors.None) { return(true); } if (cert.GetCertHashString() == "F947B2BF566DF881A4F52CDDB436BE522CB48A3F") { return(true); } return(false); }; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; if ((TpAmb)int.Parse(_tpAmb) == TpAmb.Producão) { _retorno = ((SCI.ESocial.Producao.Envio.ServicoEnviarLoteEventos)_wrAssinado).EnviarLoteEventos(_xmlEsocial); } else { _retorno = ((SCI.ESocial.ProducaoRestrita.Envio.ServicoEnviarLoteEventos)_wrAssinado).EnviarLoteEventos(_xmlEsocial); } } catch (Exception ex) { MessageBox.Show(ex.Message); break; } if (_retorno.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText == "301") { TreeNode _node = new TreeNode("Código de Resposta: " + _retorno.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText); String _textoDescricão = _retorno.GetElementsByTagName("descResposta").Cast <XmlElement>().FirstOrDefault().InnerText; String[] _palavras = _textoDescricão.Split(' '); if (_palavras.Length > 15) { string _NovotextoDescricão = ""; for (int i = 0; i < _palavras.Length; i++) { if ((i % 15 == 0) && (i != 0)) { _NovotextoDescricão = _NovotextoDescricão + " " + _palavras[i]; _node.Nodes.AddRange(new TreeNode[] { new TreeNode(_NovotextoDescricão) }); _NovotextoDescricão = ""; } else { _NovotextoDescricão = _NovotextoDescricão + " " + _palavras[i]; } } if (_NovotextoDescricão != "") { _node.Nodes.AddRange(new TreeNode[] { new TreeNode(_NovotextoDescricão) }); } _nodeCheck.Nodes.Add(_node); break; } else { _node.Nodes.AddRange(new TreeNode[] { new TreeNode("Descrição: " + _textoDescricão) }); } _nodeCheck.Nodes.Add(_node); break; } else { if (GravarEnvio(_retorno, _listaId, _cnpjTransmissao)) { _contador++; TreeNode _node = new TreeNode("Arquivo " + _contador.ToString()); TreeNode _nodeId = new TreeNode("ID"); _nodeId.Nodes.AddRange(_listaId.ConvertAll <TreeNode>(_id => new TreeNode(_id)).ToArray()); _node.Nodes.Add(_nodeId); TreeNode _nodeRetorno = new TreeNode("Retorno"); TreeNode _nodeResposta = new TreeNode( _retorno.GetElementsByTagName("descResposta").Cast <XmlElement>().FirstOrDefault().InnerText); if (_retorno.GetElementsByTagName("cdResposta").Cast <XmlElement>().FirstOrDefault().InnerText == "201") { _nodeResposta.Nodes.Add(new TreeNode("Data: " + _retorno.GetElementsByTagName("dhRecepcao").Cast <XmlElement>().FirstOrDefault().InnerText)); _nodeResposta.Nodes.Add(new TreeNode("Varsão: " + _retorno.GetElementsByTagName("versaoAplicativoRecepcao").Cast <XmlElement>().FirstOrDefault().InnerText)); _nodeResposta.Nodes.Add(new TreeNode("Protocolo: " + _retorno.GetElementsByTagName("protocoloEnvio").Cast <XmlElement>().FirstOrDefault().InnerText)); } else { XmlNodeList _ocorrencias = _retorno.GetElementsByTagName("ocorrencia"); _ocorrencias.Cast <XmlElement>().ToList().ForEach(_ocorrencia => { TreeNode trnOcur = new TreeNode("Ocorrência"); trnOcur.Nodes.AddRange(new TreeNode[] { new TreeNode(_ocorrencia.GetElementsByTagName("codigo").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode(_ocorrencia.GetElementsByTagName("descricao").Cast <XmlElement>().FirstOrDefault().InnerText) , new TreeNode(_ocorrencia.GetElementsByTagName("tipo").Cast <XmlElement>().FirstOrDefault().InnerText) }); _nodeResposta.Nodes.Add(trnOcur); } ); } _nodeRetorno.Nodes.Add(_nodeResposta); _node.Nodes.Add(_nodeRetorno); _nodeCheck.Nodes.Add(_node); } else { break; } } } else { MessageBox.Show(_resultado.Mensagem); break; } } trvEnviado.Nodes.Add(_nodeCheck); }); trvEnviado.ExpandAll(); } else { MessageBox.Show("Nenhum arquivo selecionado para envio."); } } catch (Exception _ex) { MessageBox.Show(_ex.Message); } GetDesktop().HideLoading(); }
private void ExecutarEnviaArquivo() { Custom = false; gpbArquivos.Visible = false; btnSel.Visible = false; btnDes.Visible = false; imgVoltar.Visible = true; imgEnviar.Visible = false; try { List <SCI.Model.Report.DCTF.Reinf.RetornoREINF> _listRetorno = new List <Model.Report.DCTF.Reinf.RetornoREINF>(); pnlArquivo.Controls?.Cast <CheckBox>().Where(_check => _check.Checked)?.ToList().ForEach(_check => { Model.Report.DCTF.RetornoREINF.RetornoEvento _retornoEvento = new Model.Report.DCTF.RetornoREINF.RetornoEvento { Descricao = _check.Text }; int _contador = 0; string _url; if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo == "R-5011") { _url = "https://www.irko.com.br/csp/prgdcn/reinf/retornoXML.csp?"; _url += "CODEMP=" + GetDesktop().GetEmpresa().Codigo.ToString(); _url += "&GUID=" + Guid; } else { _url = "https://www.irko.com.br/csp/prgdcn/reinf/arquivoXML.csp?"; _url += "CODEMP=" + GetDesktop().GetEmpresa().Codigo.ToString(); _url += "&NOMREG=" + ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo; _url += "&GUID=" + Guid; } XmlDocument _xml = new XmlDocument { PreserveWhitespace = false }; _xml.Load(_url); if (_xml.DocumentElement.Name == "Fim" || _xml.DocumentElement.Name == "Falha") { } else { XmlNode _xmlReinf = _xml.DocumentElement; string _cnpjTransmissao = "07074083000102"; string _cnpjContr = string.Empty; var resultadoCNPJ = wrReinf.RecuperaCNPJCPFCertificado(Guid); if (resultadoCNPJ.Sucesso) { _cnpjContr = resultadoCNPJ.RetornoResultadoRecuperaCNPJCPFCertificado; } if (String.IsNullOrEmpty(_cnpjContr)) { _cnpjContr = _xml.DocumentElement.GetElementsByTagName("ideContri")?.Cast <XmlElement>() .FirstOrDefault()?.GetElementsByTagName("nrInsc")?.Cast <XmlElement>().FirstOrDefault()?.InnerText; } String _tpAmb = _xml.DocumentElement.GetElementsByTagName("tpAmb")?.Cast <XmlElement>()? .FirstOrDefault()?.InnerText; _cnpjTransmissao = _cnpjContr; var _xmlElements = _xml.GetElementsByTagName("loteEventos").Cast <XmlElement>().FirstOrDefault(); List <string> _listaId = _xmlElements?.Cast <XmlNode>().Where(_node => _node.Name == "evento")? .Select(_id => _id.Attributes["id"].Value)?.ToList(); Resultado _resultadoAssinar = new Resultado(); _resultadoAssinar.Sucesso = true; if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo != "R-5011") { _resultadoAssinar = AssinarXML(ref _xml, _cnpjContr); } if (_resultadoAssinar.Sucesso) { XmlNode _retorno = null; SCI.Base.Resultado <System.Web.Services.Protocols.SoapHttpClientProtocol> _resultado = GetWrAssinado(_cnpjTransmissao, ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo, _tpAmb); if (_resultado.Sucesso) { System.Web.Services.Protocols.SoapHttpClientProtocol _wrAssinado = _resultado.Retorno; try { System.Net.ServicePointManager.ServerCertificateValidationCallback += delegate( object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors sslPolicyErrors) { if (sslPolicyErrors == SslPolicyErrors.None) { return(true); } return(false); }; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls; if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo == "R-5011") { XmlNodeList xnList = _xmlReinf.SelectNodes("/ConsultaInformacoesConsolidadas"); byte _tipoInscricaoContribuinte = Convert.ToByte(xnList.Item(0).ChildNodes.Item(0).InnerText); string _numeroInscricaoContribuinte = xnList.Item(0).ChildNodes.Item(1).InnerText; string _numeroProtocoloFechamento = xnList.Item(0).ChildNodes.Item(2).InnerText; if (_tpAmb == "1") { _retorno = ((Reinf.Producao.Retorno.ConsultasReinf)_wrAssinado).ConsultaInformacoesConsolidadas(_tipoInscricaoContribuinte, _numeroInscricaoContribuinte, _numeroProtocoloFechamento); } else { _retorno = ((Reinf.ProducaoRestrita.Retorno.ConsultasReinf)_wrAssinado).ConsultaInformacoesConsolidadas(_tipoInscricaoContribuinte, _numeroInscricaoContribuinte, _numeroProtocoloFechamento); } } else { if (_tpAmb == "1") { _retorno = ((Reinf.Producao.Envio.RecepcaoLoteReinf)_wrAssinado).ReceberLoteEventos(_xmlReinf); } else { _retorno = ((Reinf.ProducaoRestrita.Envio.RecepcaoLoteReinf)_wrAssinado).ReceberLoteEventos(_xmlReinf); } } XmlDocument _docRetorno = new XmlDocument(); _docRetorno.LoadXml(_retorno.OuterXml); XmlElement _retornoElement = _docRetorno.DocumentElement; Reinf.Irko.ResultadoGravarRetornoEvento _retornoWR = GravarEnvio(_retorno, _listaId, _cnpjTransmissao, ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo); if (_retornoWR.Sucesso) { if (((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo == "R-5011") { Reinf.Irko.evtTotalContrib _retornoLoteEventos = _retornoWR.RetornoRetornoTotEvt10300.evtTotalContrib; _contador++; _retornoLoteEventos.ideRecRetorno.ideStatus.regOcorrs?.ToList().ForEach(_ocorr => { SCI.Model.Report.DCTF.Reinf.RetornoREINF _retReinf = new Model.Report.DCTF.Reinf.RetornoREINF(); _retReinf.codEvt = ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo; _retReinf.dscEvt = ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Descricao; _retReinf.nomArq = _contador.ToString(); _retReinf.idEVT = _retornoLoteEventos.id; _retReinf.stsEvt = _retornoLoteEventos.ideRecRetorno.ideStatus.descRetorno; _retReinf.tipOco = _ocorr.tpOcorr.ToString(); _retReinf.dscOco = _ocorr.codResp + " - " + _ocorr.dscResp; _listRetorno.Add(_retReinf); }); } else { Reinf.Irko.retornoLoteEventos _retornoLoteEventos = _retornoWR.RetornoRetornoLote10300.retornoLoteEventos; _contador++; _retornoLoteEventos.retornoEventos.ToList().ForEach(_evento => { _evento.Reinf.evtTotal.ideRecRetorno.ideStatus.regOcorrs?.ToList().ForEach(_ocorr => { SCI.Model.Report.DCTF.Reinf.RetornoREINF _retReinf = new Model.Report.DCTF.Reinf.RetornoREINF(); _retReinf.codEvt = ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Codigo; _retReinf.dscEvt = ((SCI.Reinf.Irko.TipoEvento)_check.Tag).Descricao; _retReinf.nomArq = "Arquivo " + _contador.ToString(); _retReinf.idEVT = _retornoLoteEventos.id; _retReinf.stsEvt = _evento.Reinf.evtTotal.ideRecRetorno.ideStatus.descRetorno; _retReinf.tipOco = _ocorr.tpOcorr.ToString(); _retReinf.dscOco = _ocorr.codResp + " - " + _ocorr.dscResp; _listRetorno.Add(_retReinf); }); }); } } else { MessageBox.Show(_retornoWR.Mensagem); } } catch (Exception ex) { MessageBox.Show(ex.Message); return; } } //_retornReinf.Eventos.Add(_retornoEvento); //trvEnviado.Nodes.Add(_nodeCheck); } else { MessageBox.Show(_resultadoAssinar.Mensagem); } } }); rptREINF.LocalReport.DataSources.Clear(); ReportDataSource _source = new ReportDataSource("RetornoArquivoREINF", _listRetorno); rptREINF.LocalReport.DataSources.Add(_source); rptREINF.LocalReport.SetParameters(new ReportParameter[] { new ReportParameter("Agora", DateTime.Now.ToString()) }); rptREINF.RefreshReport(); gpbEnviados.Visible = true; pctLoad.Visible = false; lblLoad.Visible = false; } catch (Exception _ex) { MessageBox.Show(_ex.Message); } }
public static string[] RetornarDescricoesEnum <T>(this System.Web.Services.Protocols.SoapHttpClientProtocol valor) { return(valor.RetornarDadosEnum <T>() .Select(s => s.Descricao) .ToArray()); }
Authenticate(System.Web.Services.Protocols.SoapHttpClientProtocol serviceproxy, string username, string password, string domain, int timeout) { string url_401 = serviceproxy.Url; if (serviceproxy.Url.Contains("?")) { url_401 = serviceproxy.Url.Substring(0, serviceproxy.Url.IndexOf("?")); } url_401 += "?wsdl"; HttpWebRequest webRequest_401 = null; webRequest_401 = (HttpWebRequest)HttpWebRequest.Create(url_401); webRequest_401.ContentType = "text/xml;charset=\"utf-8\""; webRequest_401.Method = "GET"; webRequest_401.Accept = "text/xml"; HttpWebResponse webResponse_401 = null; while (webResponse_401 == null || webResponse_401.StatusCode != HttpStatusCode.OK) { try { webResponse_401 = (HttpWebResponse)webRequest_401.GetResponse(); } catch (System.Net.WebException webex) { HttpWebResponse webexResponse = (HttpWebResponse)webex.Response; if (webexResponse.StatusCode == HttpStatusCode.Unauthorized) { if (webRequest_401.Credentials == null) { webRequest_401 = (HttpWebRequest)HttpWebRequest.Create(url_401); webRequest_401.ContentType = "text/xml;charset=\"utf-8\""; webRequest_401.Method = "GET"; webRequest_401.Accept = "text/xml"; webRequest_401.Credentials = new NetworkCredential(username, password, domain); } else { // if original credentials not accepted, throw exception throw webex; } } // 499 - token required, 498 - invalid token else if (webexResponse.StatusCode.ToString() == "499" || webexResponse.StatusCode.ToString() == "498") { string tokenServiceUrl = ""; ServiceCatalogProxy myCatalog = new ServiceCatalogProxy(); myCatalog.Url = serviceproxy.Url.Substring(0, serviceproxy.Url.IndexOf("/services") + 9); if (myCatalog.RequiresTokens()) { tokenServiceUrl = myCatalog.GetTokenServiceURL(); } else { throw new Exception("Service does not require token but status code 499 returned"); } if (string.IsNullOrEmpty(tokenServiceUrl)) { throw new Exception("Token service url unavailable"); } string url = tokenServiceUrl + string.Format("?request=getToken&username={0}&password={1}&timeout={2}", username, password, timeout); System.Net.HttpWebRequest request = (HttpWebRequest)System.Net.WebRequest.Create(url); System.Net.WebResponse response = request.GetResponse(); System.IO.Stream responseStream = response.GetResponseStream(); System.IO.StreamReader readStream = new System.IO.StreamReader(responseStream); string theToken = readStream.ReadToEnd(); webRequest_401 = (HttpWebRequest)HttpWebRequest.Create(url_401 + "&token=" + theToken); } else { // if status code unrecognized, throw exception throw webex; } } catch (Exception ex) { throw ex; } } if (webResponse_401 != null) { webResponse_401.Close(); } if (webRequest_401.Credentials != null) { serviceproxy.Credentials = webRequest_401.Credentials; } if (webRequest_401.RequestUri.ToString().Contains("token")) { string myToken = ParseStringIntoNameValueCollection(webRequest_401.RequestUri.ToString())["token"]; string baseServiceProxyUrl = serviceproxy.Url; if (serviceproxy.Url.Contains("?")) { baseServiceProxyUrl = serviceproxy.Url.Substring(0, serviceproxy.Url.IndexOf("?")); } serviceproxy.Url = baseServiceProxyUrl + "?token=" + myToken; } return(serviceproxy); }