/**
  * Gerencia a  de criação
  * e edição dos consulta 
  */
 public function consultarWebServiceAction()
 {
     $o_consulta = new ConsultaModel();
     //verificando se o id da consulta foi passado
     if (isset($_REQUEST['valor_consulta'])) {
         //verificando se o valor passado é valido
         if (DataValidator::isNumeric($_REQUEST['valor_consulta'])) {
             //buscando dados no webService 'http://www.w3schools.com/webservices/tempconvert.asmx' contato
             $client = new SoapClient('http://www.w3schools.com/webservices/tempconvert.asmx?WSDL');
             if ($_REQUEST['tipo'] == 'Fahrenheit_Celsius') {
                 $function = 'FahrenheitToCelsius';
                 $arguments = array('FahrenheitToCelsius' => array('Fahrenheit' => 123));
             } else {
                 $function = 'CelsiusToFahrenheit';
                 $arguments = array('CelsiusToFahrenheit' => array('Celsius' => $_REQUEST['valor_consulta']));
             }
             $options = array('location' => 'http://www.w3schools.com/webservices/tempconvert.asmx?WSDL');
             try {
                 $result = $client->__soapCall($function, $arguments, $options);
             } catch (SoapFault $exception) {
                 echo $exception;
             }
             if ($_REQUEST['tipo'] == 'Fahrenheit_Celsius') {
                 $o_consulta->setRespostaTemperatura(DataFilter::cleanString($result->FahrenheitToCelsiusResult));
                 $o_consulta->setRequisicaoTipo('Fahrenhet');
                 echo "<script>alert('Temperatura resultado {$result->FahrenheitToCelsiusResult}')</script>";
             } else {
                 $o_consulta->setRespostaTemperatura(DataFilter::cleanString($result->CelsiusToFahrenheitResult));
                 $o_consulta->setRequisicaoTipo('Celsius');
                 echo "<script>alert('Temperatura resultado {$result->CelsiusToFahrenheitResult}')</script>";
             }
             $o_consulta->setRequisicaoTemperatura(DataFilter::cleanString($_REQUEST['valor_consulta']));
             $o_consulta->setIp(DataFilter::cleanString(ConsultaController::getIp()));
             $o_consulta->setXmlGerado(serialize($result));
             $o_consulta->save();
         } else {
             echo "<script>alert('Valor invalido')</script>";
         }
     }
     $v_consultas = $o_consulta->_list();
     //definindo qual o arquivo HTML que será usado para
     //mostrar a lista de consulta
     $o_view = new View('views/listarConsulta.phtml');
     //Passando os dados da consulta para a View
     $o_view->setParams(array('v_consultas' => $v_consultas));
     //Imprimindo código HTML
     $o_view->showContents();
 }
 /**
  * Retorna um array contendo os contatos
  * @param string $st_nome
  * @return Array
  */
 public function _list($id_cont = null)
 {
     if (!is_null($id_cont)) {
         $st_query = 'SELECT * FROM pesquisa where excluido = 0 and id_consulta = "' . $id_cont . '" order by id_consulta desc limit 1;';
     } else {
         $st_query = 'SELECT * FROM pesquisa where excluido = 0 order by id_consulta desc ;';
     }
     $v_consultas = array();
     try {
         $o_data = $this->o_db->query($st_query);
         while ($o_ret = $o_data->fetchObject()) {
             $o_consulta = new ConsultaModel();
             $o_consulta->setId($o_ret->id_consulta);
             $o_consulta->setRequisicaoTemperatura($o_ret->requisicao_temperatura);
             $o_consulta->setRequisicaoTipo($o_ret->requisicao_tipo);
             $o_consulta->setRespostaTemperatura($o_ret->resposta_temperatura);
             $o_consulta->setDataConsulta($o_ret->datahora_consulta);
             $o_consulta->setIp($o_ret->ip_requisitante);
             $o_consulta->setXmlGerado($o_ret->xml_gerado);
             array_push($v_consultas, $o_consulta);
         }
     } catch (PDOException $e) {
     }
     return $v_consultas;
 }