2012-10-16 07:44:31 +00:00
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
< ? php
include_once ( FWK_PATH . 'common/chiffres.php' );
include_once ( FWK_PATH . 'common/dates.php' );
include_once ( INCLUDE_PATH . 'insee/classMInsee.php' );
include_once ( INCLUDE_PATH . 'partenaires/classMRncs.php' );
include_once ( INCLUDE_PATH . 'partenaires/classMGreffes.php' );
include_once ( FWK_PATH . 'mail/sendMail.php' );
$strInfoScript = 'Usage : ' . basename ( $argv [ 0 ]) . " <option> [SIREN]
2013-06-19 08:24:49 +00:00
Mise <EFBFBD> disposition d 'un dossier dans le flux IMR du lendemain via l' Extranet Infogreffe ( license RNCS IMR ) .
2012-10-16 07:44:31 +00:00
Options :
2013-06-19 08:24:49 +00:00
- d Mode debug ( Verbosit<EFBFBD> au maximum )
2012-10-16 07:44:31 +00:00
" ;
$iDb = new WDB ();
$iRncs = new MRncs ();
$argv = $_SERVER [ 'argv' ];
$tabSiren = array ();
for ( $i = 1 , $j = 0 ; isset ( $argv [ $i ]); $i ++ ) {
if ( substr ( $argv [ $i ], 0 , 1 ) == '-' ) {
switch ( substr ( $argv [ $i ], 1 , 1 )) {
case 'd' : $modeDebug = true ; break ;
/* case 's' : $jourStock = substr ( $argv [ $i ], 3 , 8 ); break ;
case 'j' : $loadInpiLocal = false ; break ;
case 'q' : $loadActesDuJour = false ; break ;
case 'b' : $loadBilans = false ; break ;
case 'i' : $iReprise = substr ( $argv [ $i ], 3 ); break ; */
case '-' :
case '?' : die ( $strInfoScript ); break ;
default : die ( 'Option ' . $argv [ $i ] . ' inconnue !' . EOL ); break ;
}
} else $tabSiren [] = $argv [ $i ];
}
2013-06-19 08:24:49 +00:00
/** Si pas de Siren en param , recherche des IMR <EFBFBD> mettre <EFBFBD> jour en automatique
2012-10-16 07:44:31 +00:00
**/
if ( count ( $tabSiren ) == 0 ) {
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Recherche des dossiers IMR PP <20> mettre <20> jour... " . EOL ;
2012-10-16 07:44:31 +00:00
$nbCJ1Maj = $iDb -> select (
'rncs_entrep' ,
'siren, numGreffe, numRC2, raisonSociale, dateNaiss, lieuNaiss, sexe, cj, capitalMontant, capitalDevise, dateImma, flux, dateUpdate' ,
" cj<2000 AND actif=1 AND (dateNaiss=0 OR sexe='' OR dateImma=0) AND dateUpdate<dateUpdate<'2009-10-01 00:00:00'
AND siren NOT IN ( SELECT siren FROM rncs_demandes ) ORDER BY numRC2 ASC " ,
false , MYSQL_ASSOC , true );
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Il y a $nbCJ1Maj dossiers IMR PP <20> mettre <20> jour. " . EOL ;
2012-10-16 07:44:31 +00:00
$nbDem = 0 ;
while ( $tabTmp = $iDb -> fetch ( MYSQL_ASSOC )) {
$nbDem ++ ;
2013-06-19 08:24:49 +00:00
/** On limite <EFBFBD> 1000 le nombre de demandes possibles car Infogreffe limite
pour l ' instant <EFBFBD> 10 les demandes de MAJ **/
2012-10-16 07:44:31 +00:00
if ( $nbDem > 1000 ) break ;
$tabSiren [] = $tabTmp [ 'siren' ];
$tabEntrep [ $tabTmp [ 'siren' ]] = $tabTmp ;
}
}
$nb = count ( $tabSiren );
$nbDemandesDuJour = rand ( 15 , 65 );
2013-06-19 08:24:49 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - Aujourd'hui nous allons demander la mise <20> jour de $nbDemandesDuJour dossiers IMR... " . EOL ;
2012-10-16 07:44:31 +00:00
$nbDemandesEncours = 0 ;
foreach ( $tabSiren as $i => $siren ) {
$strErr = '' ;
$ret = $iRncs -> majDossierIMR ( $siren );
//print_r($iRncs->infoIMR).EOL;
if ( @ $iRncs -> infoIMR [ 'validation-erreur' ] <> '' )
$strErr .= ' (' . $iRncs -> infoIMR [ 'validation-erreur' ] . ')' ;
2013-06-19 08:24:49 +00:00
if ( $iRncs -> infoIMR [ 'message-erreur' ] == " Vous avez d<> j<EFBFBD> atteint le nombre maximal de demandes de r<> <72> missions autoris<69> es aujourd'hui. Veuillez renouveler votre demande demain. " ) {
2012-10-16 07:44:31 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - $i / $nb - $siren : " . $iRncs -> infoIMR [ 'message-erreur' ] . $strErr . EOL ;
break ;
2013-06-19 08:24:49 +00:00
} elseif ( $iRncs -> infoIMR [ 'message-erreur' ] == " Aucune entreprise trouv<75> e pour ce num<75> ro SIREN " ) {
2012-10-16 07:44:31 +00:00
echo date ( 'Y/m/d - H:i:s' ) . " - $i / $nb - $siren : " . $iRncs -> infoIMR [ 'message-erreur' ] . $strErr . EOL ;
} elseif ( $iRncs -> infoIMR [ 'validation' ]) {
$nbDemandesEncours ++ ;
echo date ( 'Y/m/d - H:i:s' ) . " - $i / $nb - $siren : " . $iRncs -> infoIMR [ 'validation-ok' ] . $strErr . " ( $nbDemandesEncours / $nbDemandesDuJour ) " . EOL ;
if ( $nbDemandesEncours > $nbDemandesDuJour ) break ;
} elseif ( ! $ret ) {
echo date ( 'Y/m/d - H:i:s' ) . " - $i / $nb - $siren : " . $iRncs -> libErreur . $strErr . EOL ;
}
/** @ todo
2013-06-19 08:24:49 +00:00
* - Enregistrer la demande compl<EFBFBD> te avec :
2012-10-16 07:44:31 +00:00
* - le retour On line ( tous les champs )
2013-06-19 08:24:49 +00:00
* - la date de la demande ainsi que la source ( client , privil<EFBFBD> ges , ancienort , etc ... )
* - la date de la r<EFBFBD> ponse IMR
2012-10-16 07:44:31 +00:00
*/
}
die ();
sendMail ( 'production@scores-decisions.com' , 'ylenaour@scores-decisions.com' , 'Chargement des informations Greffes' , $message );
die ();
?>