#!/usr/bin/php Reprise de commande InfoGreffe par le WebService Avec les options --help, -help, -h, et -?, vous obtiendrez cette aide. Utilisation : reprise Reprise des actes en erreur de moins de 120 heures rapport Envoi d'un email listant les commandes en erreur à J-1 rapportcomplet Envoi d'un email listant toutes les commandes en erreur select('commandes_erreur', '*', "erreur!='' AND dateCommande > DATE_SUB(NOW(),INTERVAL 120 HOUR)"); if (count($repErreur)==0) exit; foreach($repErreur as $cmd){ switch($cmd['type']){ case 'acte': $fichier = infogreffe_acte_filename($cmd['siren'], $cmd['ref']); break; case 'bilan': $fichier = infogreffe_bilan_filename($cmd['siren'], $cmd['ref']); break; } $dl = infogreffe_dl($fichier, $cmd['url'], false); if( $dl ) { $data = array('erreur' => '', 'dateReception' => date('Y-m-d H:i:s')); $where = "siren='".$cmd['siren']."' AND type='".$cmd['type']."' AND ref='".$cmd['ref']."' AND dateCommande='".$cmd['dateCommande']."'"; $wdb->update('commandes_erreur', $data, $where); } } } elseif (in_array($argv[1], array('rapport', 'rapportcomplet'))) { require_once realpath(dirname(__FILE__)) . '/../config/prepend.php'; require_once 'common/curl.php'; require_once 'common/mysql.php'; require_once 'sendmail/mail.php'; require_once 'infogreffe/infogreffews.php'; $wdb = new WDB('sdv1'); if ($argv[1] == 'rapportcomplet') { $repErreur = $wdb->select('commandes_erreur', '*', "erreur!='' AND dateReception='0000-00-00 00:00:00' ORDER BY dateCommande ASC"); $sujet = "[Commandes Greffe - Erreur WebService] - Rapport Complet"; } else { $timestamp = mktime(0, 0, 0, date("m"), date("d")-1, date("Y")); $hier = date('Y-m-d', $timestamp); $sujet = "[Commandes Greffe - Erreur WebService] - ".$hier; $repErreur = $wdb->select('commandes_erreur', '*', "(dateCommande BETWEEN '".$hier." 00:00:00' AND '".$hier." 23:59:59') AND erreur!='' AND dateReception='0000-00-00 00:00:00' ORDER BY dateCommande ASC"); } $emailTxt = 'Commandes Greffe - Erreur WebService'; $emailTxt.= '
'; if (count($repErreur)==0) { $emailtTxt.= "Aucune commande en erreur !"; } else { $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; foreach($repErreur as $cmd) { switch($cmd['type']){ case 'acte': $fichier = infogreffe_acte_filename($cmd['siren'], $cmd['ref']); break; case 'bilan': $fichier = infogreffe_bilan_filename($cmd['siren'], $cmd['ref']); break; } //Le fichier existe, alors on a résolu le problème (mauellement ?) if( file_exists(PATH_DATA . '/pdf/' . $fichier) ) { $data = array('erreur' => '', 'dateReception' => date('Y-m-d H:i:s')); $where = "siren='".$cmd['siren']."' AND type='".$cmd['type']."' AND ref='".$cmd['ref']."' AND dateCommande='".$cmd['dateCommande']."'"; $wdb->update('commandes_erreur', $data, $where); } else { //Lister les fichier en erreur $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; $emailTxt.= ''; } } $emailTxt.= ''; $emailTxt.= '
SirenTypeRefDate de commandeURLErreur
'.$cmd['siren'].''.$cmd['type'].''.$cmd['ref'].''.$cmd['dateCommande'].''.$cmd['url'].''.$cmd['erreur'].'
'; $emailTxt.= '
'; $emailTxt = utf8_encode($emailTxt); } //Envoi mail $from = array( 'email' => 'production@scores-decisions.com', 'name' => 'Production' ); $to = array( 0 => array( 'email'=> 'production@scores-decisions.com', 'name' => 'Pieces'), 1 => array( 'email'=> 'supportdev@scores-decisions.com', 'name' => 'Support') ); sendMail($sujet, $emailTxt, $from, $to); }