850 lines
43 KiB
PHP
850 lines
43 KiB
PHP
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
|
|
<?php
|
|
$table='annonces';
|
|
/*
|
|
ALTER TABLE `annonces` ADD `inter5type` CHAR( 1 ) NOT NULL AFTER `inter4nom`,
|
|
ADD `inter5id` SMALLINT( 5 ) UNSIGNED ZEROFILL NOT NULL AFTER `inter5type`,
|
|
ADD `inter5nom` VARCHAR( 255 ) NOT NULL AFTER `inter5id`;
|
|
*/
|
|
include_once(FWK_PATH.'common/chiffres.php');
|
|
include_once(FWK_PATH.'common/dates.php');
|
|
include_once(FWK_PATH.'common/ftp.php');
|
|
include_once(INCLUDE_PATH.'partenaires/classMGreffes.php');
|
|
include_once(INCLUDE_PATH.'insee/classMInsee.php');
|
|
include_once(INCLUDE_PATH.'bodacc/classMBodacc.php');
|
|
include_once(FWK_PATH.'mail/sendMail.php');
|
|
include_once(INCLUDE_PATH.'partenaires/classMRncs.php');
|
|
include_once(INCLUDE_PATH.'partenaires/classMBourse.php');
|
|
|
|
define('CSF_FTP_DIR', '/home/data/ftp/creditsafe/send/');
|
|
define('CSF_BACKUP_DIR', '/home/data/jal/creditsafe/');
|
|
|
|
$strInfoScript='Usage : '.basename($argv[0]). " <option>
|
|
Chargement du/des fichier défaillances en provenance de CSF.
|
|
|
|
Options :
|
|
-j Ne pas charger les jugements INPI S&D en Amont
|
|
-c Ne pas charger les défaillances CSF
|
|
-d Mode debug (Verbosité au maximum)
|
|
-i Ne pas poser de questions interactives.
|
|
-t Charger en test (implique -j -d)
|
|
|
|
";
|
|
$iDb=new WDB('jo');
|
|
$iInsee=new MInsee();
|
|
$iBodacc=new MBodacc();
|
|
$iRncs=new MRncs();
|
|
$iGreffe=new MGreffes();
|
|
|
|
$nbSiretValides=$nbSiretInvalides=$nbInsert=$nbUpdate=$nbSiretRetraitement=0;
|
|
$modeDebug=false; // Mode débug
|
|
$questions=true; // Questions interactives autorisées
|
|
$loadInpiLocal=true; // Charger d'abord les derniers jugements INPI IMR locaux
|
|
$loadCSF=true; // Charger les jugements Greffes via CSF
|
|
$tabFichier=$tabFichLigneCmd=array();
|
|
$message=''; // Initialisation du mail d'exécution du traitement
|
|
|
|
$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 'i': $questions=false; break;
|
|
case 'j': $loadInpiLocal=false; break;
|
|
case 'c': $loadCSF=false; break;
|
|
case 't': $table='annonces2';
|
|
$modeDebug=$questions=true;
|
|
$loadInpiLocal=false;
|
|
break;
|
|
case '-':
|
|
case '?': die($strInfoScript); break;
|
|
default: die('Option '. $argv[$i] . " inconnue !\n");
|
|
}
|
|
} else $tabFichLigneCmd[]=$argv[$i];
|
|
}
|
|
|
|
if (count($tabFichLigneCmd)==0) {
|
|
$dh = opendir(CSF_FTP_DIR);
|
|
while (false !== ($filename = readdir($dh))) {
|
|
if ($filename<>'.' && $filename<>'..' && substr($filename, -4)=='.csv')
|
|
$tabFichier[] = $filename;
|
|
}
|
|
sort($tabFichier);
|
|
} else $tabFichier=$tabFichLigneCmd;
|
|
|
|
if ($loadInpiLocal) {
|
|
|
|
$ret=$iGreffe->getListeCessions();
|
|
$nbInsert=$ret['insert'];
|
|
$nbDeja=$ret['update'];
|
|
$nbTot=$nbInsert+$nbDeja;
|
|
$message.="Il y a $nbTot annonce(s) RJ avec cessions dont $nbInsert nouvelles ($nbDeja déjà en base).\r\n";
|
|
echo date('Y/m/d - H:i:s') ." - Il y a $nbTot annonce(s) RJ avec cessions dont $nbInsert nouvelles ($nbDeja déjà en base).".EOL;
|
|
|
|
$ret=$iGreffe->getListeCessions('lj');
|
|
$nbInsert=$ret['insert'];
|
|
$nbDeja=$ret['update'];
|
|
$nbTot=$nbInsert+$nbDeja;
|
|
$message.="Il y a $nbTot annonce(s) LJ avec cessions dont $nbInsert nouvelles ($nbDeja déjà en base).\r\n";
|
|
echo date('Y/m/d - H:i:s') ." - Il y a $nbTot annonce(s) LJ avec cessions dont $nbInsert nouvelles ($nbDeja déjà en base).".EOL;
|
|
|
|
$nbAnnUpdateJ=$nbAnnInsertJ=0; // Jugements
|
|
$nbAnnUpdateE=$nbAnnInsertE=0; // Evènements
|
|
$tabTmp=$iDb->select($table, 'MAX(dateInsert) as lastInsert',"source='PP' AND typeEven<2000", false, MYSQL_ASSOC);
|
|
$dateMaj=$tabTmp[0]['lastInsert'];
|
|
//$dateMaj='2009-07-01 01:00:00';
|
|
|
|
/**
|
|
** Jugements INPI
|
|
**/
|
|
$AnnDb=$iDb->select('rncs_jugements j, rncs_entrep e',
|
|
"j.siren, e.sirenValide, j.codeEven AS typeEven, j.dateEffet AS dateJugement,
|
|
adm1type AS inter1type, adm1id AS inter1id, CONCAT(adm1nom,' ',adm1adr1,' ',adm1adr2,' ',adm1adrCP,' ',adm1adrVille) as inter1nom,
|
|
adm2type AS inter2type, adm2id AS inter2id, CONCAT(adm2nom,' ',adm2adr1,' ',adm2adr2,' ',adm2adrCP,' ',adm2adrVille) as inter2nom,
|
|
j.flux AS dateSource, j.dateInsert, 'PP' AS source, e.triCode AS tribunal, e.raisonSociale",
|
|
"j.dateInsert>'$dateMaj' AND j.siren=e.siren AND DATEDIFF(NOW(), j.dateEffet)<=90", false, MYSQL_ASSOC);
|
|
$nbAnnonces=count($AnnDb);
|
|
$message.="Il y a $nbAnnonces annonce(s) jugements INPI IMR depuis le dernier chargement du $dateMaj :\r\n";
|
|
echo date('Y/m/d - H:i:s') ." - Il y a $nbAnnonces annonce(s) jugements INPI IMR depuis le dernier chargement du $dateMaj.".EOL;
|
|
|
|
foreach ($AnnDb as $i=>$tabInsert) {
|
|
$siren=$tabInsert['siren'];
|
|
$dateJugement=$tabInsert['dateJugement'];
|
|
$typeEven=$tabInsert['typeEven'];
|
|
//echo "$siren $dateJugement $typeEven".EOL;
|
|
//$tabTmp=@$iInsee->getIdentiteEntreprise($tabInsert['siren']);
|
|
$tabTmp=@$iInsee->getIdentiteLight($tabInsert['siren']);
|
|
$tabInsert['adresse'] = $tabTmp['Adresse'];
|
|
$tabInsert['codePostal'] = $tabTmp['CP'];
|
|
$tabInsert['ville'] = $tabTmp['Ville'];
|
|
// On recherche s'il y a eu un même jugement au cours de 3 derniers mois
|
|
$tabTmp=$iDb->select($table, 'id, siren, typeEven, dateJugement, dateCessationPaiement, inter1type, inter1id, inter1nom, inter2type, inter2id, inter2nom, inter3type, inter3id, inter3nom, inter4type, inter4id, inter4nom,
|
|
/*inter5type, inter5id, inter5nom,*/ dateSource, dateInsert, source, tribunal, raisonSociale',"siren=$siren AND ABS(DATEDIFF(dateJugement, '$dateJugement'))<60 AND typeEven=$typeEven", false, MYSQL_ASSOC);
|
|
echo date ('Y/m/d - H:i:s') ." - Mise à jour du jugement $typeEven en date du $dateJugement pour $siren : ".count($tabTmp).EOL;
|
|
$tabEnbase=$tabTmp[0];
|
|
if (isset($tabEnbase['id'])) {
|
|
$dateJugementEnBase=$tabEnbase['dateJugement'];
|
|
// On garde la source Originel
|
|
unset($tabInsert['source']);
|
|
unset($tabInsert['dateInsert']);
|
|
|
|
if ($dateJugementEnBase<>$dateJugement) {
|
|
if ($tabEnbase['source']<>'GC') {
|
|
echo "ATTENTION : JUGEMENT UN AUTRE JOUR DEJA EN BASE ($dateJugementEnBase<>$dateJugement) :".EOL;
|
|
}
|
|
}
|
|
else
|
|
echo 'JUGEMENT le même JOUR déjà en base :'.EOL;
|
|
|
|
// On liste les types de mandataires enregistrés par les greffes ou autre
|
|
$tabMandEnBase=$tabMandSav=array();
|
|
for ($iMand=1;$iMand<6;$iMand++)
|
|
if (trim($tabEnbase['inter'.$iMand.'type'])<>'')
|
|
$tabMandEnBase[$iMand]=trim($tabEnbase['inter'.$iMand.'type']);
|
|
|
|
// On garde les infos mandataires déjà en base et correctement renseignées
|
|
for ($iInsert=1;$iInsert<5;$iInsert++) {
|
|
for ($iMand=1; $iMand<6 && isset($tabMandEnBase[$iMand]);$iMand++)
|
|
if (in_array($tabInsert['inter'.$iInsert.'type'], $tabMandEnBase)) {
|
|
if ($tabInsert['inter'.$iInsert.'type']==$tabMandEnBase[$iMand]) {
|
|
if ($tabEnbase['inter'.$iMand.'type']<>'')
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['type'] =$tabInsert['inter'.$iInsert.'type'];
|
|
else
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['type'] =$tabInsert['inter'.$iMand.'type'];
|
|
|
|
if ($tabEnbase['inter'.$iMand.'id']*1==0)
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['id'] =$tabInsert['inter'.$iInsert.'id'];
|
|
else
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['id'] =$tabEnbase['inter'.$iMand.'id'];
|
|
|
|
if ($tabEnbase['inter'.$iMand.'nom']<>'')
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['nom'] =$tabInsert['inter'.$iInsert.'nom'];
|
|
else
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['nom'] =$tabInsert['inter'.$iMand.'nom'];
|
|
}
|
|
} else {
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['type'] =$tabEnbase['inter'.$iMand.'type'];
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['id'] =$tabEnbase['inter'.$iMand.'id'];
|
|
$tabMandSav[$tabMandEnBase[$iMand]]['nom'] =$tabEnbase['inter'.$iMand.'nom'];
|
|
}
|
|
}
|
|
|
|
$iInsert=1;
|
|
foreach ($tabMandEnBase as $typeMand) {
|
|
$tabInsert['inter'.$iInsert.'type']=$tabMandSav[$typeMand]['type'];
|
|
$tabInsert['inter'.$iInsert.'id']=$tabMandSav[$typeMand]['id'];
|
|
$tabInsert['inter'.$iInsert.'nom']=$tabMandSav[$typeMand]['nom'];
|
|
$iInsert++;
|
|
if ($iInsert==6) {
|
|
sendMail('production@scores-decisions.com', 'support@scores-decisions.com', 'Erreur : Chargement annonces Greffes', "Attention, plus de 4 intervenants dans la procédure pour $siren".EOL.print_r($tabMandSav, true).EOL.
|
|
"Annonce en base :".EOL.
|
|
print_r($tabEnbase, true).EOL.
|
|
"Informations à mettre à jour :".EOL.
|
|
print_r($tabInsert, true).EOL);
|
|
//die("Trop d'intervenants".EOL);
|
|
}
|
|
}
|
|
echo 'EN BASE :'.EOL;
|
|
print_r($tabEnbase);
|
|
echo 'MODIFICATIONS :'.EOL;
|
|
print_r($tabInsert);
|
|
echo 'Mandataires :'.EOL;
|
|
print_r($tabMandSav);
|
|
if ($modeDebug) $line = trim(fgets(STDIN));
|
|
|
|
// On met toujours la date INPI en base !
|
|
if (!$iDb->update($table, $tabInsert,"siren=$siren AND dateJugement='$dateJugementEnBase' AND typeEven=$typeEven", false, MYSQL_ASSOC)) {
|
|
echo date ('Y/m/d - H:i:s') ." - A la mise à jour sur $table :".EOL;
|
|
print_r($tabInsert);
|
|
echo date ('Y/m/d - H:i:s') .' - ERREUR : MySql n°'. mysql_errno() .' : '. mysql_error() ." lors de la mise à jour du jugement $typeEven en date du $dateJugement pour $siren...".EOL;
|
|
} else {
|
|
$nbAnnUpdateJ++;
|
|
if ($modeDebug) echo date('Y/m/d - H:i:s') ." - Mise à jour du jugement $typeEven en date du $dateJugement pour $siren...".EOL;
|
|
}
|
|
} else {
|
|
|
|
if (// Pour les Procol suivantes, on redemande le sirenage et surtout l'affectation du code Even !!!
|
|
$tabInsert['typeEven']*1==1505 || // Appel de jugement
|
|
$tabInsert['typeEven']*1==1506 || // Infirmation Jugement
|
|
$tabInsert['typeEven']*1==1507 || // Extrait d'arrêt de la cour d'appel
|
|
$tabInsert['typeEven']*1==1515 || // Arrêt divers
|
|
$tabInsert['typeEven']*1==1517 || // Rectification d'une erreur matérielle
|
|
$tabInsert['typeEven']*1==1520 || // Ordonnance
|
|
$tabInsert['typeEven']*1==1525 || // Appel du ministère public
|
|
$tabInsert['typeEven']*1==1999) { // Autre procol)
|
|
$tabInsert['sirenValide']=0;
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $i : Annonce INPI à retraiter manuellement ". $tabInsert['siren'] .' !'.EOL;
|
|
$nbSiretRetraitement++;
|
|
}
|
|
|
|
if (!$iDb->insert($table, array_merge($tabInsert,array('dateInsert'=>date('YmdHis'))))) {
|
|
echo date ('Y/m/d - H:i:s') ." - A l'insertion sur $table :".EOL;
|
|
print_r($tabInsert);
|
|
echo date ('Y/m/d - H:i:s') .' - ERREUR : MySql n°'. mysql_errno() .' : '. mysql_error() ." lors de l'insertion du jugement $typeEven en date du $dateJugement pour $siren...".EOL;
|
|
}
|
|
|
|
/*
|
|
echo 'JUGEMENT LE MEME JOUR DEJA EN BASE :'.EOL;
|
|
print_r($tabEnbase);
|
|
echo 'MODIFICATIONS :'.EOL;
|
|
print_r($tabInsert);
|
|
$line = trim(fgets(STDIN));
|
|
}
|
|
} else
|
|
echo date ('Y/m/d - H:i:s') .' - ERREUR : MySql n°'. mysql_errno() .' : '. mysql_error() ." lors de l'ajout du jugement $typeEven en date du $dateJugement pour $siren...".EOL;
|
|
} else {*/
|
|
$nbAnnInsertJ++;
|
|
if ($modeDebug) echo date('Y/m/d - H:i:s') ." - Ajout du jugement $typeEven en date du $dateJugement pour $siren...".EOL;
|
|
}
|
|
}
|
|
$message.=" $nbAnnInsertJ ajouts et $nbAnnUpdateJ mises à jours sur $nbAnnonces annonces et $nbSiretRetraitement annonces à retraiter !\r\n\r\n".EOL;
|
|
} else
|
|
echo date('Y/m/d - H:i:s') ." - On ignore le chargement des annonce(s) jugements INPI IMR !".EOL;
|
|
|
|
if (count($tabFichier)>0 || count($tabFichLigneCmd)>0) {
|
|
if (!$loadCSF)
|
|
die(date ('Y/m/d - H:i:s') . " - On ignore le chargement des défaillances".EOL);
|
|
|
|
echo date ('Y/m/d - H:i:s') . " - Début du traitement de chargement des défaillances".EOL;
|
|
|
|
global $tabCodeEven;
|
|
$tabCodeEven=array( 'LJ' => 1305, // Liquidation Judiciaire
|
|
'LJS' => 1306, // Liquidation Judiciaire Simplifiee
|
|
'PDS' => 1100, // Procedure De Sauvegarde
|
|
'PS' => 1101, // Plan De Sauvegarde
|
|
'RJ' => 1200, // Redressement Judiciaire
|
|
'RJS' => 1200, // Redressement Judiciaire Simplifié ?
|
|
'CCJ_DIV'=>1999, // Autres jugements et ordonnances
|
|
'CI' => 1503, // Clôture pour insuffisance d'actif
|
|
'CSL' => 1307, // Conversion de la sauvegarde en LJ
|
|
'CSR' => 1201, // Conversion de la sauvegarde en RJ
|
|
'DOP' => 1215, // Désignation des organes de procédure
|
|
'EC' => 1203, // Dépôt de l'état de collocation
|
|
'EOPC' => 1511, // Cloture du plan de cession
|
|
'EOPDS' => 1500, // Cloture de la procédure de sauvegarde
|
|
'EOPS' => 1513, // Cloture du plan de sauvegarde
|
|
'EORJ' => 1512, // Cloture de la procédure de redressement judiciaire
|
|
'EXLJ' => 1417, // Extension de la liquidation judiciaire
|
|
'EXPDS' => 1419, // Extension de la procédure de sauvegarde
|
|
'EXRJ' => 1418, // Extension de la procédure de redresseent judiciaire
|
|
'FP' => 1600, // Faillite personnelle
|
|
'JCC' => 1501, // Jugement de clôture après cession
|
|
'JEP' => 1502, // Extinction du passif
|
|
'JIG' => 1601, // Interdiction de gérer
|
|
'LB' => 1603, // Liquidation de biens
|
|
'PC' => 1411, // Plan de cession
|
|
'PCL' => 1411, // Plan de cession avec location-gérance
|
|
'PCM' => 1408, // Jugement lié au plan de cession
|
|
'PCP' => 1412, // Plan de cession partielle
|
|
'PCR' => 1413, // Plan de continuation/Redressement
|
|
'PCRM' => 1409, // Jugement lié au plan de continuation/redressement
|
|
'PR' => 1407, // Jugement lié au projet de répartition
|
|
'PSM' => 1407, // Jugement lié au plan de sauvegarde
|
|
'RGJ' => 1209, // Règlement judiciaire
|
|
|
|
'STOP_LJ'=>1544, // Rétractation de jugement de liquidation judiciaire
|
|
'STOP_PCL'=>1506, // Rétractation de jugement => Infirmation Jugement
|
|
'STOP_RJ'=>1543, // Rétractation de jugement de redressement judiciaire
|
|
|
|
'CRE' => 1210, // Jugement lié aux créances => Production de titres et créances
|
|
'AMP' => 1525, // Appel du ministère public => Appel de jugement
|
|
'HC' => 1445, // Homologation de concordat => Jugement d'homologation de l'accord
|
|
'HP' => 1460, // Plan homologué => Jugement d'homologation de l'accord
|
|
|
|
'CP' => 1010, // Cessation de paiement
|
|
'PA' => 1430, // Jugement autorisant la poursuite d'activité
|
|
'PUB' => 1700, // Décision soumise à publicité
|
|
'SEP' => 1435, // Suspension de l'éxecution provisoire
|
|
'SP' => 1436, // Suspension provisoire des poursuites
|
|
);
|
|
/*
|
|
elseif ($libEven=='Liquid.judiciaire Simplifiee') $typeEven='1306';
|
|
elseif ($libEven=='Plan De Cession') $typeEven='1411';
|
|
elseif ($libEven=='
|
|
elseif ($libEven=='Plan De Redressement') $typeEven='1414';
|
|
elseif ($libEven=='Conciliation') $typeEven='1150';
|
|
elseif ($libEven=='Infirmat Liquid Judiciaire') $typeEven='1506';
|
|
*/
|
|
|
|
|
|
function getCodeEven($codeEven) {
|
|
global $tabCodeEven;
|
|
return $tabCodeEven[$codeEven];
|
|
}
|
|
|
|
for ($i=0; isset($tabFichier[$i]); $i++)
|
|
{
|
|
$nomFichier =$tabFichier[$i];
|
|
|
|
$fp=fopen(CSF_FTP_DIR.$nomFichier, 'r');
|
|
if (!$fp) {
|
|
echo date ('Y/m/d - H:i:s')." - Erreur : Impossible d'ouvrir le fichier n°$i à traiter (".$nomFichier.")".EOL;
|
|
echo date ('Y/m/d - H:i:s') . " - Fin du traitement".EOL;
|
|
die();
|
|
}
|
|
|
|
$nbLignes=0; // Nombre de ligne du fichier
|
|
while (!feof($fp))
|
|
{
|
|
$nbLignes++;
|
|
$a = trim(fgets($fp, 1024));
|
|
}
|
|
|
|
echo date ('Y/m/d - H:i:s')." - Début du traitement du fichier n°$i, $nomFichier ($nbLignes lignes à traiter) !".EOL;
|
|
|
|
//$finFichier=false;
|
|
$ligne=1;
|
|
rewind($fp);
|
|
|
|
/** Traitement de la 1ère ligne **/
|
|
$a = trim(fgets($fp, 2048));
|
|
$tab=explode("\t", $a);
|
|
$erreur='';
|
|
if (strtoupper($tab[ 0])<>'REF_CLIENT') $erreur.='Ligne 1, Champ 1 : libellé REF_CLIENT attentu';
|
|
if (strtoupper($tab[ 1])<>'DATE_FRAICHEUR') $erreur.='Ligne 1, Champ 2 : libellé DATE_FRAICHEUR attentu';
|
|
if (strtoupper($tab[ 2])<>'RCS') $erreur.='Ligne 1, Champ 3 : libellé RCS attentu';
|
|
if (strtoupper($tab[ 3])<>'RAISON_SOCIALE') $erreur.='Ligne 1, Champ 4 : libellé RAISON_SOCIALE attentu';
|
|
if (strtoupper($tab[ 4])<>'ADRESSE1') $erreur.='Ligne 1, Champ 5 : libellé ADRESSE1 attentu';
|
|
if (strtoupper($tab[ 5])<>'ADRESSE2') $erreur.='Ligne 1, Champ 6 : libellé ADRESSE2 attentu';
|
|
if (strtoupper($tab[ 6])<>'ADRESSE3') $erreur.='Ligne 1, Champ 7 : libellé ADRESSE3 attentu';
|
|
if (strtoupper($tab[ 7])<>'CCJ_CSFR') $erreur.='Ligne 1, Champ 8 : libellé CCJ_CSFR attentu';
|
|
if (strtoupper($tab[ 8])<>'CCJ_DATE') $erreur.='Ligne 1, Champ 9 : libellé CCJ_DATE attentu';
|
|
if (strtoupper($tab[ 9])<>'TRIBUNAL') $erreur.='Ligne 1, Champ 10 : libellé TRIBUNAL attentu';
|
|
if (strtoupper($tab[10])<>'MANDATAIRE') $erreur.='Ligne 1, Champ 11 : libellé MANDATAIRE attentu';
|
|
if (strtoupper($tab[11])<>'REF_CSFR') $erreur.='Ligne 1, Champ 12 : libellé REF_CSFR attentu';
|
|
//Ref_client date_fraicheur RCS Raison_sociale adresse1 adresse2 adresse3 CCJ_CSFR
|
|
//CCJ_date Tribunal mandataire Ref_csfr
|
|
|
|
if ($erreur<>'') {
|
|
echo date ('Y/m/d - H:i:s') . " - Erreur : $erreur !".EOL;
|
|
echo date ('Y/m/d - H:i:s') . " - Fin du traitement".EOL;
|
|
die();
|
|
}
|
|
|
|
//$dateInsert=date('YmdHis');
|
|
|
|
while (!feof($fp))
|
|
{
|
|
$ligne++;
|
|
$a = trim(fgets($fp, 1024));
|
|
if ($a=='') continue;
|
|
|
|
//if ($modeDebug) echo "Ligne $ligne Déb: '$a'".EOL;
|
|
|
|
//unset($tabErreur); $nbErr=0;
|
|
$tab=explode("\t", $a);
|
|
|
|
$tabAnn=array();
|
|
|
|
if ($tab[0]<>'SandD')
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Champs REF_CLIENT différent de 'SandD' (".$tab[0].') !'.EOL;
|
|
|
|
$siren=$tabAnn['siren'] = $tab[2];
|
|
|
|
if (!$iInsee->valideSiren($tabAnn['siren'])) {
|
|
$tabAnn['sirenValide']=0;
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Champs SIREN invalide ". $tabAnn['siren'] .' !'.EOL;
|
|
$nbSiretInvalides++;
|
|
} else {
|
|
$tabAnn['sirenValide']=1;
|
|
$nbSiretValides++;
|
|
}
|
|
$tabAnn['raisonSociale'] = $tab[3];
|
|
if (strlen($tabAnn['raisonSociale'])>60)
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Champs RAISON_SOCIALE de longueur ". strlen($tabAnn['raisonSociale']) .' !'.EOL;
|
|
|
|
$tabAnn['adresse'] = $tab[4];
|
|
$cpVille = $tab[5];
|
|
$tabAnn['codePostal'] = substr($cpVille,0,5);
|
|
$tabAnn['ville'] = trim(substr($cpVille,5));
|
|
$dep=substr($cpVille,0,2)*1;
|
|
if (!$iInsee->isDepartement($dep)) {
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Département '$dep' inconnu !".EOL;
|
|
//die($a);
|
|
//echo '?';
|
|
//$line = trim(fgets(STDIN));
|
|
}
|
|
|
|
$dateIn = $tab[1];
|
|
if (strlen($dateIn)<>19)
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Champs DATE_FRAICHEUR de longueur ". strlen($dateIn) .' !'.EOL;
|
|
$tabAnn['dateSource'] = /*@WDate::dateT('Y-m-d','Y-m-d',*/$dateIn/*)*/;
|
|
/* $dateIn = $tab[6];
|
|
$dateOut=@WDate::dateT('m/d/Y','Y-m-d',$dateIn);
|
|
if ($dateIn<>'') $tabAnn['naissance_date']=$dateOut;
|
|
else $tabAnn['naissance_date']='0000-00-00';*/
|
|
|
|
$dateJugeKbis = $tab[8];
|
|
if (strlen($dateJugeKbis)<>19)
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Champs CCJ_DATE de longueur ".strlen($dateJugeKbis).' !'.EOL;
|
|
else
|
|
$dateJugeKbis=Wdate::dateT('Y-m-d', 'Ymd', $dateJugeKbis);
|
|
|
|
$codeJugementCSF = $tab[7];
|
|
$tabAnn['typeEven'] = getCodeEven($codeJugementCSF)*1;
|
|
if ($tabAnn['typeEven']==0) {
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Champs CCJ_CSFR (Code Jugement CSF) inconnu '$codeJugementCSF' !".EOL;
|
|
}
|
|
|
|
$source= trim($tab[11]);
|
|
if ($source=='G' || $source=='I'/* || $source=='P'*/) {
|
|
//if ($modeDebug) echo "Ligne $ligne SRC: '$a'".EOL;
|
|
$tribunal = trim($tab[9]);
|
|
$tabAnn['tribunal'] = $iBodacc->getTribunalCode('TRIBUNAL DE COMMERCE '.strtr(strtoupper(' '.$tribunal.' '),array(' ST '=>' SAINT ')), $dep);
|
|
//if ($modeDebug) echo "Ligne $ligne TRI1: '$a'".EOL;
|
|
|
|
if (!$tabAnn['tribunal']) {
|
|
$tabAnn['tribunal'] = $iBodacc->getTribunalCode('TRIBUNAL DE COMMERCE '.strtr(strtoupper(' '.$tribunal.' '),array(' ST '=>' SAINT ')), 0);
|
|
//if ($modeDebug) echo "Ligne $ligne TRI2: '$a'".EOL;
|
|
if (!$tabAnn['tribunal']) {
|
|
if ($tribunal=='AIX') $tabAnn['tribunal']='AIXC';
|
|
elseif ($tribunal=='MONT DE MARSAN') $tabAnn['tribunal']='MONTMC';
|
|
elseif ($tribunal=='SALON DE PROVENCE') $tabAnn['tribunal']='SALONC';
|
|
elseif ($tribunal=='BAGNERES DE BIGORRE') $tabAnn['tribunal']='BAGNEC';
|
|
elseif ($tribunal=='OLORON STE MARIE') $tabAnn['tribunal']='OLOROC';
|
|
elseif ($tribunal=='LE PUY EN VELAY') $tabAnn['tribunal']='LEPUYC';
|
|
elseif ($tribunal=='CLERMONT L HERAULT') $tabAnn['tribunal']='CLHERC';
|
|
elseif ($source=='G' && $tribunal=='' && $dep==23) $tabAnn['tribunal']='GUEREC';
|
|
elseif ($source=='G' && $tribunal=='' && $dep==26) $tabAnn['tribunal']='ROMANC';
|
|
elseif ($source=='G' && $tribunal=='' && $dep==27) $tabAnn['tribunal']='BERNAC';
|
|
elseif ($source=='G' && $tribunal=='' && $dep==48) $tabAnn['tribunal']='MENDEC';
|
|
elseif ($source=='G' && $tribunal=='' && $tabAnn['siren']>100) {
|
|
//if ($modeDebug) echo "Ligne $ligne TRI3: '$a'".EOL;
|
|
$tabIdentite=@$iInsee->getIdentiteEntreprise($tabAnn['siren'],0,0,false,false);
|
|
//if ($modeDebug) echo "Ligne $ligne TRI4: '$a'".EOL;
|
|
$tabTribunaux=$iBodacc->getTribunauxParCommune($tabIdentite['Dept'].$tabIdentite['codeCommune']);
|
|
//if ($modeDebug) echo "Ligne $ligne TRI5: '$a'".EOL;
|
|
foreach ($tabTribunaux as $trib)
|
|
if ($trib['triType']=='C' && $trib['triStatut']=='Actif') {
|
|
$tabAnn['tribunal']=$trib['triCode'];
|
|
break;
|
|
}
|
|
//if ($modeDebug) echo "Ligne $ligne TRI6: '$a'".EOL;
|
|
if (!$tabAnn['tribunal']) {
|
|
foreach ($tabTribunaux as $trib)
|
|
if ($trib['triType']=='G' && $trib['triStatut']=='Actif') {
|
|
$tab['tribunal']=$trib['triCode'];
|
|
break;
|
|
}
|
|
}
|
|
//if ($modeDebug) echo "Ligne $ligne TRI9: '$a'".EOL;
|
|
}
|
|
elseif ($source=='P' && $dep>0 && $dep<977) {
|
|
$tabIdentite=@$iInsee->getIdentiteEntreprise($tabAnn['siren'],0,0,false,false);
|
|
$tabTribunaux=$iBodacc->getTribunauxParCommune($tabIdentite['Dept'].$tabIdentite['codeCommune']);
|
|
// En fonction du département 67,68 et de la CJ 1xxx non commerçant, Associations : TGI
|
|
foreach ($tabTribunaux as $trib)
|
|
if ($trib['triType']=='C' && $trib['triStatut']=='Actif') {
|
|
$tabAnn['tribunal']=$trib['triCode'];
|
|
break;
|
|
}
|
|
if (!$tabAnn['tribunal']) {
|
|
foreach ($tabTribunaux as $trib)
|
|
if ($trib['triType']=='G' && $trib['triStatut']=='Actif') {
|
|
$tab['tribunal']=$trib['triCode'];
|
|
break;
|
|
}
|
|
}
|
|
if (!$tabAnn['tribunal']) {
|
|
foreach ($tabTribunaux as $trib)
|
|
if ($trib['triType']=='M' && $trib['triStatut']=='Actif') {
|
|
$tab['tribunal']=$trib['triCode'];
|
|
break;
|
|
}
|
|
}
|
|
if (!$tabAnn['tribunal']) {
|
|
foreach ($tabTribunaux as $trib)
|
|
if ($trib['triType']=='P' && $trib['triStatut']=='Actif') {
|
|
$tab['tribunal']=$trib['triCode'];
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
else {
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne/$nbLignes : Tribunal CSF inconnu '$tribunal' (Dept.=$dep, source=$source) !".EOL;
|
|
$tabAnn['tribunal']=$tribunal.'*';
|
|
if ($source<>'P' && $source<>'I') { /* On insert le jugement uniquement si on l'a pas déjà en base ! */
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne/$nbLignes, source $source, siren=".$tabAnn['siren']." : '$a' - Problème de tribunal".EOL;
|
|
sendMail('production@scores-decisions.com', 'support@scores-decisions.com', 'Chargement CSF : Problème de tribunal', "Ligne $ligne/$nbLignes, source $source, siren=".$tabAnn['siren'].EOL."$a".EOL.print_r($tabAnn, true).EOL);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if ($source=='I') {
|
|
$tabAnn['source'] = 'JC';
|
|
$tabAnn['dateJugement'] = $dateJugeKbis;
|
|
$tabIdentite=@$iInsee->getIdentiteEntreprise($tabAnn['siren'],0,0,false,false);
|
|
if ($tabIdentite['SituationJuridique']<>'P') {
|
|
if ($dateJugeKbis>date('Ymd',mktime(0,0,0,date('m')-6,date('d'),date('Y')))) {
|
|
if ($tabAnn['typeEven']<>1445) {
|
|
// L'entreprise n'est pas connue comme en Procol et le jugement à mois de 6 mois !
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne/$nbLignes, source JC, siren=".$tabAnn['siren']." : '$a'".EOL;
|
|
sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', 'Chargement CSF : Procol inconnue', "Ligne $ligne/$nbLignes, source Kairos via CSF, siren=".$tabAnn['siren'].EOL."$a".EOL.print_r($tabAnn, true).EOL);
|
|
} else continue;
|
|
} else continue;
|
|
} else {
|
|
// Provisoirement, on ignore l'annonce car déjà en procol
|
|
/** @todo
|
|
Si dernière annonce = SV, RJ, LJ prendre la nouv. annonce si suite du jugement
|
|
**/
|
|
continue;
|
|
}
|
|
} else {
|
|
$tabAnn['source'] = $source.'C';
|
|
$texte = trim(@$tab[10]);
|
|
/*JUGEMENT DU TRIBUNAL DE COMMERCE DE EVRY EN DATE DU 15/02/2010 A PRONONCÉ LA LIQUIDATION JUDICIAIRE, SOUS LE NUMÉRO 2010J00041 DÉSIGNE LIQUIDATEUR LA SCP YVES COUDRAY-CHRISTOPHE ANCEL, EN LA PERSONNE DE MAÎTRE ANCEL, MANDATAIRE JUDICIAIRE ASSOCIÉ 9 BOULEVARD DE L'EUROPE 91050 ÉVRY CEDEX , JUGE COMMISSAIRE M. CHIKAR , JUGE COMMISSAIRE SUPPLÉANT M. HAMON , MET FIN À LA MISSION DE L'ADMINISTRATEUR ME TULIER RUE RENÉ CASSIN IMMEUBLE LE MAZIÈRE - 4ÈME ÉTAGE 91000 EVRY
|
|
*/
|
|
$regExDate='((?:\d{1,2}|1er)(?:\/|\.|-)\d{1,2}(?:\/|\.|-)\d{4,4})';
|
|
$regExDate2='((?:\d{1,2}|1er)(?:\/|\.|-)\d{1,2}(?:\/|\.|-)\d{2,2})';
|
|
$regExDateLong='(([0-9]{1,2}|1er)\s+(janvier|février|fevrier|mars|avril|mai|juin|juillet|aout|août|septembre|octobre|novembre|décembre|decembre)\s+([0-9]{4,4}))';
|
|
//SUIVANT JUGEMENT RENDU LE 27 AVRIL 2010, LE TRIBUNAL DE COMMERCE DE BOBIGNY A PRONONCE L'OUVERTURE D'UNE PROCEDURE DE REDRESSEMENT JUDICIAIRE
|
|
|
|
if (preg_match("/(JGT|JUGEMENT|prononc|ORDONNANCE).{1,75}\s+EN\s+DATE\s+DU\s+$regExDate/Uis", $texte, $matches)) {
|
|
//echo $texte.EOL;
|
|
$dateJuge=$matches[2];
|
|
echo "A, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
/*print_r($matches);
|
|
die();*/
|
|
} elseif (preg_match("/(JGT|JUGEMENT|ORDONNANCE).{1,120}(?:DU|RENDUE? LE)\s+$regExDate/Uis", $texte, $matches)) {
|
|
$dateJuge=$matches[2];
|
|
echo "B1, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
} elseif (preg_match("/(JGT|JUGEMENT|ORDONNANCE).{1,120}(?:DU|RENDUE? LE)\s+$regExDate2/Uis", $texte, $matches)) {
|
|
$dateJuge=$matches[2];
|
|
echo "B2, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
} elseif (preg_match("/DATE\s+D(?:\+|')EFFET(?:\s+\:?\s+)$regExDate/Uis", $texte, $matches)) {
|
|
$dateJuge=$matches[1];
|
|
echo "C, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
/* print_r($matches);
|
|
die();*/
|
|
} elseif (preg_match("/(JGT|JUGEMENT|ORDONNANCE).{1,120}(?:DU|RENDUE? LE)\s+$regExDateLong/Ui", $texte, $matches)) {
|
|
$dateJuge=Wdate::dateT('dMY', 'd/m/Y',$matches[2]);
|
|
echo "D, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
/*print_r($matches);
|
|
die();*/
|
|
} elseif (preg_match("/(JGT|JUGEMENT|ORDONNANCE).RENDU.{1,80}(?: DU| LE)\s+$regExDate/Uis", $texte, $matches)) {
|
|
$dateJuge=$matches[2];
|
|
echo "D2, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
} elseif (preg_match("/JGT|JUGEMENT.{1,55}\s+$regExDate\s+/Ui", $texte, $matches)) {
|
|
$dateJuge=$matches[1];
|
|
echo "E, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
/*print_r($matches);
|
|
die();*/
|
|
//
|
|
} elseif (preg_match("/Arr.t de la Cour d.Appel (?:.*) du\s+$regExDate\s+/Uis", $texte, $matches)) {
|
|
$dateJuge=$matches[1];
|
|
echo "F, $siren : Jugement kbis du $dateJugeKbis vs $dateJuge".EOL;
|
|
} else {
|
|
/*
|
|
Ordonnance de Monsieur le Président de la Chambre des Procédures Collectives du Tribunal de Commerce de Vienne en date du 02/02/2010 décidant de l'APPLICATION DE LA LIQUIDATION JUDICIAIRE SIMPLIFIEE
|
|
410946008 : Jugement kbis du 20100413. DATE TEXTE !
|
|
*/
|
|
echo "$siren : Jugement kbis du $dateJugeKbis. DATE TEXTE NON TROUVEE !!!".EOL;
|
|
sendMail('production@scores-decisions.com', 'support@scores-decisions.com', 'Erreur : Chargement annonces Greffes', "Attention, date texte non trouvée pour le siren $siren :
|
|
$texte
|
|
Jugement kbis du ".$tabAnn['dateJugement'].EOL);
|
|
echo $texte.EOL;
|
|
if ($modeDebug || $questions) {
|
|
while(1) {
|
|
echo "Entrez la date du jugement au format JJ/MM/AAAA ?".EOL;
|
|
$dateJuge = trim(fgets(STDIN));
|
|
$line=Wdate::dateT('d/m/Y', 'Ymd',strtr($dateJuge, array('.'=>'/','-'=>'/')));
|
|
if ($line>=0 && $line<date('Ymd')) break;
|
|
}
|
|
}
|
|
else die("$siren : Jugement kbis du $dateJugeKbis. DATE TEXTE !".EOL);
|
|
}//JUGEMENT DU TRIBUNAL DE COMMERCE DE EVRY EN DATE DU 08/02/2010 A PRONONCÉ LA LIQUIDATION JUDICIAIRE,
|
|
$dateJuge=Wdate::dateT('d/m/Y', 'Ymd',strtr($dateJuge, array('.'=>'/','-'=>'/')));
|
|
|
|
$dateJugeMin=date('Ymd', mktime(0, 0, 0,
|
|
WDate::dateT('Ymd','m',$dateJugeKbis),
|
|
WDate::dateT('Ymd','d',$dateJugeKbis)-60,
|
|
WDate::dateT('Ymd','Y',$dateJugeKbis)));
|
|
if ($dateJuge>=$dateJugeMin && $dateJuge<=$dateJugeKbis)
|
|
$tabAnn['dateJugement']=$dateJuge;
|
|
else
|
|
$tabAnn['dateJugement']=$dateJugeKbis;
|
|
|
|
echo "Date de jugement RETENUE : ".$tabAnn['dateJugement'].EOL;
|
|
echo $texte.EOL;
|
|
//if ($modeDebug) $line = trim(fgets(STDIN));
|
|
|
|
if (preg_match('/Arr.t.{1,15}Cour.{1,15}Appel.{1,75}INFIRM/is', $texte, $matches)) {
|
|
if (preg_match('INFIRM/is', $texte, $matches))
|
|
$tabAnn['typeEven']=1506; // Rétractation de jugement => Infirmation Jugement
|
|
else
|
|
$tabAnn['typeEven']=1507; // Arret de la cours d'appel
|
|
$tabAnn['sirenValide']=0;
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Annonce à retraiter manuellement ". $tabAnn['siren'] .' !'.EOL;
|
|
$nbSiretRetraitement++;
|
|
} elseif (// Pour les Procol suivantes, on redemande le sirenage et surtout l'affectation du code Even !!!
|
|
$tabAnn['typeEven']*1==1505 || // Appel de jugement
|
|
$tabAnn['typeEven']*1==1506 || // Infirmation Jugement
|
|
$tabAnn['typeEven']*1==1507 || // Extrait d'arrêt de la cour d'appel
|
|
$tabAnn['typeEven']*1==1515 || // Arrêt divers
|
|
$tabAnn['typeEven']*1==1517 || // Rectification d'une erreur matérielle
|
|
$tabAnn['typeEven']*1==1520 || // Ordonnance
|
|
$tabAnn['typeEven']*1==1525 || // Appel du ministère public
|
|
$tabAnn['typeEven']*1==1999) { // Autre procol)
|
|
$tabAnn['sirenValide']=0;
|
|
echo date ('Y/m/d - H:i:s')." - Ligne $ligne : Annonce à retraiter manuellement ". $tabAnn['siren'] .' !'.EOL;
|
|
$nbSiretRetraitement++;
|
|
}
|
|
|
|
if (preg_match('/CESSATION.{1,35}PAIEMENTS(.*)/is', $texte, $matches)) {
|
|
if (preg_match("/FIXE AU\s+$regExDate.{1,15}CESSATION.{1,35}PAIEMENTS/is", $texte, $matches2))
|
|
$tabAnn['dateCessationPaiement']=Wdate::dateT('d/m/Y', 'Ymd',trim(strtr($matches2[1], array('.'=>'/','-'=>'/'))));
|
|
elseif (preg_match("/FIXE AU\s+$regExDateLong.{1,15}CESSATION.{1,35}PAIEMENTS/is", $texte, $matches2))
|
|
$tabAnn['dateCessationPaiement']=Wdate::dateT('dMY', 'Ymd', $matches2[1]);
|
|
|
|
elseif (preg_match("/\s+$regExDate/Uis", substr($matches[1],0,35), $matches))
|
|
$tabAnn['dateCessationPaiement']=Wdate::dateT('d/m/Y', 'Ymd',trim(strtr($matches[1], array('.'=>'/','-'=>'/'))));
|
|
|
|
elseif (preg_match("/\s+$regExDateLong/Ui", $texte, $matches))
|
|
$tabAnn['dateCessationPaiement']=Wdate::dateT('dMY', 'Ymd',$matches[1]);
|
|
}
|
|
|
|
$jugeCommissaire=$jugeCommissaireSup='';
|
|
if (preg_match('/JUGE.{1,5}COMMISSAIRE(.*)JUGE.{1,5}COMMISSAIRE.{1,5}SUPPL(?:è|é|E)ANT(.*)$/Uis', $texte, $matches)) {
|
|
$jugeCommissaire=strtr(strtoupper($matches[1]),array('TITULAIRE'=>'',':'=>'',','=>''));
|
|
$jugeCommissaireSup=strtr(strtoupper(preg_replace('/(,|LIQUIDATEUR|MANDATAIRE).*/','',$matches[2])),array('TITULAIRE'=>'',':'=>'',','=>''));
|
|
} elseif (preg_match('/JUGE.{1,5}COMMISSAIRE.{1,5}SUPPL(?:è|é|E)ANT(.*)$/Uis', $texte, $matches)) {
|
|
$jugeCommissaireSup=preg_replace('/(,|LIQUIDATEUR|MANDATAIRE).*/','',strtr(strtoupper($matches[1])),array(':'=>''));
|
|
} elseif (preg_match('/JUGE.{1,5}COMMISSAIRE(.*)$/Uis', $texte, $matches)) {
|
|
$jugeCommissaire=preg_replace('/(,|LIQUIDATEUR|MANDATAIRE).*/','',strtr(strtoupper($matches[1]),array('TITULAIRE'=>'',':'=>'')));
|
|
}
|
|
|
|
$adm=$mand=$liq='';
|
|
if (preg_match('/ADMINISTRATEUR(.*)MANDATAIRE(.*)$/Uis', $texte, $matches)) {
|
|
preg_match('/^(.*\d{5,5}.*,)/Uis', $matches[1], $matches);
|
|
$adm=strtr(strtoupper($matches[1]),array('JUDICIAIRE'=>'',':'=>'',','=>''));
|
|
preg_match('/^(.*\d{5,5}.*,)/Uis', $matches[2], $matches);
|
|
$mand=preg_replace('/(,|LIQUIDATEUR|MANDATAIRE).*/','',strtr(strtoupper($matches[1]),array('JUDICIAIRE'=>'','*'=>'',':'=>'')));
|
|
} elseif (preg_match('/ADMINISTRATEUR(.*)$/Uis', $texte, $matches)) {
|
|
$adm=preg_replace('/(,|LIQUIDATEUR|MANDATAIRE).*/','',strtr(strtoupper($matches[1]),array('JUDICIAIRE'=>'','*'=>'',':'=>'')));
|
|
}
|
|
if (preg_match('/MANDATAIRE(.*)$/Uis', $texte, $matches)) {
|
|
preg_match('/^(.*\d{5,5}.*(,|)$)/Uis', $matches[1], $matches);
|
|
$mand=preg_replace('/(,|LIQUIDATEUR|ADMINISTRATEUR).*/','',strtr(strtoupper($matches[1]),array('JUDICIAIRE'=>'','*'=>'',':'=>'')));
|
|
}
|
|
if (preg_match('/LIQUIDATEUR(.*)$/Uis', $texte, $matches)) {
|
|
preg_match('/^(.*\d{5,5}.*(,|)$)/Uis', $matches[1], $matches);
|
|
$liq=preg_replace('/(,|MANDATAIRE|ADMINISTRATEUR).*/','',strtr(strtoupper($matches[1]),array('JUDICIAIRE'=>'','*'=>'',':'=>'')));
|
|
}
|
|
|
|
$numero='';
|
|
if (preg_match('/NUM(?:E|é|è)RO\s+([A-Z0-9\.\/,-]{8,20})\s+/Uis', $texte, $matches)) {
|
|
$tabAnn['numero']=trim(strtoupper($matches[1]));
|
|
}
|
|
|
|
/*
|
|
OUVERTURE PERIODE D'OBSERVATION DE SIX MOIS
|
|
OUVRE UNE PÉRIODE D'OBSERVATION EXPIRANT LE 28/07/2010
|
|
DATE D'EFFET : 27/01/2010
|
|
MET FIN À LA MISSION DE L'ADMINISTRATEUR ME AVEZOU 5 BD DE L'EUROPE 91050 EVRY CEDEX
|
|
DÉSIGNE LIQUIDATEUR LA SCP YVES COUDRAY-CHRISTOPHE ANCEL, EN LA PERSONNE DE MAÎTRE ANCEL, MANDATAIRE JUDICIAIRE ASSOCIÉ 9 BOULEVARD DE L'EUROPE 91050 ÉVRY CEDEX ,
|
|
SUIVANT ORDONNANCE RENDUE LE 15 JANVIER 2010 PAR LE TRIBUNAL DE COMMERCE DE NANTES, MR LE JUGE-COMMISSAIRE A MIS FIN A LA MISSION DE ME A. DOLLEY, MANDATAIRE JUDICIAIRE.
|
|
*/
|
|
|
|
$iMand=1;
|
|
if (trim($adm)<>'') {
|
|
$tabAnn['inter'.$iMand.'type']='A';
|
|
//$tabAnn['inter'.$iMand.'id']=?;
|
|
$tabAnn['inter'.$iMand.'nom']=trim($adm);
|
|
$iMand++;
|
|
}
|
|
if (trim($mand)<>'') {
|
|
$tabAnn['inter'.$iMand.'type']='M';
|
|
//$tabAnn['inter'.$iMand.'id']=?;
|
|
$tabAnn['inter'.$iMand.'nom']=trim($mand);
|
|
$iMand++;
|
|
}
|
|
if (trim($liq)<>'') {
|
|
$tabAnn['inter'.$iMand.'type']='L';
|
|
//$tabAnn['inter'.$iMand.'id']=?;
|
|
$tabAnn['inter'.$iMand.'nom']=trim($liq);
|
|
$iMand++;
|
|
}
|
|
if (trim($jugeCommissaire)<>'') {
|
|
$tabAnn['inter'.$iMand.'type']='J';
|
|
//$tabAnn['inter'.$iMand.'id']=?;
|
|
$tabAnn['inter'.$iMand.'nom']=trim($jugeCommissaire);
|
|
$iMand++;
|
|
}
|
|
if (trim($jugeCommissaireSup)<>'') {
|
|
$tabAnn['inter'.$iMand.'type']='K';
|
|
//$tabAnn['inter'.$iMand.'id']=?;
|
|
$tabAnn['inter'.$iMand.'nom']=trim($jugeCommissaireSup);
|
|
$iMand++;
|
|
}
|
|
|
|
if ($iMand==1)
|
|
$tabAnn['annonce']=strtolower($texte);
|
|
else
|
|
$tabAnn['infosBrutes']=strtoupper($texte);
|
|
|
|
/*
|
|
|
|
JUGE COMMISSAIRE : MONSIEUR SWIDERSKI,
|
|
JUGE COMMISSAIRE : MONSIEUR NOEL,
|
|
ADMINISTRATEUR : SCP THEVENOT PERDEREAU EN LA PERSONNE DE ME THEVENOT 131 BD MALESHERBES 75017 PARIS, AVEC POUR MISSION : d'assister,
|
|
MANDATAIRE JUDICIAIRE : MAITRE COURTOUX DIDIER 62 BD DE SÉBASTOPOL 75003 PARIS,
|
|
PERIODE D'OBSERVATION EXPIRANT LE 26/03/2010,
|
|
Juge Commissaire Mme Lefebvre H. ,
|
|
Juge Commissaire suppléant M. Bejui F. ,
|
|
Administrateur Me Bleriot Philippe 26 Chemin de la Madeleine 93000 Bobigny avec pour mission de : d'assister le débiteur dans ses actes de gestion ,
|
|
Mandataire judiciaire SCP Moyrand - Bally en la personne de Maître Pascal Bally 14/16 Rue de Lorraine 93000 Bobigny
|
|
période d'observation expirant le 26/07/2010 .
|
|
*/
|
|
//if ($tabAnn['complement']<>'') $tabAnn['complement']='Mandataire : '.$tabAnn['complement'];
|
|
}
|
|
//$tabAnn['dateInsert']=$dateInsert;
|
|
|
|
if (isset($tabAnn['tribunal']) && strlen($tabAnn['tribunal'])<3) $tabAnn['tribunal']='INCONU';
|
|
if (isset($tabAnn['inter5id']) || isset($tabAnn['inter5type']) || isset($tabAnn['inter5nom'])) {
|
|
unset($tabAnn['inter5type']);
|
|
unset($tabAnn['inter5id']);
|
|
unset($tabAnn['inter5nom']);
|
|
}
|
|
|
|
$tabTmp=$iDb->select($table, 'id, siren, sirenValide, strEven, raisonSociale, adresse, codePostal, ville, dateSource, dateJugement, typeEven, tribunal, source, complement',"siren='".$tabAnn['siren']."' AND dateJugement='".$tabAnn['dateJugement'] ."' AND typeEven =".$tabAnn['typeEven'], false, MYSQL_ASSOC);
|
|
if (count($tabTmp)==0) {
|
|
$iDb->insert($table, array_merge($tabAnn,array('dateInsert'=>date('YmdHis'))));
|
|
if (mysql_errno()>0) {
|
|
echo date ('Y/m/d - H:i:s') ." - A l'insertion sur $table :".EOL;
|
|
print_r($tabAnn);
|
|
echo date ('Y/m/d - H:i:s') .' - ERREUR : MySql n°'. mysql_errno() .' : '. mysql_error() ." lors de la mise à jour du jugement $typeEven en date du $dateJugement pour $siren...".EOL;
|
|
if ($modeDebug) $line = trim(fgets(STDIN));
|
|
else die("ERREUR SQL".EOL);
|
|
}
|
|
$nbInsert++;
|
|
if ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Insertion du jugement ". $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .'!'.EOL;
|
|
} else {
|
|
$tabAnnEnBase=$tabTmp[0];
|
|
$even=$tabAnnEnBase['typeEven'];
|
|
$trib=trim($tabAnnEnBase['tribunal']);
|
|
$comp=trim($tabAnnEnBase['complement']);
|
|
if ($tabAnn['typeEven']<>$even) {
|
|
print_r($tabAnn);
|
|
echo(date ('Y/m/d - H:i:s') . " - Jugement différent $even par rapport à ". $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .' !'.EOL);
|
|
}
|
|
if (strlen($trib)>1 && $trib<>'INCONU' && $tabAnn['tribunal']<>$trib) {
|
|
echo (date ('Y/m/d - H:i:s') . " - Nouveau tribunal différent ".$tabAnn['tribunal']." par rapport à $trib pour l'annonce ". $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .' !'.EOL);
|
|
unset($tabAnn['tribunal']);
|
|
}
|
|
if (strlen($comp)==0 && @$tabAnn['complement']<>'') {
|
|
//$tabAnn['complement']=$tabAnn['complement'];
|
|
echo (date ('Y/m/d - H:i:s') . " - Ajout du complément ".$tabAnn['complement'].' pour '. $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .' !'.EOL);
|
|
} elseif (strlen($comp)>1 && $tabAnn['complement']<>$comp) {
|
|
echo date ('Y/m/d - H:i:s') . " - Complément différent ".$tabAnn['complement'].EOL;
|
|
echo "par rapport à $comp ". $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .' !'.EOL;
|
|
$sortie=false;
|
|
if ($questions) {
|
|
while($sortie==false) {
|
|
echo 'Voulez vous conserver l\'ancien mandataire ? (Oui/Ajout/Non)';
|
|
$line = trim(fgets(STDIN));
|
|
if ($line=='O' || $line=='o') { $sortie=true; unset($tabAnn['complement']); }
|
|
elseif ($line=='N' || $line=='n' || $line=='') { $sortie=true; }
|
|
elseif ($line=='A' || $line=='a') { $sortie=true; $tabAnn['complement']="$comp, ".$tabAnn['complement'];}
|
|
}
|
|
}
|
|
}
|
|
echo date ('Y/m/d - H:i:s') . " - MAJ du jugement ". $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .'!'.EOL;
|
|
|
|
if (count($tabTmp)>1) {
|
|
print_r($tabAnn);
|
|
echo date ('Y/m/d - H:i:s') . " - ERREUR : Jugement ". $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .' présent plusieurs fois !'.EOL;
|
|
//die();
|
|
}
|
|
|
|
$iDb->update($table,$tabAnn,'id='.$tabAnnEnBase['id']);
|
|
if (mysql_errno()>0) {
|
|
echo date ('Y/m/d - H:i:s') ." - A la mise à jour sur $table :".EOL;
|
|
print_r($tabAnn);
|
|
echo date ('Y/m/d - H:i:s') .' - ERREUR : MySql n°'. mysql_errno() .' : '. mysql_error() ." lors de la mise à jour du jugement $typeEven en date du $dateJugement pour $siren...".EOL;
|
|
if ($modeDebug) $line = trim(fgets(STDIN));
|
|
else die("ERREUR SQL 2".EOL);
|
|
}
|
|
|
|
/*echo mysql_error().EOL."En base:".EOL;
|
|
print_r($tabAnnEnBase);
|
|
echo mysql_error().EOL."A mettre à jour :".EOL;
|
|
print_r($tabAnn);
|
|
echo "?";
|
|
$sdfqsd=trim(fgets(STDIN));*/
|
|
$nbUpdate++;
|
|
if ($modeDebug) echo date ('Y/m/d - H:i:s') . " - Ligne $ligne : MAJ du jugement ". $tabAnn['typeEven'] .' en date du '. $tabAnn['dateJugement'].", siren=".$tabAnn['siren'] .'!'.EOL;
|
|
}
|
|
}
|
|
//if ($modeDebug) echo "Ligne $ligne Fin: '$a'".EOL;
|
|
}
|
|
fclose ($fp);
|
|
echo date ('Y/m/d - H:i:s')." - Le fichier n°$i, $nomFichier vient d'être chargé : $nbInsert ajouts et $nbUpdate MAJ !".EOL;
|
|
if ($table=='annonces2') {
|
|
echo date ('Y/m/d - H:i:s')." - Chargement en test. Arrêt du traitement...".EOL;
|
|
die("TABLE ANNONCE 2".EOL);
|
|
}
|
|
|
|
if (bzip2(CSF_FTP_DIR.$nomFichier, CSF_BACKUP_DIR.$nomFichier)) {
|
|
unlink(CSF_FTP_DIR.$nomFichier);
|
|
echo date ('Y/m/d - H:i:s') . " - Le fichier n°$i, $nomFichier vient d'être historisé.".EOL;
|
|
}
|
|
}
|
|
echo date ('Y/m/d - H:i:s') . " - $nbLignes lignes traitées dont $nbSiretInvalides siren/siret invalides et $nbSiretRetraitement annonces à retraiter !".EOL;
|
|
$message.="Le fichier n°$i, $nomFichier vient d'être chargé :\r\n";
|
|
$message.=" $nbInsert ajouts et $nbUpdate mises à jours sur $nbLignes lignes ($nbSiretInvalides siren/siret invalides et $nbSiretRetraitement annonces à retraiter).".EOL;
|
|
|
|
echo date ('Y/m/d - H:i:s') . " - Fin du traitement de chargement des défaillances.".EOL;
|
|
}
|
|
else {
|
|
$message.="Aucun fichier CSF à traiter !\r\n";
|
|
echo date ('Y/m/d - H:i:s') . " - Aucun fichier CSF à traiter !".EOL;
|
|
}
|
|
|
|
sendMail('production@scores-decisions.com', 'support@scores-decisions.com', 'Chargement annonces Greffes', $message);
|
|
sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', 'Chargement annonces Greffes', $message);
|
|
echo date ('Y/m/d - H:i:s') . " - Fin du traitement.".EOL;
|
|
die();
|
|
|
|
?>
|