462 lines
22 KiB
PHP
462 lines
22 KiB
PHP
<?php
|
|
/**
|
|
* crontab
|
|
* 30 9 * * * /home/scores/batch/scripts/getInpiDecisions.php >> /home/scores/batch/shared/sources/log/getInpiDecisions.log
|
|
* 00 19 * * * /home/scores/batch/getInpiDecisions.php >> /home/scores/batch/shared/sources/log/getInpiDecisionsSoir.log
|
|
*/
|
|
|
|
// --- Define path to application directory
|
|
defined('APPLICATION_PATH')
|
|
|| define('APPLICATION_PATH', realpath(__DIR__ . '/../application'));
|
|
|
|
// --- Define application environment
|
|
defined('APPLICATION_ENV')
|
|
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
|
|
|
|
// --- Composer autoload
|
|
require_once realpath(__DIR__ . '/../vendor/autoload.php');
|
|
|
|
// --- Create application, bootstrap, and run
|
|
$application = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini');
|
|
require_once APPLICATION_PATH.'/configs/config.php';
|
|
|
|
$c = new Zend_Config($application->getOptions());
|
|
Zend_Registry::set('config', $c);
|
|
$db = Zend_Db::factory($c->profil->db->metier);
|
|
Zend_Db_Table::setDefaultAdapter($db);
|
|
|
|
// Database
|
|
$config = new \Doctrine\DBAL\Configuration();
|
|
$connectionParams = array(
|
|
'dbname' => $c->profil->db->metier->params->dbname,
|
|
'user' => $c->profil->db->metier->params->username,
|
|
'password' => $c->profil->db->metier->params->password,
|
|
'host' => $c->profil->db->metier->params->host,
|
|
'charset' => 'utf8',
|
|
'driver' => 'pdo_mysql',
|
|
);
|
|
|
|
try {
|
|
$conn = \Doctrine\DBAL\DriverManager::getConnection($connectionParams, $config);
|
|
Zend_Registry::set('doctrine', $conn);
|
|
} catch (\Doctrine\DBAL\DBALException $e) {
|
|
echo "Connection Database impossible.\n";
|
|
exit;
|
|
}
|
|
|
|
|
|
|
|
$table='jo.annonces';
|
|
|
|
function wsLog($service, $siret='', $ref='')
|
|
{
|
|
}
|
|
|
|
define('RNCS_IMR_FTP_HOST', '194.5.119.252');
|
|
define('RNCS_IMR_FTP_LOGIN', 'score');
|
|
define('RNCS_IMR_FTP_PASS', '1eUauTJZ');
|
|
define('RNCS_IMR_FTP_DIR', '/var/home_ftp/score/Send/');
|
|
define('RNCS_IMR_FTP_LOCALDIR', '/home/scores/batch/shared/sources/rncs/extelia/');
|
|
define('RNCS_IMR_BACKUP_DIR', '/home/scores/batch/shared/sources/rncs/imr/');
|
|
|
|
$strInfoScript='Usage : '.basename($argv[0]). " <option> [FICHIERS]
|
|
Chargement du/des informations complémentaires en provenance des actes Infogreffe (license RNCS IMR).
|
|
|
|
Options :
|
|
-d Mode debug (Verbosité au maximum)
|
|
-q Ne pas mettre à jour les listes d'évènements commandés ce jour
|
|
-b Ne pas mettre à jour les listes des nouveaux bilans PDF
|
|
-j Ne pas collecter les évènements INPI (annonces JAL Inpi)
|
|
-s:AAAAMMJJ Reprendre le chargement des annonces JAL Inpi à compter du AAAAMMJJ
|
|
Reprendre les actes INPI du AAAAMMJJ
|
|
-i:XXX Reprendre les accès aux évènements Infogreffe à la ligne XXX
|
|
";
|
|
|
|
$iDb = new Metier_Util_Db();
|
|
$iDbR = new Metier_Util_Db();
|
|
$iInsee = new Metier_Insee_MInsee($iDb);
|
|
$iRncs = new Metier_Partenaires_MRncs($iDb);
|
|
|
|
$nbInsert=$nbDeja=0;
|
|
$nbNatu=$nbDeci=0;
|
|
|
|
$modeDebug=false; // Par défaut, pas de message de debug
|
|
$iReprise=false; // Reprendre les accès Infogreffe à la ligne d'évènenement nouveaux reçu XXX
|
|
|
|
$message=''; // Initialisation du contenu du message d'information
|
|
$loadInpiLocal=true; // Par défaut on charge les évènements INPI (génération des annonces JAL)
|
|
$jourStock=0; // Jour du stock SSAMMJJ (génération des annonces JAL à partir du ...)
|
|
$loadActesDuJour=true; // Par défaut on charge les listes d'évènements commandés ce jour par l'extranet
|
|
$loadBilans=true; // Par défaut on charge les listes de bilans IMAGES disponibles
|
|
|
|
$argv=$_SERVER['argv'];
|
|
|
|
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 !'."\n"); break;
|
|
}
|
|
} else {
|
|
$tabFichLigneCmd[]=$argv[$i];
|
|
}
|
|
}
|
|
|
|
echo date('Y/m/d - H:i:s') . " - Début du traitement des évènements INPI"."\n";
|
|
|
|
$strDateFlux='';
|
|
if ($jourStock>0) {
|
|
$dateMaj=Metier_Util_Date::dateT('Ymd', 'Y-m-d', $jourStock);
|
|
$strDateFlux=" AND dateFlux='$dateMaj' ";
|
|
$message.="Forçage du dernier chargement de la collecte INPI en date du $dateMaj...\r\n";
|
|
echo date('Y/m/d - H:i:s') . " - Forçage de l'accès aux évènements Infogreffe en date du $dateMaj..."."\n";
|
|
}
|
|
|
|
// Date du dernier chargement INPI
|
|
$tabTmp=$iDb->select('jo.rncs_chargements', "nomFichier, dateFlux, nbEvenAnn", "1 $strDateFlux ORDER BY dateFlux DESC LIMIT 0,1", true, MYSQL_ASSOC);
|
|
echo "SELECT nomFichier, dateFlux, nbEvenAnn
|
|
FROM jo.rncs_chargements
|
|
WHERE 1 $strDateFlux ORDER BY dateFlux DESC LIMIT 0,1;".mysql_error()."\n";
|
|
$dateMaj=$tabTmp[0]['dateFlux'];
|
|
$nomFichier=$tabTmp[0]['nomFichier'];
|
|
$nbEvenAnn=$tabTmp[0]['nbEvenAnn'];
|
|
echo "dateMaj='$dateMaj', nomFichier='$nomFichier', nbEvenAnn=$nbEvenAnn"."\n";
|
|
|
|
// Nombre d'évènements chargés
|
|
echo "SELECT e.siren, e.codeInterne, e.dateDepot, e.codeEven, t.libEven, t.codEven, e.flux
|
|
FROM jo.rncs_even e, jo.tabEvenRncs t
|
|
WHERE e.flux='$dateMaj' AND e.codeEven=t.codeEven GROUP BY siren, dateDepot, codeEven;"."\n";
|
|
$nbEven=$iDbR->select('jo.rncs_even e, jo.tabEvenRncs t',
|
|
"e.siren, e.codeInterne, e.dateDepot, e.codeEven, t.libEven, t.codEven, e.flux",
|
|
"e.flux='$dateMaj' AND e.codeEven=t.codeEven GROUP BY siren, dateDepot, codeEven LIMIT 0,100000",
|
|
true, MYSQL_ASSOC, true);
|
|
echo mysql_error()."\n";
|
|
|
|
// Nombre d'évènements déjà mis à jour (complétés)
|
|
$tabTmp=$iDb->select('jo.rncs_even_info', "count(*) AS nb", "flux='$dateMaj'", true, MYSQL_ASSOC);
|
|
$nbEvenMaj=$tabTmp[0]['nb'];
|
|
if ($nbEvenMaj>$nbEven && !$iReprise && $nbEvenAnn>0) {
|
|
$message.="Le dernier chargement INPI date du $dateMaj et contient $nbEvenMaj évènements déjà mis à jour sur les $nbEven évènements du jour !\r\n";
|
|
echo date('Y/m/d - H:i:s') . " - Le dernier chargement INPI date du $dateMaj et contient $nbEvenMaj évènements déjà mis à jour sur les $nbEven évènements du jour !."."\n";
|
|
} else {
|
|
$message.="Le dernier chargement INPI date du $dateMaj et contient $nbEven nouveaux évènements dont $nbEvenMaj à jour.\r\n";
|
|
echo date('Y/m/d - H:i:s') . " - Le dernier chargement INPI date du $dateMaj et contient $nbEven nouveaux évènements dont $nbEvenMaj à jour."."\n";
|
|
$sirenPre=false;
|
|
$iEven=-1;
|
|
while ($even=$iDbR->fetch(MYSQL_ASSOC)) {
|
|
$iEven++;
|
|
if ($iEven<$iReprise) {
|
|
continue;
|
|
}
|
|
|
|
echo "$iEven/$nbEven:".$even['siren'].' le '.$even['dateDepot'].': '.$even['codeEven'].' '.$even['libEven'].' ('.$even['codeInterne'].') ... ';
|
|
|
|
$infogreffe = new Metier_Infogreffe_DocAC();
|
|
$infogreffe->setSiren($even['siren']);
|
|
$tabActes = $infogreffe->getList(true);
|
|
|
|
foreach ($tabActes as $acte) {
|
|
if ($even['dateDepot'] == $acte->DepotDate) {
|
|
if ($acte->ActeDate=='0000-00-00') {
|
|
$dateActe = $even['dateDepot'];
|
|
} else {
|
|
$dateActe = $acte->ActeDate;
|
|
}
|
|
|
|
echo $acte->infos;
|
|
$infos = explode(' : ', $acte->infos);
|
|
if (count($infos)>1) {
|
|
$acteNature = $infos[0];
|
|
}
|
|
|
|
$tabInsert=array(
|
|
'siren' => $even['siren'],
|
|
'codeInterne' => $even['codeInterne'],
|
|
'dateDepot' => $even['dateDepot'],
|
|
'codeEven' => $even['codeEven'],
|
|
'flux' => $even['flux'],
|
|
'depot_num' => $acte->DepotNum,
|
|
'depot_date' => $acte->DepotDate,
|
|
'acte_num' => $acte->ActeNum,
|
|
'acte_date' => $dateActe,
|
|
'acte_type' => $acte->ActeType,
|
|
'acte_lib' => $acte->ActeTypeLabel,
|
|
'acte_pages' => $acte->ActeNumberOfPages,
|
|
'acte_nature' => $acte->ActeDecisionNature,
|
|
'acte_decision' => $acte->ActeDecisionLabel,
|
|
'collecte' => $even['codEven'],
|
|
);
|
|
|
|
if ($iDb->insert('jo.rncs_even_info', $tabInsert)) {
|
|
$nbInsert++;
|
|
if ($acte->ActeDecisionNature<>'') {
|
|
$nbNatu++;
|
|
}
|
|
if ($acte->ActeDecisionLabel<>'') {
|
|
$nbDeci++;
|
|
}
|
|
} else {
|
|
$nbDeja++;
|
|
}
|
|
}
|
|
}
|
|
echo "\n";
|
|
$sirenPre=$even['siren'];
|
|
}
|
|
$message.="$nbInsert évènements avec compléments ajoutés et $nbDeja évènements déjà en base ($nbNatu natures et $nbDeci décisions.\r\n";
|
|
echo date('Y/m/d - H:i:s') ." - $nbInsert évènements avec compléments ajoutés et $nbDeja évènements déjà en base ($nbNatu natures et $nbDeci décisions."."\n";
|
|
$iDb->update('jo.rncs_chargements', array('nbEvenAnn'=>@$iEven*1), "nomFichier='$nomFichier'");
|
|
}
|
|
|
|
if ($loadInpiLocal) {
|
|
/**
|
|
* Evènements importants en collecte INPI
|
|
*/
|
|
if ($jourStock>0) {
|
|
$dateMaj=Metier_Util_Date::dateT('Ymd', 'Y-m-d', $jourStock).' 00:00:00';
|
|
$message.="Forçage du dernier chargement de la collecte INPI en date du $dateMaj...\r\n";
|
|
echo date('Y/m/d - H:i:s') . " - Forçage du dernier chargement de la collecte INPI en date du $dateMaj..."."\n";
|
|
}
|
|
|
|
$AnnDb=$iDb->select('jo.rncs_even_info j, jo.rncs_entrep e, jo.tabEvenRncs l',
|
|
"j.siren, e.sirenValide, l.codEven AS typeEven, j.acte_date AS dateJugement, j.depot_date AS dateSource,
|
|
j.dateInsert, 'PP' AS source, e.triCode AS tribunal, e.raisonSociale, l.codeEven AS codeEvenRncs,
|
|
j.acte_nature, j.acte_decision, e.flux",
|
|
"j.dateInsert>'$dateMaj' AND j.siren=e.siren AND DATEDIFF(NOW(), j.dateDepot)<=60 AND
|
|
j.codeEven=l.codeEven AND
|
|
(l.codEven>0
|
|
OR j.acte_decision LIKE '%FUSION%' OR j.acte_decision LIKE '%ABSORPTION%'
|
|
OR j.acte_decision LIKE '%TRANSMISSION%UNIVERSELLE%PATRIMOINE%'
|
|
OR j.acte_decision LIKE '%TUP%' OR j.acte_decision LIKE '%T.U.P%'
|
|
OR j.acte_decision LIKE '%DISSOLUTION%' OR j.acte_nature LIKE '%DISSOLUTION%'
|
|
OR j.acte_decision LIKE '%MISE%SOMMEIL%'
|
|
OR j.acte_decision LIKE '%APPORT%PARTIEL%ACTIF%'
|
|
OR j.acte_decision LIKE '%SCISSION%'
|
|
) ",
|
|
false, MYSQL_ASSOC);
|
|
$nbAnnonces=count($AnnDb);
|
|
|
|
$message.="Il y a $nbAnnonces énements INPI IMR depuis le dernier chargement du $dateMaj :\r\n";
|
|
echo date('Y/m/d - H:i:s') ." - Il y a $nbAnnonces énements INPI IMR depuis le dernier chargement du $dateMaj."."\n";
|
|
|
|
foreach ($AnnDb as $i=>$tabInsert) {
|
|
$siren=$tabInsert['siren'];
|
|
$dateJugement=$tabInsert['dateJugement'];
|
|
if ($dateJugement=='0000-00-00') {
|
|
$tabInsert['dateJugement']=$tabInsert['dateSource'];
|
|
}
|
|
$typeEven=$tabInsert['typeEven']*1;
|
|
$strEven='';
|
|
if ($typeEven==0) {
|
|
//projet de fusion par absorption
|
|
if (preg_match('/(FUSION|ABSORPTION)/i', $tabInsert['acte_decision'], $matches)) {
|
|
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) {
|
|
$typeEven=2726;
|
|
} else {
|
|
$typeEven=2725;
|
|
}
|
|
} elseif (preg_match('/SCISSION/i', $tabInsert['acte_decision'], $matches)) {
|
|
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) {
|
|
$typeEven=2741;
|
|
} else {
|
|
$typeEven=2740;
|
|
}
|
|
} elseif (preg_match('/TRANSMISSION.{1,3}UNIVERSELLE.{1,5}PATRIMOINE/i', $tabInsert['acte_decision'], $matches) ||
|
|
preg_match('/T.U.P/i', $tabInsert['acte_decision'], $matches) ||
|
|
preg_match('/\bTUP\b/i', $tabInsert['acte_decision'], $matches)) {
|
|
$typeEven=2620;
|
|
} elseif (preg_match('/APPORT.{1,3}PARTIEL.{1,5}ACTIF/i', $tabInsert['acte_decision'], $matches)) {
|
|
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) {
|
|
$typeEven=2665;
|
|
} else {
|
|
$typeEven=2661;
|
|
}
|
|
} elseif (preg_match('/DISSOLUTION/i', $tabInsert['acte_decision'], $matches) ||
|
|
preg_match('/DISSOLUTION/i', $tabInsert['acte_nature'], $matches)) {
|
|
$typeEven=2203;
|
|
} elseif (preg_match('/MISE.{1,9}SOMMEIL/iu', $tabInsert['acte_decision'], $matches)) {
|
|
if (preg_match('/REPRISE/i', $tabInsert['acte_decision'], $matches)) {
|
|
$typeEven=2316;
|
|
} else {
|
|
$typeEven=2206;
|
|
}
|
|
}
|
|
} elseif (preg_match('/(FUSION|ABSORPTION)/i', $tabInsert['acte_decision'], $matches)) {
|
|
if (preg_match('/PROJET/i', $tabInsert['acte_decision'], $matches)) {
|
|
$strEven=2726;
|
|
} else {
|
|
$strEven=2725;
|
|
}
|
|
}
|
|
|
|
$tabInsert['complement']='';
|
|
if ($typeEven==2100 || $typeEven==2101 || $typeEven==2102) { // Modification de capital
|
|
$tabIdentite=$iRncs->getInfosEntrep($siren);
|
|
$tabInsert['montant']=$tabIdentite['capital'];
|
|
//$tabInsert['actionsNb'] ='';
|
|
/** @todo Rechercher l'ancien capital **/
|
|
} elseif ($typeEven==2305) { // Modification de la dénomination
|
|
$tabIdentite=$iRncs->getInfosEntrep($siren);
|
|
$tabInsert['complement'].="Nouvelle dénomination : ".$tabIdentite['raisonSociale'].'. ';
|
|
|
|
// Recherche de l'ancienne RS
|
|
$dateFlux=$tabInsert['flux'];
|
|
$rep=$iDb->select('jo.rncs_modifs',
|
|
'siren, `table`, champs, valeur, flux, dateInsert',
|
|
"siren=$siren AND type='raisonSociale' AND `table`='rncs_entrep'
|
|
AND flux<='$dateFlux' ORDER BY flux DESC LIMIT 0,1", false, MYSQL_ASSOC);
|
|
$modif=@trim($rep[0]['valeur']).'';
|
|
if ($modif<>'') {
|
|
$tabInsert['complement'].="Ancienne dénomination : $modif. ";
|
|
}
|
|
|
|
if ($tabIdentite['sigle']<>'') {
|
|
$tabInsert['complement'].="Sigle : ".$tabIdentite['sigle'].'. ';
|
|
}
|
|
} elseif ($typeEven==2307) { // Modification de la forme juridique
|
|
$tabIdentite=$iRncs->getInfosEntrep($siren);
|
|
$tabInsert['nouvFJ']=$tabIdentite['cj'];
|
|
/** @todo Rechercher l'ancienne FJ **/
|
|
} elseif ($typeEven==2315) {
|
|
switch ($tabInsert['codeEvenRncs']*1) {
|
|
case 34: $tabInsert['complement'].='Changement de Gérant : '; break;
|
|
case 37: $tabInsert['complement'].='Changement de Président : '; break;
|
|
case 40: $tabInsert['complement'].='Modification du Conseil d\'Administration : '; break;
|
|
case 81: $tabInsert['complement'].='Changement de Commissaire aux Comptes : '; break;
|
|
default: $tabInsert['complement'].='Administration : '; break;
|
|
}
|
|
$dirs=$iInsee->getDirigeants($siren, false);
|
|
foreach ($dirs as $nb=>$dir) {
|
|
$tabInsert['complement'].=$dir['Titre'].' : '.@$dir['Civilite'].' '.$dir['Nom'].' '.$dir['Prenom'];
|
|
if (($nb+1)<count($dirs)) {
|
|
$tabInsert['complement'].=', ';
|
|
} else {
|
|
$tabInsert['complement'].='. ';
|
|
}
|
|
}
|
|
} elseif ($typeEven==2320) { // RECONSTITUTION DE LA L'ACTIF NET
|
|
if (preg_match('/MOITIE/i', $tabInsert['acte_nature'], $matches)) {
|
|
$typeEven=2321;
|
|
}
|
|
} elseif ($typeEven==2203 &&
|
|
(preg_match('/SANS/i', $tabInsert['acte_nature'], $matches)) ||
|
|
(preg_match('/SANS/i', $tabInsert['acte_decision'], $matches))
|
|
) {
|
|
// On ignore l'annonce
|
|
continue;
|
|
}
|
|
|
|
unset($tabInsert['codeEvenRncs']);
|
|
unset($tabInsert['flux']);
|
|
//if ($tabInsert['acte_nature']<>'') $tabInsert['complement'].=$tabInsert['acte_nature'].' ';
|
|
if ($tabInsert['acte_decision']<>'') {
|
|
$tabInsert['complement'].=strtolower($tabInsert['acte_decision']).' ';
|
|
}
|
|
unset($tabInsert['acte_nature']);
|
|
unset($tabInsert['acte_decision']);
|
|
if ($strEven<>'') {
|
|
$tabInsert['strEven']=$strEven;
|
|
}
|
|
|
|
//echo "$siren $dateJugement $typeEven"."\n";
|
|
$tabTmp=@$iInsee->getIdentiteLight($tabInsert['siren']);
|
|
$tabInsert['typeEven'] = $typeEven;
|
|
if ($typeEven==0) {
|
|
print_r($tabInsert);
|
|
$mail = new Metier_Util_Mail();
|
|
$mail->send('production@scores-decisions.com', 'ylenaour@scores-decisions.com', 'Chargement des évènements Greffes', "Erreur typeEven=0 ligne n°$i ($dateMaj)"."\n".print_r($tabInsert, true));
|
|
//die();
|
|
}
|
|
$tabInsert['adresse'] = $tabTmp['Adresse'];
|
|
$tabInsert['codePostal'] = $tabTmp['CP'];
|
|
$tabInsert['ville'] = $tabTmp['Ville'];
|
|
if (!$iDb->insert($table, $tabInsert)) {
|
|
if (mysql_errno()==1062) {
|
|
$tabTmp=$iDb->select($table, 'id, siren, typeEven, dateJugement, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, dateSource, dateInsert, source, tribunal, raisonSociale', "siren=$siren AND dateJugement='$dateJugement' AND typeEven=$typeEven", false, MYSQL_ASSOC);
|
|
$tabEnbase=@$tabTmp[0];
|
|
if ($tabEnbase['source']=='PC') {
|
|
unset($tabInsert['source']);
|
|
unset($tabInsert['dateInsert']);
|
|
if (!$iDb->update($table, $tabInsert, "siren=$siren AND dateJugement='$dateJugement' AND typeEven=$typeEven", false, MYSQL_ASSOC)) {
|
|
echo date('Y/m/d - H:i:s') .' - ERREUR : MySql n°'. mysql_errno() .' : '. mysql_error() ." lors de la mise à jour de l'évènement $typeEven en date du $dateJugement pour $siren..."."\n";
|
|
} else {
|
|
$nbAnnUpdateE++;
|
|
}
|
|
}
|
|
} else {
|
|
echo date('Y/m/d - H:i:s') .' - ERREUR : MySql n°'. mysql_errno() .' : '. mysql_error() ." lors de l'ajout de l'évènement $typeEven en date du $dateJugement pour $siren..."."\n";
|
|
}
|
|
} else {
|
|
$nbAnnInsertE++;
|
|
echo date('Y/m/d - H:i:s') ." - Ajout de l'évènement $typeEven en date du $dateJugement pour $siren..."."\n";
|
|
@$tabCptAnn[$typeEven]++;
|
|
}
|
|
}
|
|
|
|
$message.=" $nbAnnInsertE ajouts et $nbAnnUpdateE mises à jours sur $nbAnnonces annonces.\r\n\r\n";
|
|
$message.=print_r(@$tabCptAnn, true);
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de la liste des actes greffe à partir des éléments consultés
|
|
*/
|
|
if ($loadActesDuJour) {
|
|
$today=date('Y-m-d').' 00:00:00';
|
|
$nbDepotsTot=0;
|
|
$tabActes = $iDb->select("sdv1.logs", "siren", "page='greffe_actes' AND dateHeure>='$today' GROUP BY siren", false, MYSQL_ASSOC);
|
|
shuffle($tabActes);
|
|
$nbActesQuoti = count($tabActes);
|
|
if ($nbActesQuoti > 0) {
|
|
foreach ($tabActes as $i=>$acte) {
|
|
echo date('Y/m/d - H:i:s')." - $i/$nbActesQuoti: Mise à jour de la liste des actes pour ".$acte['siren'].'... ';
|
|
$infogreffe = new Metier_Infogreffe_DocAC();
|
|
$infogreffe->setSiren($acte['siren']);
|
|
$nbDepots = count($infogreffe->getList(true));
|
|
echo date('Y/m/d - H:i:s')."$nbDepots dépot(s)."."\n";
|
|
$nbDepotsTot+=$nbDepots;
|
|
}
|
|
}
|
|
$message.="$nbActesQuoti listes d'évènements mises à jours pour un total de $nbDepotsTot dépots (listes du jour).\r\n";
|
|
echo date('Y/m/d - H:i:s')." - $nbActesQuoti listes d'évènements mises à jours pour un total de $nbDepotsTot dépots (listes du jour)."."\n";
|
|
}
|
|
|
|
/**
|
|
* Mise à jour de la liste des bilans greffe à partir des bilans déposés
|
|
*/
|
|
if ($loadBilans) {
|
|
$tabTmp = $iDb->select('jo.bilans_deposes', 'MAX(DATE(dateInsert)) AS lastMAJ', '1', true, MYSQL_ASSOC);
|
|
$lastUpdate = $tabTmp[0]['lastMAJ'];
|
|
$message.="La dernière mise à jour des bilans Greffes date du $lastUpdate !\r\n";
|
|
echo date('Y/m/d - H:i:s') . " - La dernière mise à jour des bilans Greffes date du $lastUpdate !"."\n";
|
|
|
|
$bilansDep = $iDb->select('jo.bilans_deposes', "siren, nicSiege, dateProvPartenaire, dateExercice, dureeExercice, monnaie, chiffreAffaire", "dateInsert>'$lastUpdate 00:00:00'", true, MYSQL_ASSOC);
|
|
echo mysql_error();
|
|
|
|
$nbBilans = count($bilansDep);
|
|
$message.="Il y a $nbBilans listes de bilans PDF à mettre à jour !\r\n";
|
|
echo date('Y/m/d - H:i:s') . " - Il y a $nbBilans listes de bilans PDF à mettre à jour !"."\n";
|
|
|
|
if ($nbBilans > 0) {
|
|
foreach ($bilansDep as $iBilan=>$bil) {
|
|
echo date('Y/m/d - H:i:s') . " - $iBilan/$nbBilans: Mise à jour de la liste de bilans PDF pour ".$bil['siren']."... \n";
|
|
$infogreffe = new Metier_Infogreffe_DocBI();
|
|
$infogreffe->setSiren($bil['siren']);
|
|
$infogreffe->getList(true);
|
|
}
|
|
}
|
|
|
|
$message.="Fin de la mise à jour des listes de bilans PDF.\r\n";
|
|
echo date('Y/m/d - H:i:s') . " - Fin de la mise à jour des listes de bilans PDF."."\n";
|
|
}
|
|
|
|
//Envoi du mail d'information
|
|
$mail = new Metier_Util_Mail();
|
|
$mail->send('production@scores-decisions.com', 'suivi@scores-decisions.com', 'Chargement des informations Greffes', $message);
|