webservice/library/WsScore/WsEntreprise.php

95 lines
2.9 KiB
PHP
Raw Normal View History

2010-08-30 07:49:44 +00:00
<?php
require_once realpath(dirname(__FILE__)).'/functions.php';
require_once realpath(dirname(__FILE__)).'/Types/Types.php';
2010-08-30 07:49:44 +00:00
class WsEntreprise
{
2010-08-30 07:49:44 +00:00
/**
* Retourne les informations identitaires de l'entreprise ou de l'établissement demandé
* @param string $siret Siren de l'entreprise ou siret de l'établissement
2010-09-20 15:08:14 +00:00
* @param int $id Identifiant interne
2010-08-30 07:49:44 +00:00
* @param boolean $forceVerif
2010-09-08 13:40:57 +00:00
* @return IdentiteReturnType
2010-08-30 07:49:44 +00:00
*/
function getIdentite($siret, $id = 0, $forceVerif = false)
{
2010-09-08 13:40:57 +00:00
//Enregistrement des accès à la requête getIdentite
2010-09-14 16:36:59 +00:00
Zend_Registry::get('WsLogger')->info("getIdentite - ip:".
2010-09-08 13:40:57 +00:00
$_SERVER['REMOTE_ADDR'].", login:".$_SERVER['PHP_AUTH_USER'].
", pass:".$_SERVER['PHP_AUTH_PW']);
//Récupérer les paramètres d'accès au webservice scores
$webservicesConfig = Zend_Registry::get('webservicesConfig')->webservice->scores;
$wsdl = !empty($webservicesConfig->wsdl) ? $webservicesConfig->wsdl : null ;
$options = array();
foreach ($webservicesConfig->options as $optionName => $optionValue){
$options[$optionName] = $optionValue;
}
$options['login'] = $_SERVER['PHP_AUTH_USER'];
$options['password'] = $_SERVER['PHP_AUTH_PW'];
2010-09-08 13:40:57 +00:00
//Connexion aux webservices V1
2010-08-30 07:49:44 +00:00
try {
$client = new SoapClient($wsdl, $options);
2010-09-14 16:36:59 +00:00
$O = $client->getIdentite($siret, $id, $forceVerif);
2010-08-30 07:49:44 +00:00
} catch (SoapFault $fault) {
2010-09-14 16:36:59 +00:00
Zend_Registry::get('WsLogger')->err("getIdentite($siret, $id) - ".serialize($fault));
2010-08-30 07:49:44 +00:00
}
2010-09-08 13:40:57 +00:00
//Gestion du retour
2010-08-30 07:49:44 +00:00
$error = new ErrorType();
$error = array_to_object($O['error']);
$result = new IdentiteResultType();
$result = array_to_object($O['result']);
$outputParams = new IdentiteReturnType();
$outputParams->error = $error;
$outputParams->result = $result;
return $outputParams;
}
2010-09-08 13:40:57 +00:00
/**
* Recherche
* @param RechercheEntrepriseType $criteres
2010-09-15 16:18:38 +00:00
* @return RechercheEntrepriseReturnType
2010-09-08 13:40:57 +00:00
*/
2010-09-15 16:18:38 +00:00
function rechercheEntreprise($criteres)
{
2010-09-08 13:40:57 +00:00
/*
$O = $client->searchNomAdr($raisonSociale, $numVoie.' '.$libVoie,
$cp, $ville, false, false, $position,
$tabInfo['nbReponses'], 200, false, false,
$naf);
*/
2010-09-15 16:18:38 +00:00
$error = new ErrorType();
$error = array_to_object($O['error']);
$result = new RechercheEntrepriseResultType();
$results = array_to_object($O['results']);
$outputParams = new RechercheEntrepriseReturnType();
$outputParams->error = $error;
$outputParams->results = $results;
return $outputParams;
2010-09-08 13:40:57 +00:00
}
/**
* Retourne le status du webservice
* @return StatusResultType
*/
2010-09-15 16:18:38 +00:00
function status()
{
/* @todo tester les différents éléments qui peuvent conduire
* à un problème dans les services tel que la connexion à la
* base de données, l'accès FTP, l'accès HTTP, l'accès système de fichier
2010-09-08 13:40:57 +00:00
*/
$error = new StatusResultTypes();
$error->errCode = 0;
$error->errMsg = 'Services disponible';
return $error;
}
2010-08-30 07:49:44 +00:00
}
?>