public static string geraXML(string numerocarteira, string sequencial, string codigoProcedimento, string descricaoProcedimento, string codigoPrestadorNaOperadora, string registroANS) { try { solicitacaoProcedimentoWS solicitacao = empacotaDados(numerocarteira, sequencial, codigoProcedimento, descricaoProcedimento, codigoPrestadorNaOperadora, registroANS); string resposta = GetEnvioXmlString(solicitacao);; return(resposta); } catch (Exception ex) { return(ex.Message); } }
public static string GetEnvioXmlString(solicitacaoProcedimentoWS doc) { var ns = new XmlSerializerNamespaces(); ns.Add("ds", "http://www.w3.org/2000/09/xmldsig#"); ns.Add("ans", "http://www.ans.gov.br/padroes/tiss/schemas"); var serializer = new XmlSerializer(doc.GetType()); using (var writer = new Util.StringWriterUTF8()) { serializer.Serialize(writer, doc, ns); return(writer.ToString()); } }
public static string enviaSolicitacao(string numerocarteira, string sequencial, string codigoProcedimento, string descricaoProcedimento, string codigoPrestadorNaOperadora, string registroANS) { solicitacaoProcedimentoWS solicitacao = empacotaDados(numerocarteira, sequencial, codigoProcedimento, descricaoProcedimento, codigoPrestadorNaOperadora, registroANS); try { tissSolicitacaoProcedimento_BindingClient envia = new tissSolicitacaoProcedimento_BindingClient(); autorizacaoProcedimentoWS retorno = envia.tissSolicitacaoProcedimento_Operation(solicitacao); return(GetRetornoXmlString(retorno)); } catch (Exception ex) { return(ex.Message); } }
public static solicitacaoProcedimentoWS empacotaDados(string numerocarteira, string sequencial, string codigoProcedimento, string descricaoProcedimento, string codigoPrestadorNaOperadora, string registroANS) { try { solicitacaoProcedimentoWS solicitacao = new solicitacaoProcedimentoWS(); solicitacao.cabecalho = new cabecalhoTransacao(); solicitacao.cabecalho.identificacaoTransacao = new cabecalhoTransacaoIdentificacaoTransacao(); solicitacao.cabecalho.identificacaoTransacao.tipoTransacao = dm_tipoTransacao.SOLICITACAO_PROCEDIMENTOS; solicitacao.cabecalho.identificacaoTransacao.sequencialTransacao = sequencial; // número que identifica a transação solicitacao.cabecalho.identificacaoTransacao.dataRegistroTransacao = DateTime.Now.Date; solicitacao.cabecalho.identificacaoTransacao.horaRegistroTransacao = DateTime.Now; #region ORIGEM cabecalhoTransacaoOrigemIdentificacaoPrestador origem = new cabecalhoTransacaoOrigemIdentificacaoPrestador(); origem.ItemElementName = ItemChoiceType.codigoPrestadorNaOperadora; origem.Item = codigoPrestadorNaOperadora; solicitacao.cabecalho.origem = new cabecalhoTransacaoOrigem(); solicitacao.cabecalho.origem.Item = origem; #endregion ORIGEM #region DESTINO // cabecalhoTransacaoDestino destino = new cabecalhoTransacaoDestino(); solicitacao.cabecalho.destino = new cabecalhoTransacaoDestino(); solicitacao.cabecalho.destino.Item = registroANS; #endregion DESTINO solicitacao.cabecalho.Padrao = dm_versao.Item30303; #region PROCEDIMENTOS ctm_spsadtSolicitacaoGuia guiaSADT = new ctm_spsadtSolicitacaoGuia(); guiaSADT.dadosBeneficiario = new ct_beneficiarioDados(); guiaSADT.dadosBeneficiario.atendimentoRN = dm_simNao.N; guiaSADT.dadosBeneficiario.nomeBeneficiario = "teste do teste"; guiaSADT.dadosBeneficiario.numeroCarteira = numerocarteira; guiaSADT.cabecalhoSolicitacao = new ct_guiaCabecalho(); guiaSADT.cabecalhoSolicitacao.numeroGuiaPrestador = "000"; guiaSADT.cabecalhoSolicitacao.registroANS = registroANS; List <ctm_spsadtSolicitacaoGuiaProcedimentosSolicitados> listProcedimento = new List <ctm_spsadtSolicitacaoGuiaProcedimentosSolicitados>(); ctm_spsadtSolicitacaoGuiaProcedimentosSolicitados procedimento = new ctm_spsadtSolicitacaoGuiaProcedimentosSolicitados(); procedimento.procedimento = new ct_procedimentoDados(); procedimento.procedimento.codigoProcedimento = codigoProcedimento; procedimento.procedimento.descricaoProcedimento = descricaoProcedimento; procedimento.procedimento.codigoTabela = dm_tabela.Item00; listProcedimento.Add(procedimento); /// guiaSADT.procedimentosSolicitados = listProcedimento.ToArray(); ct_solicitacaoProcedimento solicitacaoProcedimento = new ct_solicitacaoProcedimento(); solicitacaoProcedimento.Item = guiaSADT; solicitacao.solicitacaoProcedimento = solicitacaoProcedimento; #endregion PROCEDIMENTOS return(solicitacao); } catch (Exception ex) { throw; // para teste } }