public DUA ObterDUA(string numeroDUA, string cpfCnpj, eTipoPessoa tipoPessoa = 0) { try { string duaSenhaCertificado = _configSys.Obter <String>(ConfiguracaoSistema.KeyDUASenhaCertificado); var duaService = new DuaEService(_arquivoCertificado, duaSenhaCertificado); if (tipoPessoa == 0) { tipoPessoa = cpfCnpj.Contains("/") ? eTipoPessoa.Juridica : eTipoPessoa.Fisica; } var resultado = duaService.ConsultarDua(numeroDUA, cpfCnpj.Replace(".", "").Replace("-", "").Replace("/", ""), tipoPessoa); var xser = new XmlSerializer(typeof(RespostaConsultaDua)); var xml = (RespostaConsultaDua)xser.Deserialize(new StringReader(resultado)); if (xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua == null) { Validacao.Add(Mensagem.PTV.ErroSefaz(xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.XMotivo)); Log.Error($"DUA: {numeroDUA} - CPF/CNPJ: {cpfCnpj}", new Exception(xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.XMotivo)); return(null); } DUA retorno = new DUA(); retorno.OrgaoSigla = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Orgao.XSigla; retorno.ServicoCodigo = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Area.CArea; retorno.ReferenciaData = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Data.DRef; retorno.CPF = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Contri.Cpf; retorno.CNPJ = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Contri.Cnpj; retorno.ReceitaValor = (float)xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Rece.VRece; retorno.PagamentoCodigo = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Pgto.CPgto; retorno.ValorTotal = (float)xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Valor.VTot; retorno.CodigoServicoRef = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Serv.CServ; return(retorno); } catch (Exception exc) { Validacao.Add(Mensagem.PTV.ErroAoConsultarDua); Log.Error($"DUA: {numeroDUA} - CPF/CNPJ: {cpfCnpj}", exc); } return(null); }
public DUA ObterDUAPJ(string DUANumero, string DUACNPJ) { try { string duaSenhaCertificado = _configSys.Obter <String>(ConfiguracaoSistema.KeyDUASenhaCertificado); //var duaService = new DuaEService(HttpContext.Current.Server.MapPath(@"~/Content/_chave/Chaves Pública e Privada.pfx"), duaSenhaCertificado,"http://*****:*****@"~/Content/_chave/Chaves Pública e Privada.pfx"), duaSenhaCertificado); var resultado = duaService.ConsultaDuaCNPJ(DUANumero, DUACNPJ.Replace(".", "").Replace("/", "").Replace("-", "")); var xser = new XmlSerializer(typeof(RespostaConsultaDua)); var xml = (RespostaConsultaDua)xser.Deserialize(new StringReader(resultado)); if (xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua == null) { return(null); } DUA retorno = new DUA(); retorno.OrgaoSigla = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Orgao.XSigla; retorno.ServicoCodigo = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Area.CArea; retorno.ReferenciaData = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Data.DRef; retorno.CNPJ = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Contri.Cnpj; retorno.ReceitaValor = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Rece.VRece; retorno.PagamentoCodigo = xml.Body.DuaConsultaResponse.DuaConsultaResult.RetConsDua.Dua.InfDUAe.Pgto.CPgto; return(retorno); } catch (Exception exc) { Validacao.AddErro(exc); } return(null); }