issue #0001095 : Intégration des nouveaux messages envoyés par le batch getKbis

This commit is contained in:
Michael RICOIS 2012-07-04 16:01:11 +00:00
parent 8cb2fc67b0
commit 850cb32529

View File

@ -10,7 +10,7 @@ class Pieces extends WsScore
* @param string $options
* @return string
*/
public function getKbis($siren, $options = '')
public function getKbis($siren, $options = '')
{
$this->authenticate();
@ -30,52 +30,61 @@ class Pieces extends WsScore
//Le fichier existe avec une date de validité inférieure à 1 jour
$filepdf = DOC_WEB_LOCAL.'kbis/'.$siren.'.pdf';
if ( file_exists($filepdf) && date('Ymd', filemtime($filepdf))==date('Ymd') ) {
if ( file_exists($filepdf) && date('Ymd', filemtime($filepdf))==date('Ymd') ) {
$this->wsLog('kbis', $siren, basename($filepdf));
return $hostname.'/data/kbis/'.basename($filepdf);
} else {
} else {
$file = null;
//On vérifie quand même si il n'existe pas une commande en html
$dir = DOC_WEB_LOCAL.'kbis/'.date('Ymd');
if (file_exists($dir)) {
foreach ( glob($dir.'/'.$siren.'-*.html') as $file ) {
foreach ( glob($dir.'/'.$siren.'-*.html') as $file ) {
break;
}
}
if (empty($file)) {
//Téléchargement du KBIS
$result = exec('php '.APPLICATION_PATH.'/../batch/getKbis.php --siren '.$siren);
if ( $result=='ERREUR' ) {
//Téléchargement du KBIS
$result = exec('php '.APPLICATION_PATH.'/../batch/getKbis.php --siren '.$siren);
//@todo : si $result est une chaine qui se termine par ".html"
if (substr($result,-5)=='.html')
{
$file = DOC_WEB_LOCAL.'kbis/'.date('Ymd').'/'.$result;
$this->wsLog('kbis', $siren, $result);
}
elseif ( $result!='ERREUR')
{
throw new SoapFault('MSG',$result);
}
else
{
$text = 'La récupération du KBIS a échoué sur le siren : '.$siren;
sendMail(
'production@scores-decisions.com',
'supportdev@scores-decisions.com',
'[ERREUR KBIS]',
$text);
'production@scores-decisions.com',
'supportdev@scores-decisions.com',
'[ERREUR KBIS]',
$text);
throw new SoapFault('0000',"Erreur récupération du kbis");
}
$file = DOC_WEB_LOCAL.'kbis/'.date('Ymd').'/'.$result;
$this->wsLog('kbis', $siren, $result);
}
} else {
$this->wsLog('kbis', $siren, basename($file));
}
}
//Génération du PDF
require_once 'wkhtmltopdf/wkhtmltopdf.php';
$pdf = new wkhtmltopdf();
$fileOut = $pdf->exec($file, $filepdf);
$fileOut = $pdf->exec($file, $filepdf);
if ( !file_exists($filepdf) ) {
throw new SoapFault('0000',"Fichier PDF introuvable");
throw new SoapFault('0000',"Fichier PDF introuvable");
}
return $hostname.'/data/kbis/'.basename($filepdf);
}
}
}
}