get_variable('URA', true); __logStr("Consulta de Documento", "Recebido Pela URA: ". print_r($resp,true), $scrpt, true); $cliente = GetConsultaDocumento($resp); __logStr("Consulta de Documento", "Cadastro do cliente: ". print_r($cliente,true), $scrpt, true); if(substr($cliente, 0,4) == 'ERRO'){ $agi->exec_goto(GetAnuncio('cadastro_nao_encontrado')); }elseif ($cliente == 'Megalink') { $agi->exec_goto(GetAnuncio('agradecimento')); }elseif(!empty($cliente['nome_fan'])){ $agi->set_variable('CODCLI', $cliente['codcli']); $agi->set_variable('CELULAR', $cliente['celular']); $agi->set_variable('EMAIL', $cliente['email']); $agi->set_variable('NOMEFANTASIA', $cliente['nome_fan']); $agi->exec_goto(GetUra('SELECIONA_FILA_EMPRESARIAL')); }else{ $agi->set_variable('CODCLI', $cliente['codcli']); $agi->set_variable('CELULAR', $cliente['celular']); $agi->set_variable('EMAIL', $cliente['email']); $agi->set_variable('NOMECLIENTE', $cliente['nome_cli']); $agi->exec_goto(GetAnuncio('procura_cadastro')); } } catch (Exception $ex) { $reg_msg = $ex->getMessage(); $reg_status_exec = 'Er'; __logStr("Consulta de Documento", $reg_msg . "Codigo do cliente: " . $result['codcli'][0], $scrpt, true); } @AtualizaIntegracao($uid, $reg_retorno, $reg_msg, $reg_status_exec, $retorno_cliente); if (!$dadosIntegra) @grava_dadosIntegra($reg_retorno); function GetConsultaDocumento($param) { $documento = GetDocumento($param); if($documento == 'Megalink'){ return $documento; } $url = 'http://191.242.216.10/server.php'; // $_user = rawurlencode('25AM0LAY9Y'); // $_passwd = rawurlencode('25AM0LAZMK'); $_user = rawurlencode('25AT0ME5TF'); $_passwd = rawurlencode('25AT0ME6C4'); $_consulta = '011G0NP05B'; $_formato_padrao = 'X'; $_doc = $documento['maskedDoc']; $xml = '' . "\n"; $xml .= "\n"; $xml .= "view.execute\n"; $xml .= "\n"; $xml .= '' . "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= '' . "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= '' . "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= '' . "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= sprintf('' . "\n", $documento['type']); $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= "\n"; $xml .= ""; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: text/xml; charset=utf-8', 'Content-Length: ' . strlen($xml))); $result = curl_exec($ch); $curlError = curl_error($ch); if (!empty($curlError)) { curl_close($ch); throw new Exception("HTTP error ocurred: $curlError"); } $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpCode != 200) { throw new Exception("HTTP error ocurred, number: $httpCode"); } if ($result == '') { throw new Exception("Void Response"); } $xml = simplexml_load_string($result); $arDados = objectToArray($xml->params->param[1]->value->DOMElement->result->row); $dados = !empty($arDados) ? $arDados = array_filter($arDados) : null; if(empty($dados)){ return "ERRO - cliente nao encontrado"; } $explodeCel = explode(',', $dados['celular']); $explodeEmail = explode(',', $dados['email']); $arFinal = array( "documento" => soNumero($dados['documento']), "celular" => trim(soNumero($explodeCel[0])), "email" => trim($explodeEmail[0]) ); $arSpliced = array_slice($dados, 0, 9); $result = array_merge($arSpliced, $arFinal); if($result['codcli'] == 2 && $result['celular'] != $param){ return "ERRO - Cliente nao encontrado"; } return $result; } function GetDocumento($documento) { if(empty($documento)){ return "ERRO"; } if($documento == '12419721000110') { return "Megalink"; } $doc = array(); if (strlen($documento) == 11) { $mask = "%s%s%s.%s%s%s.%s%s%s-%s%s"; $maskedDoc = vsprintf($mask, str_split($documento)); $doc['documento'] = $documento; $doc['type'] = 'cpf'; $doc['maskedDoc'] = $maskedDoc; return $doc; } else if (strlen($documento) == 14) { $mask = "%s%s.%s%s%s.%s%s%s/%s%s%s%s-%s%s"; $maskedDoc = vsprintf($mask, str_split($documento)); $doc['documento'] = $documento; $doc['type'] = 'cnpj'; $doc['maskedDoc'] = $maskedDoc; return $doc; } } function objectToArray($d) { if (is_object($d)) { $d = get_object_vars($d); } if (is_array($d)) { return array_map(__FUNCTION__, $d); } else { return $d; } } ?>