//requerindo arquivo do webservice require(__DIR__ . DIRECTORY_SEPARATOR . 'WebserviceClient.php'); //url do sistema $host = 'https://sistema-ixc.hdnetfibra.com.br/webservice/v1'; //token gerado no cadastro do usuario (verificar permissões) $token = 'MjI6M2FjMGYxM2RlNDhkZGE2M2FjYTk5N2I0ZDk2NTlmN2Y4ZDE4YmQ1ZTZiOTRlYmIwODM3ZGY3ZDI2MjgzMDhhZg=='; //true para certificado auto assinado $selfSigned = true; //instanciando api requerida na primeira linha do código $api = new IXCsoft\WebserviceClient($host, $token, $selfSigned); $id_contrato = 100;//ID do contrato //array de parâmetros do método buscar o contrato do cliente $params001 = array( 'qtype' => 'cliente_contrato.id',//campo de filtro 'query' => $id_contrato,//valor para consultar, no caso o ID do contrato 'oper' => '=',//operador da consulta 'page' => '1',//página a ser mostrada 'rp' => '20',//quantidade de registros por página 'sortname' => 'cliente_contrato.id',//campo para ordenar a consulta 'sortorder' => 'desc'//ordenação (asc= crescente | desc=decrescente) ); $api->get('cliente_contrato', $params001); //Faz a o GET na API na tabela cliente_contrato $retorno_cliente_contrato = $api->getRespostaConteudo(true);//true para array $id_plano[0] = $retorno_cliente_contrato["registros"][0]["id_vd_contrato"];//salva o id do plano de velocidade que estava no contrato, na primeira posição do array id_plano //array de parâmetros do método buscar o na tabela vd_contratos_produtos $params002 = array( 'qtype' => 'vd_contratos_produtos.id_contrato',//campo de filtro 'query' => $id_contrato,//valor para consultar 'oper' => '=',//operador da consulta 'page' => '1',//página a ser mostrada 'rp' => '20',//quantidade de registros por página 'sortname' => 'vd_contratos_produtos.id',//campo para ordenar a consulta 'sortorder' => 'desc'//ordenação (asc= crescente | desc=decrescente) ); $api->get('vd_contratos_produtos', $params002);//Faz a o GET na API na tabela vd_contratos_produtos $retorno_contratos_produtos = $api->getRespostaConteudo(true);//true para array //Salva os IDs dos planos de velocidade da tabela vd_contratos_produtos no array id_plano for($i = 0; $retorno_contratos_produtos["registros"][$i]["id_plano"] != NULL; $i++){ $j = $i+1; $id_plano[$j] = $retorno_contratos_produtos["registros"][$i]["id_plano"]; } for($i = 0; $i <= $j; $i++){ //utiliza o for para caminha nas posições do array id_plano e id_produto //array de parâmetros do método buscar os ID dos produtos que são equivalentes aos ID de plano de velocidade $params003 = array( 'qtype' => 'radgrupos.id',//campo de filtro 'query' => $id_plano[$i],//valor para consultar, que no caso é os IDs dos planos 'oper' => '=',//operador da consulta 'page' => '1',//página a ser mostrada 'rp' => '20',//quantidade de registros por página 'sortname' => 'radgrupos.id',//campo para ordenar a consulta 'sortorder' => 'desc'//ordenação (asc= crescente | desc=decrescente) ); $api->get('radgrupos', $params003);//Faz a o GET na API na tabela radgrupos $retorno_plano_valocidade = $api->getRespostaConteudo(true);//true para array //Salva os IDs dos planos de velocidade no array id_produto $id_produto[$i] = $retorno_plano_valocidade["registros"][0]["id_produto"]; } for($i = 0; $i <= $j; $i++){//utiliza o for para caminha nas posições do array id_produto //array de parâmetros do método buscar os produtos com os ids dos produtos $params = array( 'qtype' => 'produtos.id',//campo de filtro 'query' => $id_produto[$i],//valor para consultar, que no caso são os IDs dos produtos 'oper' => '=',//operador da consulta 'page' => '1',//página a ser mostrada 'rp' => '20',//quantidade de registros por página 'sortname' => 'produtos.id',//campo para ordenar a consulta 'sortorder' => 'desc'//ordenação (asc= crescente | desc=decrescente) ); $api->get('produtos', $params);//Faz a o GET na API na tabela produtos $retorno_produto[$i] = $api->getRespostaConteudo(false);// false para json | true para array } var_dump($retorno_produto); //Imprime os produtos cadastrados