WebService para Catálogo de Serviços

<< <%SKIN-STRTRANS-SYNTOC%> >>

Navegação:  Webservices & Integração >

WebService para Catálogo de Serviços

 

Descrição

Webservice para catálogo de serviços

Acesso

Criação e edição de recursos utilizando WebServices do Qualitor (recursos de integração)

Aplica-se

Q810

 

No descritor WSServiceCatalog foram criados dois WebServices:

getServicesByUser: Este Webservice é utilizado para obter a lista de serviços do usuário final, que é informado nos parâmetros de entrada via TAG XML:

$xml = '';
$xml .= '<wsqualitor>';
$xml .= " <contents> ";
$xml .= " <data> ";
$xml .= "         <cdcliente>1</cdcliente>"; // Cliente
$xml .= "         <cdcontato>1</cdcontato>"; // Contato
$xml .= " </data> ";
$xml .= " </contents> ";
$xml .= '</wsqualitor>';

getServiceData: Este WebService é utilizado para obter os dados do serviço, que é informado nos parâmetros de entrada via TAG XML:

$xml = '';
$xml .= '<wsqualitor>';
$xml .= " <contents> ";
$xml .= " <data> ";
$xml .= "         <cdservico>12</cdservico>";
$xml .= " </data> ";
$xml .= " </contents> ";
$xml .= '</wsqualitor>';

Na execução do webservice “getServicesByUser”, este Webservice é responsável por retornar a lista de serviços do catálogo do usuário (Nota: São exibidos os serviços “voltados ao cliente”, ao qual o usuário informado no parâmetro possui acesso).

<wsqualitor>

<response_status>

<status>1</status>

<error_code></error_code>

<msg></msg>

</response_status>

<response_data>

 <dataitem>

   <servico>

<cdservico>7</cdservico>

<cdservicosuperior></cdservicosuperior>

<nmservico>Incidente</nmservico>

<dsimagem> HEPV2fR60D6M6e35MH6XLuwDhi6HZ4dKOdlFUuF9m4glhr3phJi9d6AZPJuwKS1VVzA3aLyYsX7crche/t3trMEU2TV4FaLqXIfui8WVHWSwsQbFLo5kAAAAASUVORK5CYII=</dsimagem>

<idrequisicoes>N</idrequisicoes>

<idinformacoes>Y</idinformacoes>

<idacao>A</idacao>

<dsurl></dsurl>

<cdscript></cdscript>

<cdperfilchamado></cdperfilchamado>

<cdtipochamado></cdtipochamado>

<cdcategoria></cdcategoria>

<cdlocalidade></cdlocalidade>

<cdprioridade></cdprioridade>

<cdform></cdform>

<servicos>

<servico>

 < ... mais dados de serviços ... >

 

Na formação dos dados apresentados, a imagem é exibida no formato Base64, e as demais informações retornadas são agrupadas e subagrupadas sob a tag “<serviço>” que corresponde ao conjunto de informações relacionada à um serviço (registro) no XML.

A tag <dsurl> representa a URL de acesso externo ao formulário, se houver um formulário associado ao serviço em questão.

Um exemplo de execução deste WebService pode ser observado abaixo:

<?php

 

error_reporting(E_ALL);

ini_set("display_errors", 1);

 

$soapURL = "http://localhost/q810/ws/services/service.php?wsdl=WSServiceCatalog";

$soapClient = new SoapClient($soapURL);

 

$token = $soapClient->login('adm', '123', 1);

print $token;

 

$xml = '';

$xml .= '<wsqualitor>';

$xml .= " <contents> ";

$xml .= "  <data> ";

$xml .= "        <cdcliente>161</cdcliente>";

$xml .= "        <cdcontato>8</cdcontato>";

$xml .= "  </data> ";

$xml .= " </contents> ";

$xml .= '</wsqualitor>';

 

$return = $soapClient->getServicesByUser($token, $xml);

 

print $return;

print "<br><br><-- Fim -->";

print "</font>";

?>

Quando executado o webservice “getServiceData”, o WebService retorna os dados do serviço. Este dados correspondem à informações pertencentes ao cadastro do serviço em questão.

Para executar este WebService, é possível observar o exemplo abaixo:

 

<?php

 

error_reporting(E_ALL);

ini_set("display_errors", 1);

 

$soapURL = "http://localhost/q810/ws/services/service.php?wsdl=WSServiceCatalog";

$soapClient = new SoapClient($soapURL);

 

$token = $soapClient->login('adm', '123', 1);

print $token;

 

$xml = '';

$xml .= '<wsqualitor>';

$xml .= " <contents> ";

$xml .= "  <data> ";

$xml .= "        <cdservico>22</cdservico>";

$xml .= "  </data> ";

$xml .= " </contents> ";

$xml .= '</wsqualitor>';

 

$return = $soapClient->getServiceData($token, $xml);

print $return;

 

print "<br><br><-- Fim -->";

print "</font>";

 

?>

O exemplo acima executa o método getServiceData e obtém os dados cadastrais do serviço, que são exibidos conforme abaixo:

<wsqualitor>

 <response_status>

   <status>1</status>

   <error_code></error_code>

   <msg></msg>

 </response_status>

<response_data>

<dataitem>

 <cdservico22>

<cdservico>22</cdservico>

<nmservico>Novo Projeto</nmservico>

<nmtiposervico>Catálogo Público</nmtiposervico>

<idclassificacao>Serviço voltado ao cliente</idclassificacao>

<nmsituacao>Em produção</nmsituacao>

<idativo>Y</idativo>

<dtservico>27/06/2014 - 16:10</dtservico>

<cdcriticidade>3</cdcriticidade>

<nmcriticidade>Baixa</nmcriticidade>

<cdcategoriaservico1></cdcategoriaservico1>

<cdcategoriaservico2></cdcategoriaservico2>

<cdcategoriaservico3></cdcategoriaservico3>

<nmcategoriaservico1></nmcategoriaservico1>

<nmcategoriaservico2></nmcategoriaservico2>

<nmcategoriaservico3></nmcategoriaservico3>

<nmcategoriacompleta>(Categoria não informada)</nmcategoriacompleta>

<vlcusto>3</vlcusto>

<dsservico>Servi&amp;ccedil;os gerenciados (projetos) de implanta&amp;ccedil;&amp;otilde;es do sistema em novas empresas ou &amp;aacute;reas ou de migra&amp;ccedil;&amp;otilde;es de vers&amp;atilde;o, servidor, ambiente, etc. em sistemas j&amp;aacute; operantes</dsservico>

<cdjornada></cdjornada>

<nmjornada></nmjornada>

<vlmetaresposta>0,00</vlmetaresposta>

<vlmetatermino>0,00</vlmetatermino>

<vlmetadisponibilidade>0,00</vlmetadisponibilidade>

<vlmetarecovery></vlmetarecovery>

<idatendente>Y</idatendente>

<idtipoacaoat>A</idtipoacaoat>

<idwebsolicitante>N</idwebsolicitante>

<idpopup>N</idpopup>

<cdconexao></cdconexao>

<cdoperacao></cdoperacao>

<cdpesquisasqlsol></cdpesquisasqlsol>

<dsinformacaortf></dsinformacaortf>

<dsacordortf></dsacordortf>

<dsdisponibilidadertf></dsdisponibilidadertf>

<dsinstrucoesrtf></dsinstrucoesrtf>

<dsimagem>iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAYAAADnRuK4AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACsIARCIMEIkwQCTCAJEIA0QiDBCJMEAkwgCRCANEIgwQiTBAJMIAkQgDRCIMEIkwQCTCAJEIA0QCSv0HWSwsQbFLo5kAAAAASUVORK5CYII=</dsimagem>

 </cdservico22>

</dataitem>

</response_data>

</wsqualitor>

No retorno deste webservice também podemos observar que o conteúdo retornado da imagem do serviço obedece o formato Base64.

As informações retornadas pelo Webservice são relativas, especificamente, ao serviço requisitado no XML de entrada.