issue #0001615 : Mise a jour des classes métiers pour calcul score plus rapide

This commit is contained in:
Michael RICOIS 2013-08-30 13:45:56 +00:00
parent 1c1ea8c83b
commit 99f4ed1a21
10 changed files with 4888 additions and 280 deletions

View File

@ -397,8 +397,8 @@ class Metier_Sfr
$classInsee = new MInsee(); $classInsee = new MInsee();
$classInsee->AnnoncesInMemory = true; $classInsee->AnnoncesInMemory = true;
//Identite //Identite - @todo : Gérer les erreurs techniques
$identite = $classInsee->getIdentiteEntreprise($siren); $identite = $classInsee->getIdentiteEntreprise($siren, 0, 0, false, false);
//Naf de l'entreprise //Naf de l'entreprise
$this->ValNAF = $identite['NafEnt']; $this->ValNAF = $identite['NafEnt'];
@ -458,11 +458,11 @@ class Metier_Sfr
if ($this->debug) file_put_contents('sfr.log', "ValInseeAge = ".$this->ValInseeAge."\n", FILE_APPEND); if ($this->debug) file_put_contents('sfr.log', "ValInseeAge = ".$this->ValInseeAge."\n", FILE_APPEND);
//Entreprise coté au CAC //Entreprise coté au CAC
$this->ValIsCAC = false; $this->ValIsCAC = 0;
require_once 'Metier/partenaires/classMLiens2.php'; require_once 'Metier/partenaires/classMLiens2.php';
$lienM = new MLiens2($siren, 'siren'); $lienM = new MLiens2($siren, 'siren');
if ( $lienM->isInGroupeCAC40() ) { if ( $lienM->isInGroupeCAC40() ) {
$this->ValIsCAC = true; $this->ValIsCAC = 1;
} }
if ($this->debug) file_put_contents('sfr.log', "CAC40 = ".$this->ValIsCAC."\n", FILE_APPEND); if ($this->debug) file_put_contents('sfr.log', "CAC40 = ".$this->ValIsCAC."\n", FILE_APPEND);
@ -520,7 +520,7 @@ class Metier_Sfr
} }
if ( $this->ValIndiscore === null ) { if ( $this->ValIndiscore === null ) {
$indiscore = calculIndiScore($siren); $indiscore = calculIndiScore($siren); // @todo : Gérer les erreurs techniques
$this->ValIndiscore = $indiscore['Indiscore20']; $this->ValIndiscore = $indiscore['Indiscore20'];
$this->dateCalculIndiscore = date('Y-m-d'); $this->dateCalculIndiscore = date('Y-m-d');
} }

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,286 @@
<?php
return array(
'1' => "Directeur",
'5' => "Directeur Recherche et Développement",
'6' => "Directeur de la Qualité",
'7' => "Directeur d'Exploitation",
'8' => "Directeur d'Agence/Etablissement",
'9' => "Directeur de la Production",
'10' => "Directeur Commercial",
'11' => "Directeur Financier (DAF)",
'12' => "Directeur Juridique",
'13' => "Directeur des Ressources Humaines DRH",
'14' => "Directeur Informatique",
'15' => "Directeur Administratif",
'16' => "Directeur des Achats",
'17' => "Directeur Marketing",
'18' => "Directeur de la communication",
'19' => "Directeur Technique",
'31' => "Responsable",
'35' => "Responsable Recherche et Développement",
'36' => "Responsable de la Qualité",
'37' => "Responsable d'Exploitation",
'38' => "Responsable d'Agence/Etablissement",
'39' => "Responsable de la Production",
'40' => "Responsable Commercial",
'41' => "Responsable Financier",
'42' => "Responsable Juridique",
'43' => "Responsable des Ressources Humaines RRH",
'44' => "Responsable Informatique",
'45' => "Responsable Administratif",
'46' => "Responsable des Achats",
'47' => "Responsable Marketing",
'48' => "Responsable de la communication",
'49' => "Responsable Technique",
'50' => "Expert comptable",
'55' => "Comptable",
'60' => "Chargé d'affaires",
'61' => "Conducteur de Travaux",
'62' => "Chef de projets",
'63' => "Consultant",
'79' => "Assistant(e) de direction",
'80' => "Avocat",
'90' => "Représentant du personnel",
'91' => "Représentant du Comité d'Entreprise",
'92' => "Scrutateur",
'100' => "Administrateur",
'101' => "Administrateur délégué",
'102' => "administrateur de GIE",
'103' => "Administrateur et membre",
'104' => "Administrateur et membre du GIE",
'105' => "Administrateur et président",
'106' => "Administrateur membre engageant le GIE",
'107' => "Administrateur unique",
'108' => "Administrateur provisoire",
'200' => "Associé",
'201' => "Associé commandité gérant",
'202' => "Associé commandité",
'203' => "Associé de société civile",
'205' => "Associé en nom",
'206' => "Associé exploitant",
'207' => "Associé non exploitant",
'208' => "Associé non gérant",
'209' => "Associé gérant",
'210' => "Associé Indéfiniment et solidairement responsable",
'211' => "Associé indéfiniment responsable",
'212' => "Associé en nue propriété (avec usufruitier)",
'213' => "Associé unique",
'300' => "Commissaire aux comptes titulaire",
'301' => "Co-commissaire aux comptes suppléant",
'302' => "Co-commissaire aux comptes titulaire",
'303' => "Commissaire aux comptes suppléant",
'304' => "Commissaire aux comptes",
'400' => "Co-gérant",
'401' => "Co-gérant associé Indéfiniment responsable",
'402' => "Co-gérant associé",
'403' => "Co-gérant non associé",
'404' => "Co-gérant non statutaire",
'405' => "Co-gérant pouvant engager la société",
'406' => "Co-gérant statutaires",
'500' => "Conjoint Collaborateur",
'600' => "Contrôleur",
'601' => "Contrôleur de gestion et des comptes",
'602' => "Contrôleur de gestion du GIE",
'603' => "Contrôleur de gestion",
'604' => "Contrôleur des comptes titulaire",
'605' => "Contrôleur des comptes du GIE",
'606' => "Contrôleur des comptes et de gestion",
'607' => "Contrôleur des comptes et membre du GIE",
'608' => "Contrôleur des comptes",
'700' => "Directeur",
'701' => "Directeur général adjoint",
'702' => "Directeur général délégué et administrateur",
'703' => "Directeur général délégué et membre du comité de surveillance",
'704' => "Directeur général délégué",
'705' => "Directeur général et administrateur",
'706' => "Directeur général et membre du directoire",
'707' => "Directeur général unique du directoire",
'708' => "Directeur général unique",
'709' => "Directeur général",
'710' => "Directeur gérant",
'711' => "Directeur technique",
'712' => "Directeur des transports",
'713' => "Directeur général non administrateur",
'800' => "Dirigeant",
'801' => "Dirigeant à l'étranger et en France",
'802' => "Dirigeant à l'étranger",
'803' => "Dirigeant en France et à l'étranger",
'804' => "Dirigeant en France",
'805' => "Dirigeant",
'900' => "Gérant",
'901' => "Nouveau gérant",
'902' => "Gérant et directeur technique",
'903' => "Gérant associé en nom collectif",
'904' => "Gérant associé en nom",
'905' => "Gérant associé indéfiniment responsable",
'906' => "Gérant associé unique",
'907' => "Gérant associé",
'908' => "Gérant associé majoritaire",
'909' => "Gérant associé minoritaire",
'910' => "Gérant associé tenu indéfiniment et solidairement des dettes sociales",
'911' => "Gérant majoritaire",
'912' => "Gérant non associé",
'913' => "Gérant non statutaire",
'914' => "Gérant pouvant engager la société",
'915' => "Gérant salarié",
'916' => "Gérant statutaire associé",
'917' => "Gérant statutaire",
'918' => "Gérant et administrateur",
'919' => "Gérant technique",
'920' => "Ancien gérant",
'921' => "Gérante",
'923' => "Gérant co-associé",
'924' => "Gérant unique",
'925' => "Premier Gérant",
'1000' => "Fondé de pouvoir",
'1001' => "Personne ayant pouvoir d'engager à titre habituel la société vis-à-vis des tiers",
'1002' => "Personne ayant pouvoir d'engager la société en France",
'1003' => "Personne ayant pouvoir d'engager la société",
'1004' => "Personne ayant pouvoir de diriger et gérer",
'1005' => "Personne pouvant engager à titre habituel l'assujetti",
'1006' => "Personne",
'1050' => "Personne Physique",
'1090' => "Gérant affaire personnelle",
'1100' => "Mandataire",
'1101' => "Mandataire ad hoc",
'1102' => "Mandataire général",
'1200' => "Membre",
'1201' => "Membre du GIE",
'1202' => "Membre du groupement",
'1203' => "Membre et administrateur",
'1204' => "Membre du comité de direction",
'1205' => "Membre du comité de surveillance",
'1206' => "Membre du conseil de direction",
'1207' => "Membre du conseil de surveillance",
'1208' => "Membre du directoire",
'1209' => "Membre du conseil exécutif",
'1300' => "Président",
'1301' => "Président directeur général",
'1302' => "Président du conseil d'administration assumant la direction général",
'1303' => "Président du conseil d'administration et administrateur",
'1304' => "Président du conseil d'administration et directeur général",
'1305' => "Président du conseil d'administration, directeur général et administrateur",
'1306' => "Président du conseil d'administration",
'1307' => "Président du conseil de surveillance",
'1308' => "Président du directoire",
'1309' => "Président du GIE",
'1310' => "Président et membre du conseil de surveillance",
'1311' => "Président et membre du directoire",
'1312' => "Président et président du comité de direction",
'1313' => "Président et président du comité de surveillance",
'1314' => "Président et administrateur",
'1315' => "Président et associé",
'1316' => "Président et associé unique",
'1317' => "Président directeur général et administrateur",
'1318' => "Président non associé",
'1400' => "Représentant",
'1401' => "Représentant de société étrangère",
'1402' => "Représentant tant en France qu'à l'étranger",
'1403' => "Représentant à l'étranger",
'1404' => "Représentant légal en France",
'1405' => "Représentant légal",
'1500' => "Responsable",
'1501' => "Co-responsable en France",
'1502' => "Responsable pour la France",
'1503' => "Responsable tant en France qu'à l'étranger",
'1504' => "Responsable technique",
'1505' => "Responsable à l'étranger",
'1506' => "Responsable de la société en France",
'1507' => "Responsable en France",
'1508' => "Responsable légal en France",
'1600' => "Secrétaire",
'1601' => "Vice-secrétaire",
'1602' => "Secrétaire du conseil d'administration",
'1603' => "Secrétaire du conseil de surveillance",
'1610' => "Secrétaire général",
'1650' => "Gouverneur",
'1651' => "Sous Gouverneur",
'1700' => "Trésorier",
'1701' => "Vice-trésorier",
'1800' => "Vice-président",
'1801' => "Vice-président du conseil d'administration",
'1802' => "vice-président du conseil de surveillance",
'1803' => "Vice-président et administrateur privé",
'1804' => "Vice-président et administrateur",
'1805' => "Vice-président et membre du conseil de surveillance",
'1900' => "Liquidateur",
'1950' => "Greffier",
'2000' => "Maire",
'2001' => "Premier Adjoint",
'2002' => "Adjoint 3eme Age/Handicapes",
'2003' => "Adjoint Affaires Culturelles",
'2004' => "Adjoint Affaires Economiques",
'2005' => "Adjoint Affaires Générales",
'2006' => "Adjoint Affaires Sociales",
'2007' => "Adjoint Agriculture",
'2008' => "Adjoint Commerce/Artisanat",
'2009' => "Adjoint Communication",
'2010' => "Adjoint Emploi/Insertion",
'2011' => "Adjoint Environnement",
'2012' => "Adjoint Finances/Budget",
'2013' => "Adjoint Intercommunalité",
'2014' => "Adjoint Jeunesse",
'2015' => "Adjoint Logement",
'2016' => "Adjoint Patrimoine",
'2017' => "Adjoint Personnel",
'2018' => "Adjoint Petite Enfance",
'2019' => "Adjoint Politique de la Ville/Logement",
'2020' => "Adjoint Relations Internationales",
'2021' => "Adjoint Santé/Prévention",
'2022' => "Adjoint ServicesTechniques",
'2023' => "Adjoint Sport",
'2024' => "Adjoint Spécial",
'2025' => "Adjoint Sécurité/Prévention",
'2026' => "Adjoint TIC",
'2027' => "Adjoint Tourisme",
'2028' => "Adjoint Transports/Mobilité Urbaine",
'2029' => "Adjoint Urbanisme",
'2030' => "Adjoint Vie Associative",
'2031' => "Adjoint Vie des Quartiers",
'2032' => "Adjoint Voirie",
'2050' => "Secrétariat du Maire",
'2051' => "Premier conseiller",
'2052' => "Conseiller",
'2053' => "Conseiller Communautaire Délégué",
'2054' => "Conseiller Municipal",
'2055' => "Conseiller Municipal Délégué",
'2056' => "Directeur de Cabinet",
'2060' => "Dir/Resp Affaires Juridiques",
'2061' => "Dir/Resp Emploi/Insertion/Urbanisme",
'2062' => "Dir/Resp Petite Enfance/Environnement",
'2063' => "Dir/Resp Ressources Humaines",
'2064' => "Dir/Resp Services Financiers",
'2065' => "Dir/Resp Services Techniques/Transports",
'2066' => "Dir/Resp Technique",
'2067' => "Dir/Resp Urbanisme/Habitat/Voirie",
'2068' => "Directeur 3e Age/Handicapés/Cadre Vie/Esp. Ver",
'2069' => "Directeur Achats",
'2070' => "Directeur Affaires Culturelles/Com. Interne",
'2071' => "Directeur Affaires Economiques",
'2072' => "Directeur Affaires Générales",
'2073' => "Directeur Affaires Sociales/Tourisme",
'2074' => "Directeur Architecture",
'2075' => "Directeur Bibliothèque Municipale",
'2076' => "Directeur Communication",
'2077' => "Directeur Eaux et Services Concédés",
'2078' => "Directeur Enseignement/Affaires Scolaires",
'2079' => "Directeur Espaces Verts",
'2080' => "Directeur Grands Projets",
'2081' => "Directeur Général Adjoint des Services",
'2082' => "Directeur Général des Services",
'2083' => "Directeur Général et Administrateur",
'2084' => "Directeur Informatique",
'2085' => "Directeur Jeunesse/Enseignement",
'2086' => "Directeur Nettoiement/Ordures Ménagères",
'2087' => "Directeur Politique de la Ville",
'2088' => "Directeur Prévention/Sécurité",
'2089' => "Directeur Prévention/Sécurité/Environnement",
'2090' => "Directeur Rel. Internationales",
'2091' => "Directeur Rel. Internationales/Action Culturel",
'2092' => "Directeur Santé",
'2093' => "Directeur Sports/Emploi/Recrutement",
'2094' => "Directeur Tourisme",
'2095' => "Directeur Transports/Mobilité Urbaine",
'2096' => "Directeur Voirie",
'2100' => "Président de section",
);

File diff suppressed because it is too large Load Diff

View File

@ -625,6 +625,9 @@ private static $tabEvenements=array(
/** Initialisation du tableau privé des tribunaux **/ /** Initialisation du tableau privé des tribunaux **/
private function getTabTribunaux() { private function getTabTribunaux() {
if ( file_exists(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheTribunaux.php') ) {
return include dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheTribunaux.php';
} else {
$iDb=new WDB(); $iDb=new WDB();
$rep=$iDb->select('tribunaux', 'triCode, triNom, triCP, triSiret', "triCode IS NOT NULL"); $rep=$iDb->select('tribunaux', 'triCode, triNom, triCP, triSiret', "triCode IS NOT NULL");
$tabTribunaux=array(); $tabTribunaux=array();
@ -636,9 +639,13 @@ private static $tabEvenements=array(
} }
return $tabTribunaux; return $tabTribunaux;
} }
}
/** Initialisation du tableau privé des codes fonctions de direction **/ /** Initialisation du tableau privé des codes fonctions de direction **/
private function getTabFctDir() { private function getTabFctDir() {
if ( file_exists(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheFctDir.php') ) {
return include dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheFctDir.php';
} else {
$iDb=new WDB(); $iDb=new WDB();
$rep=$iDb->select('bodacc_fonctions', 'codeFct, libelle', '1'); $rep=$iDb->select('bodacc_fonctions', 'codeFct, libelle', '1');
$tabRet=array(); $tabRet=array();
@ -647,6 +654,7 @@ private static $tabEvenements=array(
return $tabRet; return $tabRet;
} }
}
/** Retourne le libellé d'une fonction de direction **/ /** Retourne le libellé d'une fonction de direction **/
function getFctDir($codeFonction) { function getFctDir($codeFonction) {
@ -693,12 +701,16 @@ private static $tabEvenements=array(
/** Initialisation du tableau privé des évènements **/ /** Initialisation du tableau privé des évènements **/
private function getTabEvenements() { private function getTabEvenements() {
if ( file_exists(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheEvenements.php') ) {
return include dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheEvenements.php';
} else {
$iDb=new WDB(); $iDb=new WDB();
$rep=$iDb->select('tabEvenements', 'codEven, libEven, Bodacc_Code, Rubrique, version, lienEtab', '1', false, MYSQL_ASSOC); $rep=$iDb->select('tabEvenements', 'codEven, libEven, Bodacc_Code, Rubrique, version, lienEtab', '1', false, MYSQL_ASSOC);
$tabRet=array(); $tabRet=array();
foreach($rep as $k=>$even) { foreach($rep as $k=>$even) {
//$tabTmp=array($trib['codEven']=>$trib['libEven']); //$tabTmp=array($trib['codEven']=>$trib['libEven']);
$tabRet[$even['codEven']]=array('libEven'=>$even['libEven'], $tabRet[$even['codEven']] = array(
'libEven'=>$even['libEven'],
'Bodacc_Code'=>$even['Bodacc_Code'], 'Bodacc_Code'=>$even['Bodacc_Code'],
'Rubrique'=>$even['Rubrique'], 'Rubrique'=>$even['Rubrique'],
'Version'=>$even['version'], 'Version'=>$even['version'],
@ -708,6 +720,7 @@ private static $tabEvenements=array(
//echo "<!--".print_r($tabRet)."-->"; //echo "<!--".print_r($tabRet)."-->";
return $tabRet; return $tabRet;
} }
}
/** Initialisation du tableau privé des devises du Bodacc **/ /** Initialisation du tableau privé des devises du Bodacc **/
private function getTabDevises() { private function getTabDevises() {

View File

@ -892,7 +892,7 @@ class MInsee
*/ */
private function getTabCodeVoie() private function getTabCodeVoie()
{ {
$this->tabCodeVoie = array( return array(
'ABE' => "Abbaye", 'ABE' => "Abbaye",
'AGL' => "Agglomération", 'AGL' => "Agglomération",
'AIRE' => "Aire", 'AIRE' => "Aire",
@ -2161,16 +2161,8 @@ class MInsee
} }
/** Géocodage de l'adresse **/ /** Géocodage de l'adresse **/
$ligne=date('YmdHis').";$siren;MMap AVANT"; $mMap=new MMap($accesDist);//$etab['adr_num'].' '.$this->getCodeVoie($etab['adr_typeVoie']).' '.$etab['adr_libVoie'], $etab['adr_cp'], $etab['adr_ville']);
$fp=fopen(LOG_PATH.'/accesDistant.log', 'a');
fwrite($fp,$ligne.EOL);
fclose($fp);
$mMap=new MMap(true);//$etab['adr_num'].' '.$this->getCodeVoie($etab['adr_typeVoie']).' '.$etab['adr_libVoie'], $etab['adr_cp'], $etab['adr_ville']);
$mMap->geoCodeAdresse($etab['adr_num'],'',$etab['adr_typeVoie'],$this->getCodeVoie($etab['adr_typeVoie']), $etab['adr_libVoie'], $etab['adr_cp'], $etab['adr_ville'], 'France', trim($tabInsee['ADR_DEP'].$tabInsee['ADR_COM'].$tabInsee['CODEVOIE'])); $mMap->geoCodeAdresse($etab['adr_num'],'',$etab['adr_typeVoie'],$this->getCodeVoie($etab['adr_typeVoie']), $etab['adr_libVoie'], $etab['adr_cp'], $etab['adr_ville'], 'France', trim($tabInsee['ADR_DEP'].$tabInsee['ADR_COM'].$tabInsee['CODEVOIE']));
$ligne=date('YmdHis').";$siren;MMap APRES ($duree s)";
$fp=fopen(LOG_PATH.'/accesDistant.log', 'a');
fwrite($fp,$ligne.EOL);
fclose($fp);
$tab['latitude']=$mMap->latitudeDec; $tab['latitude']=$mMap->latitudeDec;
$tab['longitude']=$mMap->longitudeDec; $tab['longitude']=$mMap->longitudeDec;
$tab['altitude']=$mMap->altitude; $tab['altitude']=$mMap->altitude;
@ -2231,18 +2223,18 @@ class MInsee
$ligne=date('YmdHis').";$siren;MTel Avant"; $ligne=date('YmdHis').";$siren;MTel Avant";
$fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); //$fp=fopen(LOG_PATH.'/accesDistant.log', 'a');
fwrite($fp,$ligne.EOL); //fwrite($fp,$ligne.EOL);
fclose($fp); //fclose($fp);
$tdeb=microtime(1); $tdeb=microtime(1);
$iTel=new MTel(false);//$accesDist); $iTel=new MTel(false);//$accesDist);
$iTel->getTel($siren); $iTel->getTel($siren);
$tmp=$iTel->getTel($siren, $nic); $tmp=$iTel->getTel($siren, $nic);
$duree=round(microtime(1)-$tdeb,3); $duree=round(microtime(1)-$tdeb,3);
$ligne=date('YmdHis').";$siren;MTel APRES ($duree s)"; $ligne=date('YmdHis').";$siren;MTel APRES ($duree s)";
$fp=fopen(LOG_PATH.'/accesDistant.log', 'a'); //$fp=fopen(LOG_PATH.'/accesDistant.log', 'a');
fwrite($fp,$ligne.EOL); //fwrite($fp,$ligne.EOL);
fclose($fp); //fclose($fp);
$activitePJ_An8=''; $activitePJ_An8='';
foreach ($tmp as $tmp2) { foreach ($tmp as $tmp2) {
if ($tmp2['typeTel']=='tel' && ($tel==''||$tel==trim($tab['tel'])) ) if ($tmp2['typeTel']=='tel' && ($tel==''||$tel==trim($tab['tel'])) )
@ -3363,7 +3355,6 @@ print_r($tmp, true));
**/ **/
//$tabRet['caEstime'] = getCAnafEffectif($tabRet['NafEnt'],$tabRet['Effectif']); //$tabRet['caEstime'] = getCAnafEffectif($tabRet['NafEnt'],$tabRet['Effectif']);
$tabRet['TribunalLib']=$this->iBodacc->getTribunalNom($tabRet['Tribunal']); $tabRet['TribunalLib']=$this->iBodacc->getTribunalNom($tabRet['Tribunal']);
$duree=round(microtime(1)-$tdebIni,3); $duree=round(microtime(1)-$tdebIni,3);
$ligne=date('YmdHis').";$siren;getIdentiteEntreprise Fin ($duree s) ==="; $ligne=date('YmdHis').";$siren;getIdentiteEntreprise Fin ($duree s) ===";
@ -3426,7 +3417,7 @@ print_r($tmp, true));
TOTAL : $dureeTot s\n"; TOTAL : $dureeTot s\n";
$strTimeCsv.="$tempsPerdu,$dureeTot".EOL; $strTimeCsv.="$tempsPerdu,$dureeTot".EOL;
if (!file_exists(REP_TEMP.'/debugIdentite.csv')) { /*if (!file_exists(REP_TEMP.'/debugIdentite.csv')) {
$fp=fopen(REP_TEMP.'/debugIdentite.csv', 'a+'); $fp=fopen(REP_TEMP.'/debugIdentite.csv', 'a+');
$strTimeTmp='dateTime,siren,nic,id,'; $strTimeTmp='dateTime,siren,nic,id,';
foreach ($timer as $lib=>$time) foreach ($timer as $lib=>$time)
@ -3437,7 +3428,7 @@ TOTAL : $dureeTot s\n";
} }
$fp=fopen(REP_TEMP.'/debugIdentite.csv', 'a+'); $fp=fopen(REP_TEMP.'/debugIdentite.csv', 'a+');
fwrite($fp, $strTimeCsv); fwrite($fp, $strTimeCsv);
fclose($fp); fclose($fp);*/
if(ENV<>'PRD' && $tabInfoUser['login']=='ylenaour') if(ENV<>'PRD' && $tabInfoUser['login']=='ylenaour')
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Identite sur $siren : Durées ".ENV, $strTime.EOL.print_r($tabRet,true)); @sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Identite sur $siren : Durées ".ENV, $strTime.EOL.print_r($tabRet,true));
@ -3478,6 +3469,8 @@ TOTAL : $dureeTot s\n";
$siren=$siren*1; $siren=$siren*1;
$tabRet=array(); $tabRet=array();
$classWDate = new WDate();
if ($histo) { if ($histo) {
$bodacc=$this->iDb->select( $bodacc=$this->iDb->select(
'bodacc_dirigeants d, bodacc_detail b, bodacc_fonctions f', 'bodacc_dirigeants d, bodacc_detail b, bodacc_fonctions f',
@ -3555,13 +3548,13 @@ TOTAL : $dureeTot s\n";
'Prenom' => $tabDir['prenom'], 'Prenom' => $tabDir['prenom'],
'NomUsage' => $tabDir['nomUsage'], 'NomUsage' => $tabDir['nomUsage'],
'Ancien' => $tabDir['depart'], 'Ancien' => $tabDir['depart'],
'DateFct' => Wdate::dateT('Ymd','Y-m-d', $ann['DATE']), 'DateFct' => $classWDate->dateT('Ymd','Y-m-d', $ann['DATE']),
); );
$this->iDb->insert('bodacc_dirigeants_histo', $this->iDb->insert('bodacc_dirigeants_histo',
array( 'siren' => $siren, array( 'siren' => $siren,
'id' => $ann['ANBASE'], 'id' => $ann['ANBASE'],
'num' => $iDir, 'num' => $iDir,
'dateEffet' => Wdate::dateT('Ymd','Y-m-d', $ann['DATE']), 'dateEffet' => $classWDate->dateT('Ymd','Y-m-d', $ann['DATE']),
'fonction' => $tabDir['fonction'], 'fonction' => $tabDir['fonction'],
'rs' => $tabDir['rs'], 'rs' => $tabDir['rs'],
'nom' => $nom, 'nom' => $nom,
@ -3590,13 +3583,13 @@ TOTAL : $dureeTot s\n";
foreach ($dirs as $k=>$dir) { foreach ($dirs as $k=>$dir) {
if ($dir['naissance_date']<>'0000-00-00') if ($dir['naissance_date']<>'0000-00-00')
$dateNaiss=Wdate::dateT('Y-m-d','d/m/Y', $dir['naissance_date']); $dateNaiss=$classWDate->dateT('Y-m-d','d/m/Y', $dir['naissance_date']);
else else
$dateNaiss=''; $dateNaiss='';
if ($dir['flux']<>'0000-00-00') if ($dir['flux']<>'0000-00-00')
$dateModif=Wdate::dateT('Y-m-d','d/m/Y', $dir['flux']); $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['flux']);
else else
$dateModif=Wdate::dateT('Y-m-d','d/m/Y', $dir['dateInsert']); $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['dateInsert']);
$nom=trim($dir['nom']); $nom=trim($dir['nom']);
$nomUsage=''; $nomUsage='';
if (trim($dir['naissance_nom'])<>'') { if (trim($dir['naissance_nom'])<>'') {
@ -3668,13 +3661,13 @@ TOTAL : $dureeTot s\n";
$dateUpdatePre=$dirs[0]['dateUpdate']; $dateUpdatePre=$dirs[0]['dateUpdate'];
foreach ($dirs as $k=>$dir) { foreach ($dirs as $k=>$dir) {
if ($dir['naissance_date']<>'0000-00-00') if ($dir['naissance_date']<>'0000-00-00')
$dateNaiss=Wdate::dateT('Y-m-d','d/m/Y', $dir['naissance_date']); $dateNaiss=$classWDate->dateT('Y-m-d','d/m/Y', $dir['naissance_date']);
else else
$dateNaiss=''; $dateNaiss='';
if ($dir['flux']<>'0000-00-00') if ($dir['flux']<>'0000-00-00')
$dateModif=Wdate::dateT('Y-m-d','d/m/Y', $dir['flux']); $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['flux']);
else else
$dateModif=Wdate::dateT('Y-m-d','d/m/Y', $dir['dateInsert']); $dateModif=$classWDate->dateT('Y-m-d','d/m/Y', $dir['dateInsert']);
if ($dir['dateUpdate']<>$dateUpdatePre) break; if ($dir['dateUpdate']<>$dateUpdatePre) break;
$tabRet[]=array( 'Fonction' => $dir['fonction_code'], $tabRet[]=array( 'Fonction' => $dir['fonction_code'],
'Titre' => $dir['fonction_lib'], 'Titre' => $dir['fonction_lib'],
@ -3720,7 +3713,7 @@ TOTAL : $dureeTot s\n";
'Nom' =>trim($nom), 'Nom' =>trim($nom),
'Prenom' =>trim($prenom), 'Prenom' =>trim($prenom),
'NomUsage' =>'', 'NomUsage' =>'',
'NaissDate' =>Wdate::dateT('Ymd', 'd/m/Y', $tabTmp['DIR_DATEN']),// 07/09/1961 'NaissDate' =>$classWDate->dateT('Ymd', 'd/m/Y', $tabTmp['DIR_DATEN']),// 07/09/1961
'NaissVille' =>$tabTmp['DIR_LIEUN'], // LE RUSSEY//, 'NaissVille' =>$tabTmp['DIR_LIEUN'], // LE RUSSEY//,
'NaissDepPays' =>'', // 25 'NaissDepPays' =>'', // 25
'Ancien' =>0, 'Ancien' =>0,
@ -3763,6 +3756,8 @@ TOTAL : $dureeTot s\n";
$procol = false; // Par défaut, on ne trouve pas de procédure collective ! $procol = false; // Par défaut, on ne trouve pas de procédure collective !
$this->dureePlan = 0; // Par défaut, on ne trouve aucune durée de plan $this->dureePlan = 0; // Par défaut, on ne trouve aucune durée de plan
$classWDate = new WDate();
$tabId = $this->getIdentiteLight($siren); $tabId = $this->getIdentiteLight($siren);
$fj = $tabId['FJ']; $fj = $tabId['FJ'];
@ -3959,7 +3954,7 @@ TOTAL : $dureeTot s\n";
//Libellé générique //Libellé générique
$tabRetEven[] = array( $tabRetEven[] = array(
'CodeEven' => '0000', 'CodeEven' => '0000',
'LibEven' => $ann['typeAnnonce']." de l'annonce du ".WDate::dateT('Y-m-d','d/m/Y',$ann['corrBodacc_Date_Parution']) 'LibEven' => $ann['typeAnnonce']." de l'annonce du ".$classWDate->dateT('Y-m-d','d/m/Y',$ann['corrBodacc_Date_Parution'])
); );
} else { } else {
@ -4004,7 +3999,7 @@ TOTAL : $dureeTot s\n";
$this->dureePlan=120; // 10 ans = 120 mois $this->dureePlan=120; // 10 ans = 120 mois
} }
} }
$this->finPlan=WDate::period2Days($this->debutPlan, $this->dureePlan.' mois'); $this->finPlan=$classWDate->period2Days($this->debutPlan, $this->dureePlan.' mois');
} }
} }
@ -4258,7 +4253,7 @@ TOTAL : $dureeTot s\n";
$this->dureePlan=120; // 10 ans = 120 mois $this->dureePlan=120; // 10 ans = 120 mois
} }
} }
$this->finPlan=WDate::period2Days($this->debutPlan, $this->dureePlan.' mois'); $this->finPlan=$classWDate->period2Days($this->debutPlan, $this->dureePlan.' mois');
//sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Annonce de Plan Histo sur $siren se terminant le $finPlan (durée=$dureePlan mois, début le $debutPlan)", print_r($ann, true).EOL.print_r($matches, true)); //sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Annonce de Plan Histo sur $siren se terminant le $finPlan (durée=$dureePlan mois, début le $debutPlan)", print_r($ann, true).EOL.print_r($matches, true));
} }
@ -4402,7 +4397,7 @@ TOTAL : $dureeTot s\n";
//$tabId=$this->getIdentiteLight($siren); //$tabId=$this->getIdentiteLight($siren);
if ($tabId['Actif']*1>0) { if ($tabId['Actif']*1>0) {
/** Procédure trop ancienne **/ /** Procédure trop ancienne **/
$derPr=WDate::dateT('Ymd','d/m/Y',$derProcol); $derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol);
@sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "Vérifier la Procédure Collective sur $siren (cas 5)", "L'entreprise, siren $siren, fait l'objet d'une clôture de procédure collective de type ".current($tabJugements)." en date du $derPr alors que cela fait plus de 12 ans !".EOL."Merci de vérifier et de supprimer la procédure le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des derniers jugements :".EOL.print_r($tabJugements,true)); @sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "Vérifier la Procédure Collective sur $siren (cas 5)", "L'entreprise, siren $siren, fait l'objet d'une clôture de procédure collective de type ".current($tabJugements)." en date du $derPr alors que cela fait plus de 12 ans !".EOL."Merci de vérifier et de supprimer la procédure le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des derniers jugements :".EOL.print_r($tabJugements,true));
$tabRet=array(); $tabRet=array();
} }
@ -4419,8 +4414,8 @@ TOTAL : $dureeTot s\n";
if ($bilan['dateExercice']>$derExercice) $derExercice=$bilan['dateExercice']; if ($bilan['dateExercice']>$derExercice) $derExercice=$bilan['dateExercice'];
if ($derExercice>$derProcol) { if ($derExercice>$derProcol) {
$derEx=WDate::dateT('Ymd','d/m/Y',$derExercice); $derEx=$classWDate->dateT('Ymd','d/m/Y',$derExercice);
$derPr=WDate::dateT('Ymd','d/m/Y',$derProcol); $derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol);
@sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "Vérifier la Procédure Collective sur $siren (cas 4)", "L'entreprise, siren $siren, fait l'objet d'une clôture de procédure collective de type ".current($tabJugements)." en date du $derPr alors que le dernier bilan publié date du $derEx !".EOL."Merci de vérifier et de supprimer la procédure le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des derniers jugements :".EOL.print_r($tabJugements,true)); @sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "Vérifier la Procédure Collective sur $siren (cas 4)", "L'entreprise, siren $siren, fait l'objet d'une clôture de procédure collective de type ".current($tabJugements)." en date du $derPr alors que le dernier bilan publié date du $derEx !".EOL."Merci de vérifier et de supprimer la procédure le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des derniers jugements :".EOL.print_r($tabJugements,true));
$tabRet=array(); $tabRet=array();
} }
@ -4442,8 +4437,8 @@ TOTAL : $dureeTot s\n";
foreach ($tabBilans as $idx=>$bilan) foreach ($tabBilans as $idx=>$bilan)
if ($bilan['dateExercice']>$derExercice) $derExercice=$bilan['dateExercice']; if ($bilan['dateExercice']>$derExercice) $derExercice=$bilan['dateExercice'];
if ($derExercice>$derProcol) { if ($derExercice>$derProcol) {
$derEx=WDate::dateT('Ymd','d/m/Y',$derExercice); $derEx=$classWDate->dateT('Ymd','d/m/Y',$derExercice);
$derPr=WDate::dateT('Ymd','d/m/Y',$derProcol); $derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol);
@sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "MInsee::getAnnonceProcol Dissolution sur $siren (cas 4)", "L'entreprise, siren $siren, fait l'objet d'une dissolution de type ".current($tabJugements)." en date du $derPr alors que le dernier bilan publié date du $derEx !".EOL."Merci de vérifier et de supprimer le code évènement le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des dernieres annonces :".EOL.print_r($tabJugements,true)); @sendMail('production@scores-decisions.com', 'prod@scores-decisions.com', "MInsee::getAnnonceProcol Dissolution sur $siren (cas 4)", "L'entreprise, siren $siren, fait l'objet d'une dissolution de type ".current($tabJugements)." en date du $derPr alors que le dernier bilan publié date du $derEx !".EOL."Merci de vérifier et de supprimer le code évènement le cas échéant !".EOL.print_r($tabBilans,true).EOL."Liste des dernieres annonces :".EOL.print_r($tabJugements,true));
$tabRet=array(); $tabRet=array();
} }
@ -4788,6 +4783,8 @@ TOTAL : $dureeTot s\n";
$strIdAnn = "siren=$siren"; $strIdAnn = "siren=$siren";
} }
$classWDate = new WDate();
$bodacc=$this->iDb->select('asso', "id, Assoc_Nom, siren, nic, Waldec, Activite, Num_Annonce, Date_Parution, Num_Parution, Departement, Sous_Prefecture, Type_Annonce, Annonce_Html, Assoc_Objet, Assoc_Adresse, Assoc_NObjet, Assoc_AObjet, Assoc_NAdresse, Assoc_Fusion, Assoc_Annulation, Assoc_ANom, Assoc_NNom, Assoc_Date_Declaration, Assoc_Date_Declaration2, typeAnnonce, codEven, dateInsert", "$strIdAnn AND dateSuppr=0 ORDER BY Date_Parution DESC LIMIT $offset,$lignes", false, MYSQL_ASSOC); $bodacc=$this->iDb->select('asso', "id, Assoc_Nom, siren, nic, Waldec, Activite, Num_Annonce, Date_Parution, Num_Parution, Departement, Sous_Prefecture, Type_Annonce, Annonce_Html, Assoc_Objet, Assoc_Adresse, Assoc_NObjet, Assoc_AObjet, Assoc_NAdresse, Assoc_Fusion, Assoc_Annulation, Assoc_ANom, Assoc_NNom, Assoc_Date_Declaration, Assoc_Date_Declaration2, typeAnnonce, codEven, dateInsert", "$strIdAnn AND dateSuppr=0 ORDER BY Date_Parution DESC LIMIT $offset,$lignes", false, MYSQL_ASSOC);
$k=0; $k=0;
@ -4800,7 +4797,7 @@ TOTAL : $dureeTot s\n";
'LibEven'=> $ann['typeAnnonce'].' de l\'annonce './*'. 'LibEven'=> $ann['typeAnnonce'].' de l\'annonce './*'.
$ann['corrNum_Annonce'].' BODACC n°'. $ann['corrNum_Annonce'].' BODACC n°'.
$ann['corrNumParution'].*/' du '. $ann['corrNumParution'].*/' du '.
WDate::dateT('Y-m-d','d/m/Y',$ann['corrDate_Parution'])/*.' (page '. $classWDate->dateT('Y-m-d','d/m/Y',$ann['corrDate_Parution'])/*.' (page '.
$ann['corrPage'].')'*/); $ann['corrPage'].')'*/);
else { else {
if (trim($ann['codEven'])<>'') { if (trim($ann['codEven'])<>'') {
@ -5019,7 +5016,11 @@ TOTAL : $dureeTot s\n";
return $tabRet; return $tabRet;
} }
function getProColPart($siren, $rubrique='', $forceVerif=false, $idAnnonce=0, $fj=false) { function getProColPart($siren, $rubrique='', $forceVerif=false, $idAnnonce=0, $fj=false)
{
$classWDate = new WDate();
$forceVerif=false; $forceVerif=false;
$tabRet=array(); $tabRet=array();
$strIdAnn=''; $strIdAnn='';
@ -5108,13 +5109,13 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
} else } else
$strRCS=$ann['siren'] . ' RCS '. ucfirst(strtolower(strtr($ann['triNom'], array('TGIcc '=>'','TGI '=>'','TC '=>'','TI '=>'',)))).'. '; $strRCS=$ann['siren'] . ' RCS '. ucfirst(strtolower(strtr($ann['triNom'], array('TGIcc '=>'','TGI '=>'','TC '=>'','TI '=>'',)))).'. ';
$texteAnnonce= 'Date : '.strtolower(WDate::dateT('Y-m-d','d M Y',$ann['dateJugement'])) .'. '. $this->iBodacc->getEvenement($ann['typeEven']).'. '. $texteAnnonce= 'Date : '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateJugement'])) .'. '. $this->iBodacc->getEvenement($ann['typeEven']).'. '.
$strRCS . $strRCS .
trim($ann['raisonSociale']). '. Adresse : '. $adresse.' '.$ann['codePostal'].' '.$ann['ville'].'. '; trim($ann['raisonSociale']). '. Adresse : '. $adresse.' '.$ann['codePostal'].' '.$ann['ville'].'. ';
if (trim($ann['numero'])<>'') $texteAnnonce.='Jugement Numéro : '.trim($ann['numero']).'. '; if (trim($ann['numero'])<>'') $texteAnnonce.='Jugement Numéro : '.trim($ann['numero']).'. ';
if ($ann['dateCessationPaiement']*1<>0) $texteAnnonce.='Cessation des paiements le '.strtolower(WDate::dateT('Y-m-d','d M Y',$ann['dateCessationPaiement'])).'. '; if ($ann['dateCessationPaiement']*1<>0) $texteAnnonce.='Cessation des paiements le '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateCessationPaiement'])).'. ';
if (trim($ann['inter1type'])<>'' && ($ann['inter1id']>0 || trim($ann['inter1nom'])<>'') ) { if (trim($ann['inter1type'])<>'' && ($ann['inter1id']>0 || trim($ann['inter1nom'])<>'') ) {
$texteAnnonce.=$tabInter[$ann['inter1type']].' : '.$ann['inter1nom']; $texteAnnonce.=$tabInter[$ann['inter1type']].' : '.$ann['inter1nom'];
@ -5176,9 +5177,9 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
if ($ann['dateEffetFinP']*1<>'') { if ($ann['dateEffetFinP']*1<>'') {
if ($depotComptes) if ($depotComptes)
$texteAnnonce.=' Comptes annuels et rapports de l\'exercice clos le : '.strtolower(WDate::dateT('Y-m-d','d M Y',$ann['dateEffetFinP'])).'. '; $texteAnnonce.=' Comptes annuels et rapports de l\'exercice clos le : '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateEffetFinP'])).'. ';
else else
$texteAnnonce.=' Date d\'effet : '.strtolower(WDate::dateT('Y-m-d','d M Y',$ann['dateEffetFinP'])).'. '; $texteAnnonce.=' Date d\'effet : '.strtolower($classWDate->dateT('Y-m-d','d M Y',$ann['dateEffetFinP'])).'. ';
} }
if (trim($ann['complement'])<>'') $texteAnnonce.=' Observations : '.trim($ann['complement']).'.'; if (trim($ann['complement'])<>'') $texteAnnonce.=' Observations : '.trim($ann['complement']).'.';
@ -5221,7 +5222,7 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
else else
$this->dureePlan=120; // 10 ans = 120 mois $this->dureePlan=120; // 10 ans = 120 mois
} }
$this->finPlan=WDate::period2Days($this->debutPlan, $this->dureePlan.' mois'); $this->finPlan=$classWDate->period2Days($this->debutPlan, $this->dureePlan.' mois');
} }
$strVente=''; $strVente='';
$nouvCapital=''; $nouvCapital='';
@ -5300,50 +5301,6 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
"n.naf='$naf4' AND substring(n.`id CC`,1,4)=c.numBrochure $strDep GROUP BY n.`id CC`", false, MYSQL_ASSOC); "n.naf='$naf4' AND substring(n.`id CC`,1,4)=c.numBrochure $strDep GROUP BY n.`id CC`", false, MYSQL_ASSOC);
return $listeCC; return $listeCC;
} }
/* $tabRet['nbEtab']=trim(strip_tags(str_replace('afficher la liste...', '', @getTextInHtml($pou, '<tr><td class="ligne1_2">Etablissements', '<td class="ligne2_2">', '</td></tr>'))));
/*$urlPEtab='http://www.score3.fr/etablissements.shtml?page=1&siren='.$siren;
$refererPEtab=$urlP;
}
$tabRet['effectif']=trim(@getTextInHtml($pou, '<tr><td class="ligne1_2">Effectifs</td>', '<td class="ligne2_2">', '</td></tr>'));
$strTmp=trim(str_replace('/','',@getTextInHtml($pou, '<tr><td class="ligne1_2">Date d\'immatriculation</td>', '<td class="ligne2_2">', '</td></tr>')));
if (strlen($strTmp)==4)
$strTmp='0101'.$strTmp;
elseif (strlen($strTmp)==6)
$strTmp='01'.$strTmp;
$tabRet['dateCreation']=WDate::dateT('dmY','Y-m-d',$strTmp);
$strTmp=trim(str_replace('/','',@getTextInHtml($pou, '<tr><td class="ligne1_2">Date de fin d\'exploitation</td>', '<td class="ligne2_2">', '</td></tr>')));
if (strlen($strTmp)==4)
$strTmp='0101'.$strTmp;
elseif (strlen($strTmp)==6)
$strTmp='01'.$strTmp;
$tabRet['dateFermeture']=WDate::dateT('dmY','Y-m-d',$strTmp);
if($tabRet['tel']=='' || $tabRet['tel']=='0')
$tabRet['tel']=trim(@getTextInHtml($pou, '<tr><td class="ligne1_2">Téléphone</td>', '<td class="ligne2_2">', '</td></tr>'));
if($tabRet['fax']=='' || $tabRet['fax']=='0')
$tabRet['fax']=trim(@getTextInHtml($pou, '<tr><td class="ligne1_2">Fax</td>', '<td class="ligne2_2">', '</td></tr>'));
$strTmp=trim(@getTextInHtml($pou, '<tr><td class="ligne1_2">Activité principale</td>', '<td class="ligne2_2">', '</td></tr>'));
$tabRet['naf_lib']=trim(strtr(substr($strTmp,0,strlen($strTmp)-6),'()',' '));
if ($tabRet['naf']=='')
$tabRet['naf']=trim(strtr(substr($strTmp,-6),'()',' '));
$strTmp=trim(@getTextInHtml($pou, '<tr><td class="ligne1_2">Chiffre d\'affaires</td>', '<td class="ligne2_2">', '</td></tr>'));
$tabRet['ca']=$strTmp;
$tabRet['score_pouey']=trim(@getTextInHtml($pou, '<param name="movie" value="cadran.swf?rotation=', '&amp;type=pouey&amp;valeur=', '">'));
$tabRet['score_conan']=trim(@getTextInHtml($pou, '<param name="movie" value="cadran.swf?rotation=', '&amp;type=ch&amp;valeur=', '">'));
$tabRet['score_afdcc']=trim(@getTextInHtml($pou, '<param name="movie" value="cadran.swf?rotation=', '&amp;type=afdcc&amp;valeur=', '">'));
$tabRet['vigilance'] =trim(@getTextInHtml($pou, '<param name="movie" value="vigilance.swf', 'degre=', '">'));
return $tabRet;
}
*/
private function findSiteWeb($rs) private function findSiteWeb($rs)
{ {
@ -5682,6 +5639,8 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
public function getAvisInsee($siren, $nic='') public function getAvisInsee($siren, $nic='')
{ {
$classWDate = new WDate();
if ($siren*1==0 || !$this->valideSiren($siren, $nic)) return false; if ($siren*1==0 || !$this->valideSiren($siren, $nic)) return false;
if ($nic=='' || $nic*1==0 || $nic>99999) if ($nic=='' || $nic*1==0 || $nic>99999)
$strNic=" AND nic=nicSiege"; $strNic=" AND nic=nicSiege";
@ -5754,7 +5713,7 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
} }
if (preg_match("/Derni&egrave;re mise &agrave; jour : (.*)<\/div>/Uis", $body, $matches)) if (preg_match("/Derni&egrave;re mise &agrave; jour : (.*)<\/div>/Uis", $body, $matches))
$tabInfos['dateMaj']=WDate::dateT('d/m/Y','Y-m-d',trim($matches[1])); $tabInfos['dateMaj']=$classWDate->dateT('d/m/Y','Y-m-d',trim($matches[1]));
$s1=substr($siren,0,3); $s1=substr($siren,0,3);
$s2=substr($siren,3,3); $s2=substr($siren,3,3);
@ -5768,7 +5727,7 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
if (preg_match('/<label id="labelFiche">Etat : <\/label>(.*)depuis le(.*)<\/p>/Uis', $body, $matches)) { if (preg_match('/<label id="labelFiche">Etat : <\/label>(.*)depuis le(.*)<\/p>/Uis', $body, $matches)) {
$tabInfos['etatEt'] = trim($matches[1]); $tabInfos['etatEt'] = trim($matches[1]);
$tabInfos['dateEtatEt']=WDate::dateT('d/m/Y','Y-m-d',trim($matches[2])); $tabInfos['dateEtatEt']=$classWDate->dateT('d/m/Y','Y-m-d',trim($matches[2]));
} }
if (preg_match('/<label id="labelFiche">Cat&eacute;gorie d\'&eacute;tablissement : <\/label>(.*)<\/p>/Uis', $body, $matches)) { if (preg_match('/<label id="labelFiche">Cat&eacute;gorie d\'&eacute;tablissement : <\/label>(.*)<\/p>/Uis', $body, $matches)) {
@ -5853,7 +5812,7 @@ ORDER BY a.dateJugement DESC".EOL.EOL.print_r($collecte,true));*/
if (preg_match('/<label id="labelFiche">Etat : <\/label>(?:.*)<div id="adresse">(.*) le (.*)<\/div>/Uis', $body, $matches)) { if (preg_match('/<label id="labelFiche">Etat : <\/label>(?:.*)<div id="adresse">(.*) le (.*)<\/div>/Uis', $body, $matches)) {
$tabInfos['etatEn'] = str_replace('&#39;',"'",trim($matches[1])); $tabInfos['etatEn'] = str_replace('&#39;',"'",trim($matches[1]));
$tabInfos['dateEtatEn']=WDate::dateT('d/m/Y','Y-m-d',trim($matches[2])); $tabInfos['dateEtatEn']=$classWDate->dateT('d/m/Y','Y-m-d',trim($matches[2]));
} }
if (preg_match('/<label id="labelFiche">NIC siège \:(?:.*)<div id="adresse">(.*)<\/div>/Uis', $body, $matches)) { if (preg_match('/<label id="labelFiche">NIC siège \:(?:.*)<div id="adresse">(.*)<\/div>/Uis', $body, $matches)) {

View File

@ -1,5 +1,7 @@
<?php <?php
require_once 'Metier/partenaires/classMPrivileges.php'; require_once 'Metier/partenaires/classMPrivileges.php';
require_once 'Metier/partenaires/classMMarques.php'; require_once 'Metier/partenaires/classMMarques.php';
define('INDISCORE_DEBUG', false); define('INDISCORE_DEBUG', false);
@ -521,7 +523,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
} }
$DCREN=$dateCrea; $DCREN=$dateCrea;
$DCREN_AA=substr($dateCrea,0,4); $DCREN_AA=substr($dateCrea,0,4);
$AGE=WDate::nbMoisEntre($dateCrea, date('Ymd')); $AGE=$classWdate->nbMoisEntre($dateCrea, date('Ymd'));
/** Elements provenant des ratios : /** Elements provenant des ratios :
** @todo Problème sur les comptes consolides avec R et Rs ** ** @todo Problème sur les comptes consolides avec R et Rs **
@ -701,14 +703,22 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
require_once 'Metier/scores/classMRegression.php'; require_once 'Metier/scores/classMRegression.php';
foreach ($tabFormules as $i2=>$Rtmp) { foreach ($tabFormules as $i2=>$Rtmp) {
for ($i=0;$i<=$iMax;$i++) { for ($i=0;$i<=$iMax;$i++) {
if (isset($tabRatios[$i][$Rtmp['id']])) $regR[$Rtmp['id']][]=$tabRatios[$i][$Rtmp['id']]; if (isset($tabRatios[$i][$Rtmp['id']])) {
else { unset($tabRegX[$i]); } $regR[$Rtmp['id']][]=$tabRatios[$i][$Rtmp['id']];
} else {
unset($tabRegX[$i]);
}
if (isset($tabRatiosSecteurs[$i][$Rtmp['id']])) if (isset($tabRatiosSecteurs[$i][$Rtmp['id']]))
$regRs[$Rtmp['id']][]=$tabRatiosSecteurs[$i][$Rtmp['id']]; $regRs[$Rtmp['id']][]=$tabRatiosSecteurs[$i][$Rtmp['id']];
} }
if ( is_array($regR) && array_key_exists($Rtmp['id'], $regR) ) {
$regR[$Rtmp['id']]=array_reverse($regR[$Rtmp['id']]); $regR[$Rtmp['id']]=array_reverse($regR[$Rtmp['id']]);
}
if ( is_array($regRs) && array_key_exists($Rtmp['id'], $regRs) ) {
$regRs[$Rtmp['id']]=array_reverse($regRs[$Rtmp['id']]); $regRs[$Rtmp['id']]=array_reverse($regRs[$Rtmp['id']]);
} }
}
// On renverse les tableaux 2008, 2007, 2006... en 2006, 2007, 2008 // On renverse les tableaux 2008, 2007, 2006... en 2006, 2007, 2008
$tabRegX=array_reverse($tabRegX); $tabRegX=array_reverse($tabRegX);
@ -745,7 +755,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$BILANANNEEp=substr($BILANDATEp,0,4)*1; $BILANANNEEp=substr($BILANDATEp,0,4)*1;
if ($BILANANNEEp>0) { if ($BILANANNEEp>0) {
$BILANp=1; $BILANp=1;
$nbMoisBilDate=WDate::nbMoisEntre($BILANDATEp, $BILANDATE); $nbMoisBilDate=$classWdate->nbMoisEntre($BILANDATEp, $BILANDATE);
$nbMoisBilCumul+=$nmp; $nbMoisBilCumul+=$nmp;
$tabClotures[$BILANDATEp]=$BILANDATEp; $tabClotures[$BILANDATEp]=$BILANDATEp;
} }
@ -755,7 +765,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$nmp2=$tabBilan[2]['DUREE_MOIS']; $nmp2=$tabBilan[2]['DUREE_MOIS'];
if ($BILANANNEEp2>0) { if ($BILANANNEEp2>0) {
$BILANp2=1; $BILANp2=1;
$nbMoisBilDate=WDate::nbMoisEntre($BILANDATEp2, $BILANDATE); $nbMoisBilDate=$classWdate->nbMoisEntre($BILANDATEp2, $BILANDATE);
$nbMoisBilCumul+=$nmp2; $nbMoisBilCumul+=$nmp2;
$tabClotures[$BILANDATEp2]=$BILANDATEp2; $tabClotures[$BILANDATEp2]=$BILANDATEp2;
} }
@ -765,7 +775,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$nmp3=$tabBilan[3]['DUREE_MOIS']; $nmp3=$tabBilan[3]['DUREE_MOIS'];
if ($BILANANNEEp3>0) { if ($BILANANNEEp3>0) {
$BILANp3=1; $BILANp3=1;
$nbMoisBilDate=WDate::nbMoisEntre($BILANDATEp3, $BILANDATE); $nbMoisBilDate=$classWdate->nbMoisEntre($BILANDATEp3, $BILANDATE);
$nbMoisBilCumul+=$nmp3; $nbMoisBilCumul+=$nmp3;
$tabClotures[$BILANDATEp3]=$BILANDATEp3; $tabClotures[$BILANDATEp3]=$BILANDATEp3;
} }
@ -775,7 +785,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$nmp4=$tabBilan[4]['DUREE_MOIS']; $nmp4=$tabBilan[4]['DUREE_MOIS'];
if ($BILANANNEEp4>0) { if ($BILANANNEEp4>0) {
$BILANp4=1; $BILANp4=1;
$nbMoisBilDate=WDate::nbMoisEntre($BILANDATEp4, $BILANDATE); $nbMoisBilDate=$classWdate->nbMoisEntre($BILANDATEp4, $BILANDATE);
//$nbMoisBilCumul+=$nmp4; //$nbMoisBilCumul+=$nmp4;
$tabClotures[$BILANDATEp4]=$BILANDATEp4; $tabClotures[$BILANDATEp4]=$BILANDATEp4;
} }
@ -904,14 +914,14 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
// Date de l'annonce // Date de l'annonce
$ANNONCEDATE=$depot['DateParution']; $ANNONCEDATE=$depot['DateParution'];
$ANNONCEBODCDATE=$depot['DateParution']; $ANNONCEBODCDATE=$depot['DateParution'];
$BILANDERANNEE=date('Y', mktime(0, 0, 0, Wdate::dateT('Y-m-d', 'm', $depot['dateEffet']), Wdate::dateT('Y-m-d', 'd', $depot['dateEffet']), Wdate::dateT('Y-m-d', 'Y', $depot['dateEffet'])+1)); $BILANDERANNEE=date('Y', mktime(0, 0, 0, $classWdate->dateT('Y-m-d', 'm', $depot['dateEffet']), $classWdate->dateT('Y-m-d', 'd', $depot['dateEffet']), $classWdate->dateT('Y-m-d', 'Y', $depot['dateEffet'])+1));
$ANNONCEBODDATE=$depot['DateParution'];//dateEffet $ANNONCEBODDATE=$depot['DateParution'];//dateEffet
if ($nbDepotCpt==1 && // 1 seul dépôt des comptes if ($nbDepotCpt==1 && // 1 seul dépôt des comptes
abs(WDate::nbMoisEntre(date('Y-m-d'), $dateCrea))<60) // Entreprise de moins de 5 ans (60 mois) abs($classWdate->nbMoisEntre(date('Y-m-d'), $dateCrea))<60) // Entreprise de moins de 5 ans (60 mois)
$nbMoisMax=abs(WDate::nbMoisEntre($dateCrea,$depot['dateEffet'])); $nbMoisMax=abs($classWdate->nbMoisEntre($dateCrea,$depot['dateEffet']));
} else { } else {
if (abs(WDate::nbMoisEntre($lastDepot, $depot['dateEffet']))>$nbMoisMax) { if (abs($classWdate->nbMoisEntre($lastDepot, $depot['dateEffet']))>$nbMoisMax) {
$nbMoisMax=abs(WDate::nbMoisEntre($lastDepot, $depot['dateEffet'])); $nbMoisMax=abs($classWdate->nbMoisEntre($lastDepot, $depot['dateEffet']));
if ($nbMoisMax>24 && $ANNONCEBODCMANQDATE==false) { if ($nbMoisMax>24 && $ANNONCEBODCMANQDATE==false) {
/** @todo Annomalie Bilans 1 mois sur 976320309 /** @todo Annomalie Bilans 1 mois sur 976320309
** $ANNONCEBODCREGUL 0 Pas de publication régulière des comptes ** $ANNONCEBODCREGUL 0 Pas de publication régulière des comptes
@ -926,7 +936,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$nmp4 $nmp4
**/ **/
//@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Indiscore sur $siren : Bilans manquant", "$lastDepot, $nbMoisMax, ".$depot['dateEffet'].", $ANNONCEBODCMANQDATE"); //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Indiscore sur $siren : Bilans manquant", "$lastDepot, $nbMoisMax, ".$depot['dateEffet'].", $ANNONCEBODCMANQDATE");
$ANNONCEBODCMANQDATE=date('Y-m-d', mktime(0, 0, 0, Wdate::dateT('Y-m-d', 'm', $depot['dateEffet']), Wdate::dateT('Y-m-d', 'd', $depot['dateEffet']), Wdate::dateT('Y-m-d', 'Y', $depot['dateEffet'])+1)); $ANNONCEBODCMANQDATE=date('Y-m-d', mktime(0, 0, 0, $classWdate->dateT('Y-m-d', 'm', $depot['dateEffet']), $classWdate->dateT('Y-m-d', 'd', $depot['dateEffet']), $classWdate->dateT('Y-m-d', 'Y', $depot['dateEffet'])+1));
$ANNONCEBODCMANQ_AA=substr($ANNONCEBODCMANQDATE,0,4); $ANNONCEBODCMANQ_AA=substr($ANNONCEBODCMANQDATE,0,4);
} }
} }
@ -972,7 +982,7 @@ Liste des dates de clotures :
foreach ($tabDepotCpt as $iDep=>$depot) { foreach ($tabDepotCpt as $iDep=>$depot) {
if ($iDep==0) { if ($iDep==0) {
$ANNONCEBODADATE=$depot['DateParution']; $ANNONCEBODADATE=$depot['DateParution'];
if (Wdate::dateT('Y-m-d', 'Ymd',$ANNONCEBODADATE)>Wdate::dateT('Y-m-d', 'Ymd',$ANNONCEBODDATE)) { if ($classWdate->dateT('Y-m-d', 'Ymd',$ANNONCEBODADATE)>$classWdate->dateT('Y-m-d', 'Ymd',$ANNONCEBODDATE)) {
$ANNONCEBODDATE=$depot['DateParution']; $ANNONCEBODDATE=$depot['DateParution'];
$tabTmp=array(); $tabTmp=array();
foreach ($depot['evenements'] as $even) foreach ($depot['evenements'] as $even)
@ -1001,7 +1011,7 @@ Liste des dates de clotures :
foreach ($tabDepotCpt as $iDep=>$depot) { foreach ($tabDepotCpt as $iDep=>$depot) {
if ($iDep==0) { if ($iDep==0) {
$ANNONCEBODBDATE=$depot['DateParution']; $ANNONCEBODBDATE=$depot['DateParution'];
if (Wdate::dateT('Y-m-d', 'Ymd',$ANNONCEBODBDATE)>Wdate::dateT('Y-m-d', 'Ymd',$ANNONCEBODDATE)) { if ($classWdate->dateT('Y-m-d', 'Ymd',$ANNONCEBODBDATE)>$classWdate->dateT('Y-m-d', 'Ymd',$ANNONCEBODDATE)) {
$ANNONCEBODDATE=$depot['DateParution']; $ANNONCEBODDATE=$depot['DateParution'];
$tabTmp=array(); $tabTmp=array();
foreach ($depot['evenements'] as $even) foreach ($depot['evenements'] as $even)
@ -1814,11 +1824,11 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$SCORECONF=100; $SCORECONF=100;
// Présence d'un bilan mais trop vieux // Présence d'un bilan mais trop vieux
if ($NBBILAN>0 && WDate::nbMoisEntre($BILANDATE,date('Ymd'))>=24) $BILANVIEUX=true; if ($NBBILAN>0 && $classWdate->nbMoisEntre($BILANDATE,date('Ymd'))>=24) $BILANVIEUX=true;
else $BILANVIEUX=false; else $BILANVIEUX=false;
// Présence d'un bilan mais trop vieux et c'est anormal // Présence d'un bilan mais trop vieux et c'est anormal
if ($NBBILAN>0 && WDate::nbMoisEntre($BILANDATE,date('Ymd'))>=30) $BILANMANQUE=true; if ($NBBILAN>0 && $classWdate->nbMoisEntre($BILANDATE,date('Ymd'))>=30) $BILANMANQUE=true;
else $BILANMANQUE=false; else $BILANMANQUE=false;
if ( (@$tabBil[0]['Millesime']+20000<date('Ymd')*1) && // Le dernier bilan date de + de 2 ans if ( (@$tabBil[0]['Millesime']+20000<date('Ymd')*1) && // Le dernier bilan date de + de 2 ans
@ -1886,12 +1896,12 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$DIR_NB++; $DIR_NB++;
if ($DIR_NB==1) { if ($DIR_NB==1) {
$DIR1_NOM=preg_replace('/ +/',' ',$dir['Civilite'].' '.$dir['Nom'].' '.$dir['Prenom']); $DIR1_NOM=preg_replace('/ +/',' ',$dir['Civilite'].' '.$dir['Nom'].' '.$dir['Prenom']);
$DIR1_AGE=floor(Wdate::nbMoisEntre(Wdate::dateT('d/m/Y','Ymd',$dir['NaissDate']))/12); $DIR1_AGE=floor($classWdate->nbMoisEntre($classWdate->dateT('d/m/Y','Ymd',$dir['NaissDate']))/12);
$DIR1_FONC=$dir['Titre']; $DIR1_FONC=$dir['Titre'];
$DIR1_TYPE='PP'; $DIR1_TYPE='PP';
} elseif ($DIR_NB==2) { } elseif ($DIR_NB==2) {
$DIR2_NOM=preg_replace('/ +/',' ',$dir['Civilite'].' '.$dir['Nom'].' '.$dir['Prenom']); $DIR2_NOM=preg_replace('/ +/',' ',$dir['Civilite'].' '.$dir['Nom'].' '.$dir['Prenom']);
$DIR2_AGE=floor(Wdate::nbMoisEntre(Wdate::dateT('d/m/Y','Ymd',$dir['NaissDate']))/12); $DIR2_AGE=floor($classWdate->nbMoisEntre($classWdate->dateT('d/m/Y','Ymd',$dir['NaissDate']))/12);
$DIR2_FONC=$dir['Titre']; $DIR2_FONC=$dir['Titre'];
$DIR2_TYPE='PP'; $DIR2_TYPE='PP';
} }
@ -1948,7 +1958,7 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
} }
$ANNONCEINTERDIT++; $ANNONCEINTERDIT++;
$ANNONCEINTERDITDATE=Wdate::dateT('d/m/Y','Y-m-d', $dir['DateFct']); $ANNONCEINTERDITDATE=$classWdate->dateT('d/m/Y','Y-m-d', $dir['DateFct']);
break(2); break(2);
case 15: case 15:
case 16: // Procédure collective dans l'historique du dirigeant case 16: // Procédure collective dans l'historique du dirigeant
@ -1997,7 +2007,7 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$dateMaj=$tabTmp[0]['dateUpdate']; $dateMaj=$tabTmp[0]['dateUpdate'];
else else
$dateMaj=$tabTmp[0]['dateInsert']; $dateMaj=$tabTmp[0]['dateInsert'];
if (WDate::nbMoisEntre($dateMaj, date('Ymd'))<=$ENQUETELIM) { if ($classWdate->nbMoisEntre($dateMaj, date('Ymd'))<=$ENQUETELIM) {
$encoursForce=$tabTmp[0]['encours']; $encoursForce=$tabTmp[0]['encours'];
if ($tabTmp[0]['scoreConf']<>null) $SCORECONF=$tabTmp[0]['scoreConf']; if ($tabTmp[0]['scoreConf']<>null) $SCORECONF=$tabTmp[0]['scoreConf'];
if ($SCORECONF>$ENQUETEMAXI) $SCORECONF=$ENQUETEMAXI; if ($SCORECONF>$ENQUETEMAXI) $SCORECONF=$ENQUETEMAXI;
@ -2046,35 +2056,35 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$MODIFPAIDATE=$infoFacto[0]['DateEven']; $MODIFPAIDATE=$infoFacto[0]['DateEven'];
switch ($infoFacto[0]['CodeRisque']) { switch ($infoFacto[0]['CodeRisque']) {
case 'OK': $COTEOK=true; case 'OK': $COTEOK=true;
$COTEOK_MMAA=$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $COTEOK_MMAA=$CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
if ($noteSolvabilite>=40 && $noteSolvabilite<=45) $noteSolvabilite+=5; if ($noteSolvabilite>=40 && $noteSolvabilite<=45) $noteSolvabilite+=5;
$CSFACTO=0; $CSFACTO=0;
break; break;
case 'IP': $IMPAYE=true; case 'IP': $IMPAYE=true;
$IMPAYE_MMAA=$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $IMPAYE_MMAA=$CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
$CSFACTO='I'; $CSFACTO='I';
$profilPayeur=5; $profilPayeur=5;
break; break;
case 'PR': $PRIVILEGES=true; case 'PR': $PRIVILEGES=true;
$PRIVILEGES_MMAA=$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $PRIVILEGES_MMAA=$CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
$CSFACTO='P'; $CSFACTO='P';
$profilPayeur=5; $profilPayeur=5;
break; break;
case 'RG': $RISQUEGROUPE=true; case 'RG': $RISQUEGROUPE=true;
$RISQUEGROUPE_MMAA=$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $RISQUEGROUPE_MMAA=$CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
$CSFACTO=24; $SCOREDIRI-=10; $CSFACTO=24; $SCOREDIRI-=10;
break; break;
case 'DEF': $DEFAUT=true; case 'DEF': $DEFAUT=true;
$DEFAUT_MMAA=$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $DEFAUT_MMAA=$CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
$CSFACTO='D'; $CSFACTO='D';
break; break;
case 'LC': $LCASSUR=true; case 'LC': $LCASSUR=true;
$LCASSUR_MMAA=$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $LCASSUR_MMAA=$CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
$CSFACTO='T'; $CSFACTO='T';
break; break;
case 'KO': $noteSolvabilite=$SCORECONF=$SCOREDIRI=0; case 'KO': $noteSolvabilite=$SCORECONF=$SCOREDIRI=0;
$CSFACTO=50; $CSFACTO=50;
$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
break; break;
default: default:
if ($iFacto->risqueImpaye) { if ($iFacto->risqueImpaye) {
@ -2082,15 +2092,15 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$RISQUEIMPAYE=true; $RISQUEIMPAYE=true;
} else { } else {
$CSFACTO=$infoFacto[0]['CoteCS']*1; $CSFACTO=$infoFacto[0]['CoteCS']*1;
$CSFACTO_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']); $CSFACTO_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateEven']);
} }
break; break;
} }
$CSFACTOFIN_MMAA=WDate::dateT('Y-m-d', 'Ym', $infoFacto[0]['DateFin']); $CSFACTOFIN_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $infoFacto[0]['DateFin']);
if ($infoFacto[0]['CoteCS']*1>0) if ($infoFacto[0]['CoteCS']*1>0)
$libInfoPaiement='Courant '.WDate::dateT('Y-m-d', 'M Y', $infoFacto[0]['DateEven']).' : '.$infoFacto[0]['LibCS']; $libInfoPaiement='Courant '.$classWdate->dateT('Y-m-d', 'M Y', $infoFacto[0]['DateEven']).' : '.$infoFacto[0]['LibCS'];
else { else {
$libInfoPaiement=trim('Depuis '.WDate::dateT('Y-m-d', 'M Y', $infoFacto[0]['DateEven']).' : '.$infoFacto[0]['LibCS'].' '.$libProfilPayeur); $libInfoPaiement=trim('Depuis '.$classWdate->dateT('Y-m-d', 'M Y', $infoFacto[0]['DateEven']).' : '.$infoFacto[0]['LibCS'].' '.$libProfilPayeur);
$encoursCS=7500; $encoursCS=7500;
} }
} else { } else {
@ -2101,7 +2111,7 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$libInfoPaiement='Aucun retard de paiement significatif n\'a été porté à notre connaissance par l\'ensemble de nos partenaires.'; $libInfoPaiement='Aucun retard de paiement significatif n\'a été porté à notre connaissance par l\'ensemble de nos partenaires.';
if ($iFacto->risqueImpaye) { if ($iFacto->risqueImpaye) {
$RISQUEIMPAYE_MMAA=WDate::dateT('Y-m', 'Ym', $iFacto->risqueImpayeDate); $RISQUEIMPAYE_MMAA=$classWdate->dateT('Y-m', 'Ym', $iFacto->risqueImpayeDate);
if ((''.$iFacto->risqueImpayeDate.'-01')>$MODIFPAIDATE) if ((''.$iFacto->risqueImpayeDate.'-01')>$MODIFPAIDATE)
$MODIFPAIDATE=''.$iFacto->risqueImpayeDate.'-01'; $MODIFPAIDATE=''.$iFacto->risqueImpayeDate.'-01';
} }
@ -2121,11 +2131,11 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$PRIVILEGES=true; $PRIVILEGES=true;
$PRIVILEGESECU=$tabPriv['03']['nb']; $PRIVILEGESECU=$tabPriv['03']['nb'];
$PRIVILEGESECU_MT=$tabPriv['03']['insCumul']; $PRIVILEGESECU_MT=$tabPriv['03']['insCumul'];
$PRIVILEGES_MMAA=WDate::dateT('Y-m-d', 'Ym', $tabPriv['03']['dateFraiche']); $PRIVILEGES_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $tabPriv['03']['dateFraiche']);
if ($tabPriv['03']['dateFraiche']>$MODIFPAIDATE) if ($tabPriv['03']['dateFraiche']>$MODIFPAIDATE)
$MODIFPAIDATE=$tabPriv['03']['dateFraiche']; $MODIFPAIDATE=$tabPriv['03']['dateFraiche'];
if ($infoFacto[0]['CoteCS']*1==0) if ($infoFacto[0]['CoteCS']*1==0)
$libInfoPaiement=trim('Depuis le '.WDate::dateT('Y-m-d', 'd/m/Y', $tabPriv['03']['dateFraiche'])." : $PRIVILEGESECU inscription(s) URSSAF pour un montant de ".number_format($PRIVILEGESECU_MT,2,',',' ')." euros. $libProfilPayeur"); $libInfoPaiement=trim('Depuis le '.$classWdate->dateT('Y-m-d', 'd/m/Y', $tabPriv['03']['dateFraiche'])." : $PRIVILEGESECU inscription(s) URSSAF pour un montant de ".number_format($PRIVILEGESECU_MT,2,',',' ')." euros. $libProfilPayeur");
if ($PRIVILEGESECU==1 && $PRIVILEGESECU_MT<15000) { if ($PRIVILEGESECU==1 && $PRIVILEGESECU_MT<15000) {
if (($NBBILAN==0||$BILANVIEUX||$BILANMANQUE) && $CAPITAL<750000) $noteSolvMax=42; if (($NBBILAN==0||$BILANVIEUX||$BILANMANQUE) && $CAPITAL<750000) $noteSolvMax=42;
elseif (($NBBILAN==0||$BILANVIEUX||$BILANMANQUE) && $CAPITAL>=750000) $noteSolvMax=45; elseif (($NBBILAN==0||$BILANVIEUX||$BILANMANQUE) && $CAPITAL>=750000) $noteSolvMax=45;
@ -2141,14 +2151,14 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$PRIVILEGES=true; $PRIVILEGES=true;
$PRIVILEGETRES=$tabPriv['04']['nb']; $PRIVILEGETRES=$tabPriv['04']['nb'];
$PRIVILEGETRES_MT=$tabPriv['04']['insCumul']; $PRIVILEGETRES_MT=$tabPriv['04']['insCumul'];
$PRIVILEGES_MMAA=WDate::dateT('Y-m-d', 'Ym', $tabPriv['04']['dateFraiche']); $PRIVILEGES_MMAA=$classWdate->dateT('Y-m-d', 'Ym', $tabPriv['04']['dateFraiche']);
if ($tabPriv['04']['dateFraiche']>$MODIFPAIDATE) if ($tabPriv['04']['dateFraiche']>$MODIFPAIDATE)
$MODIFPAIDATE=$tabPriv['04']['dateFraiche']; $MODIFPAIDATE=$tabPriv['04']['dateFraiche'];
if ($infoFacto[0]['CoteCS']*1==0) if ($infoFacto[0]['CoteCS']*1==0)
if ($PRIVILEGESECU<1) if ($PRIVILEGESECU<1)
$libInfoPaiement=trim('Depuis le '.WDate::dateT('Y-m-d', 'd/m/Y', $tabPriv['04']['dateFraiche'])." : $PRIVILEGETRES inscription(s) TRESOR pour un montant de ".number_format($PRIVILEGETRES_MT,2,',',' ')." euros. $libProfilPayeur"); $libInfoPaiement=trim('Depuis le '.$classWdate->dateT('Y-m-d', 'd/m/Y', $tabPriv['04']['dateFraiche'])." : $PRIVILEGETRES inscription(s) TRESOR pour un montant de ".number_format($PRIVILEGETRES_MT,2,',',' ')." euros. $libProfilPayeur");
else else
$libInfoPaiement.='<br/>'.trim('Depuis le '.WDate::dateT('Y-m-d', 'd/m/Y', $tabPriv['04']['dateFraiche'])." : $PRIVILEGETRES inscription(s) TRESOR pour un montant de ".number_format($PRIVILEGETRES_MT,2,',',' ')." euros. $libProfilPayeur"); $libInfoPaiement.='<br/>'.trim('Depuis le '.$classWdate->dateT('Y-m-d', 'd/m/Y', $tabPriv['04']['dateFraiche'])." : $PRIVILEGETRES inscription(s) TRESOR pour un montant de ".number_format($PRIVILEGETRES_MT,2,',',' ')." euros. $libProfilPayeur");
if ($PRIVILEGETRES==1 && $PRIVILEGETRES_MT<15000) { if ($PRIVILEGETRES==1 && $PRIVILEGETRES_MT<15000) {
if ($PRIVILEGESECU>0) $seuil=45; if ($PRIVILEGESECU>0) $seuil=45;
else $seuil=55; else $seuil=55;
@ -2421,9 +2431,9 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$BILANDATE=$tabTmp[0]['dateClotureNum']; $BILANDATE=$tabTmp[0]['dateClotureNum'];
if ($BILANDATE>0 && $tabIdentite['SituationJuridique']=='' && $tabIdentite['Actif']==1) { if ($BILANDATE>0 && $tabIdentite['SituationJuridique']=='' && $tabIdentite['Actif']==1) {
$BILAN=true; $BILAN=true;
if (WDate::nbMoisEntre($BILANDATE,date('Ymd'))>=24) $BILANVIEUX=true; if ($classWdate->nbMoisEntre($BILANDATE,date('Ymd'))>=24) $BILANVIEUX=true;
else $BILANVIEUX=false; else $BILANVIEUX=false;
if (WDate::nbMoisEntre($BILANDATE,date('Ymd'))>=30) $BILANMANQUE=true; if ($classWdate->nbMoisEntre($BILANDATE,date('Ymd'))>=30) $BILANMANQUE=true;
else $BILANMANQUE=false; else $BILANMANQUE=false;
$ENCOURS=$CAESTIME/72; $ENCOURS=$CAESTIME/72;
if ($noteSolvabilite>=40 && $ENCOURS<5000) $ENCOURS=5000; if ($noteSolvabilite>=40 && $ENCOURS<5000) $ENCOURS=5000;
@ -3125,8 +3135,7 @@ AltmanCote=$scoreAltmanB".EOL.print_r($tabInfosNotation,true);
$tabComment[$idxC]=preg_replace('/<\/i>(?:<br\/>)<\/i>/i','</i>', $debLigne.prepareString($strTmp).$finLigne);//." ($idxC, $ordre)"; $tabComment[$idxC]=preg_replace('/<\/i>(?:<br\/>)<\/i>/i','</i>', $debLigne.prepareString($strTmp).$finLigne);//." ($idxC, $ordre)";
if (substr($strTmp,0,17)=='ERREUR DE FORMULE') { if (substr($strTmp,0,17)=='ERREUR DE FORMULE') {
@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Indiscore sur $siren : $strTmp", //@sendMail('production@scores-decisions.com', 'ylenaour@scores-decisions.com', "Indiscore sur $siren : $strTmp","Formules : ".EOL.$strTmp2);
"Formules : ".EOL.$strTmp2);
} }
// echo " ($ordre)<br/>"; // echo " ($ordre)<br/>";
$tableauPre=$tableau; $tableauPre=$tableau;
@ -3595,6 +3604,8 @@ function formatRatio($ratio, $id, $unite, $forceSigne='') {
*/ */
function formatValeur($variable, $longeur=0, $fonction='') function formatValeur($variable, $longeur=0, $fonction='')
{ {
$classWdate = new WDate();
global $tabVariables, $idx; global $tabVariables, $idx;
$valeur=strtr($variable, array('{'=>'','}'=>'')); $valeur=strtr($variable, array('{'=>'','}'=>''));
@ -3631,19 +3642,19 @@ function formatValeur($variable, $longeur=0, $fonction='')
elseif (preg_match('/DATE$/',$nomVar)) elseif (preg_match('/DATE$/',$nomVar))
{ {
$strTmp=eval("return $valeur;"); $strTmp=eval("return $valeur;");
return preg_replace('/00\//','01/',WDate::dateT('Ymd','d/m/Y', substr(str_replace('-','',$strTmp),0,8))); return preg_replace('/00\//','01/',$classWdate->dateT('Ymd','d/m/Y', substr(str_replace('-','',$strTmp),0,8)));
} }
elseif (preg_match('/DATEp$/',$nomVar)) elseif (preg_match('/DATEp$/',$nomVar))
{ {
global $DATEp; global $DATEp;
$strTmp=eval("return $valeur;"); $strTmp=eval("return $valeur;");
return preg_replace('/00\//','01/',WDate::dateT('Ymd','d/m/Y', substr(str_replace('-','',$strTmp),0,8))); return preg_replace('/00\//','01/',$classWdate->dateT('Ymd','d/m/Y', substr(str_replace('-','',$strTmp),0,8)));
} }
elseif (preg_match('/MMAA$/', $nomVar)) elseif (preg_match('/MMAA$/', $nomVar))
{ {
//DELAIPAY_MMAA ne marche pas ! //DELAIPAY_MMAA ne marche pas !
$strTmp=eval("return $valeur;"); $strTmp=eval("return $valeur;");
return WDate::dateT('Y-m','M Y', $strTmp); return $classWdate->dateT('Y-m','M Y', $strTmp);
} }
elseif (preg_match('/_MT$/',$nomVar)) elseif (preg_match('/_MT$/',$nomVar))
{ {
@ -3716,11 +3727,11 @@ function formatValeur($variable, $longeur=0, $fonction='')
elseif (preg_match('/DIMMAT$/',$nomVar)) elseif (preg_match('/DIMMAT$/',$nomVar))
{ {
global $DIMMAT; global $DIMMAT;
return preg_replace('/00\//','01/',WDate::dateT('Ymd','d/m/Y', substr(str_replace('-','',$DIMMAT),0,8))); return preg_replace('/00\//','01/',$classWdate->dateT('Ymd','d/m/Y', substr(str_replace('-','',$DIMMAT),0,8)));
} }
elseif (preg_match('/DCREN$/',$nomVar)) elseif (preg_match('/DCREN$/',$nomVar))
{ {
return preg_replace('/00\//','01/',WDate::dateT('Ymd','d/m/Y', substr(str_replace('-','',$DCREN),0,8))); return preg_replace('/00\//','01/',$classWdate->dateT('Ymd','d/m/Y', substr(str_replace('-','',$DCREN),0,8)));
} }
elseif (preg_match('/MARCHEVOL$/',$nomVar)) elseif (preg_match('/MARCHEVOL$/',$nomVar))
{ {

138
scripts/build/genCache.php Normal file
View File

@ -0,0 +1,138 @@
<?php
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../../application'));
// Define application environment
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'development'));
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
/** Zend_Application */
require_once 'Zend/Application.php';
// Create application, bootstrap, and run
$application = new Zend_Application(
APPLICATION_ENV,
APPLICATION_PATH . '/configs/application.ini'
);
try {
$opts = new Zend_Console_Getopt(
//Options
array(
'help|?' => "Aide.",
'list' => "List item.",
'generate|g=s' => "Generate the specify cache.",
)
);
$opts->parse();
} catch (Zend_Console_Getopt_Exception $e) {
echo $e->getUsageMessage();
exit;
}
//Usage
if( count($opts->getOptions())==0 || isset($opts->help))
{
echo $opts->getUsageMessage();
exit;
}
if ( $opts->list ) {
$tabItems = array(
"tribunaux" => "Tribunaux",
"FctDir" => "Fonctions de direction",
"Evenements" => "Table des evenements bodacc",
);
echo "\n";
foreach ( $tabItems as $code => $label ) {
echo "\t" . $code . " => ". $label . PHP_EOL;
}
exit;
}
if( $opts->generate == 'tribunaux' ) {
$c = new Zend_Config($application->getOptions());
$db = Zend_Db::factory($c->profil->db->metier);
$result = $db->query("SELECT triCode, triNom, triCP, triSiret FROM jo.tribunaux WHERE triCode IS NOT NULL");
$result->setFetchMode(Zend_Db::FETCH_OBJ);
$rows = $result->fetchAll();
$fp=fopen(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheTribunaux.php','w');
fwrite($fp, "<?php\n");
fwrite($fp, "return array(\n");
if ( count($rows) > 0 ) {
foreach($rows as $item) {
$dep = intval(substr($item->triCP,0,2));
if ($dep==97 || $dep==98) $dep=intval(substr($item->triCP,0,3));
fwrite($fp, "\t'" . $item->triCode . "' => array(");
fwrite($fp, "'nom'=>\"" . $item->triNom . "\", 'siret'=>\"".$item->triSiret."\", 'dep'=>\"".$dep."\"");
fwrite($fp, "),\n");
}
}
fwrite($fp, ");\n");
}
if ( $opts->generate == 'FctDir' ) {
$c = new Zend_Config($application->getOptions());
$db = Zend_Db::factory($c->profil->db->metier);
$result = $db->query("SELECT codeFct, libelle FROM jo.bodacc_fonctions");
$result->setFetchMode(Zend_Db::FETCH_OBJ);
$rows = $result->fetchAll();
$fp=fopen(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheFctDir.php','w');
fwrite($fp, "<?php\n");
fwrite($fp, "return array(\n");
if ( count($rows) > 0 ) {
foreach($rows as $item) {
fwrite($fp, "\t'" . intval($item->codeFct) . "' => \"". $item->libelle . "\",\n");
}
}
fwrite($fp, ");\n");
}
if ( $opts->generate == 'Evenements' ) {
$c = new Zend_Config($application->getOptions());
$db = Zend_Db::factory($c->profil->db->metier);
$result = $db->query("SELECT codEven, libEven, Bodacc_Code, Rubrique, version, lienEtab FROM jo.tabEvenements");
$result->setFetchMode(Zend_Db::FETCH_OBJ);
$rows = $result->fetchAll();
$fp=fopen(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'CacheEvenements.php','w');
fwrite($fp, "<?php\n");
fwrite($fp, "return array(\n");
if ( count($rows) > 0 ) {
foreach($rows as $item) {
fwrite($fp, "\t'" . intval($item->codEven) . "' => array(\n");
fwrite($fp, "\t\t'libEven' => \"" . $item->libEven . "\",\n");
fwrite($fp, "\t\t'Bodacc_Code' => \"" . $item->Bodacc_Code . "\",\n");
fwrite($fp, "\t\t'Rubrique' => \"" . $item->Rubrique . "\",\n");
fwrite($fp, "\t\t'Version' => " . $item->version . ",\n");
fwrite($fp, "\t\t'LienEtab' => " . $item->lienEtab . ",\n");
fwrite($fp, "\t),\n");
}
}
fwrite($fp, ");\n");
}

View File

@ -152,7 +152,7 @@ $tabQueries = array(
/* Evenements INSEE */ /* Evenements INSEE */
'insee' => "SELECT $strSelect, 'insee' as source FROM jo.scores_surveillance_tmp s, insee.insee_even i WHERE i.insSIREN>1000 AND s.siren=i.insSIREN AND i.dateInsert>s.dateUpdate AND s.procol NOT IN('P') AND /*i.insEVE IN ('400','410','420','425') AND*/ i.insSIEGE=1 GROUP BY siren", 'insee' => "SELECT $strSelect, 'insee' as source FROM jo.scores_surveillance_tmp s, insee.insee_even i WHERE i.insSIREN>1000 AND s.siren=i.insSIREN AND i.dateInsert>s.dateUpdate AND s.procol NOT IN('P') AND /*i.insEVE IN ('400','410','420','425') AND*/ i.insSIEGE=1 GROUP BY siren",
/* Entreprises RNCS */ /* Entreprises RNCS */
'rncs' => "SELECT $strSelect, 'rncs' as source FROM scores_surveillance_tmp s, rncs_entrep r WHERE s.siren>1000 AND s.siren=r.siren AND (r.dateInsert>s.dateUpdate OR r.dateUpdate>s.dateUpdate) /*AND (d.dateInsert>'2013-03-15 00:00:00' OR d.dateUpdate>'2013-03-15 00:00:00')*/ AND s.procol NOT IN('P') GROUP BY siren", // 'rncs' => "SELECT $strSelect, 'rncs' as source FROM scores_surveillance_tmp s, rncs_entrep r WHERE s.siren>1000 AND s.siren=r.siren AND (r.dateInsert>s.dateUpdate OR r.dateUpdate>s.dateUpdate) /*AND (d.dateInsert>'2013-03-15 00:00:00' OR d.dateUpdate>'2013-03-15 00:00:00')*/ AND s.procol NOT IN('P') GROUP BY siren",
/* Bodacc */ /* Bodacc */
'bodacc' => "SELECT $strSelect, 'bodacc' as source FROM scores_surveillance_tmp s, bodacc_detail b WHERE b.siren>1000 AND s.siren=b.siren AND( b.dateInsert>s.dateUpdate OR b.dateUpdate>s.dateUpdate) AND s.procol NOT IN('P') AND b.Rubrique NOT IN('creations') GROUP BY siren", 'bodacc' => "SELECT $strSelect, 'bodacc' as source FROM scores_surveillance_tmp s, bodacc_detail b WHERE b.siren>1000 AND s.siren=b.siren AND( b.dateInsert>s.dateUpdate OR b.dateUpdate>s.dateUpdate) AND s.procol NOT IN('P') AND b.Rubrique NOT IN('creations') GROUP BY siren",
/* Collecte */ /* Collecte */

View File

@ -217,12 +217,14 @@ function execInternal($values, $seq, $debug = false)
//Siren valide - 1010 //Siren valide - 1010
if ( !$classInsee->valideSiren($siren) ) { if ( !$classInsee->valideSiren($siren) ) {
$error = 1; $error = 1;
$code = 'error';
$values['code'] = '1010'; $values['code'] = '1010';
echo " - Erreur 1010."; echo " - Erreur 1010.";
} }
//Siren existant - 1020 //Siren existant - 1020
else if ( !$classInsee->sirenExiste($siren) ) { else if ( !$classInsee->sirenExiste($siren) ) {
$error = 1; $error = 1;
$code = 'error';
$values['code'] = '1020'; $values['code'] = '1020';
echo " - Erreur 1020."; echo " - Erreur 1020.";
} }
@ -247,6 +249,8 @@ function execInternal($values, $seq, $debug = false)
$values = array_merge($values, $valuesDebug); $values = array_merge($values, $valuesDebug);
} }
$code = 'ok';
echo " - VOR=".$values['idVOR']." , commentaire=".$values['commentaire']." , PO=".$values['PO']; echo " - VOR=".$values['idVOR']." , commentaire=".$values['commentaire']." , PO=".$values['PO'];
} }
@ -271,7 +275,7 @@ function execInternal($values, $seq, $debug = false)
return array( return array(
'values' => $values, 'values' => $values,
'error' => $error, 'code' => $code,
); );
} }
@ -327,16 +331,10 @@ function execFileIn($filepath, $fileOptionsIn, $filesOptionsOut = array(), $debu
$valuesClient = execInternal($values, $header['idDemande'], true); $valuesClient = execInternal($values, $header['idDemande'], true);
//Format output //Format output
if ( $valuesClient['error'] == 1 ) { $code = $valuesClient['code'];
$output['error']['line'][] = $valuesClient['values']; $output[$code]['line'][] = $valuesClient['values'];
if ($debug) { if ($debug) {
$output['error']['columns'] = array_keys($valuesClient['values']); $output[$code]['columns'] = array_keys($valuesClient['values']);
}
} else {
$output['ok']['line'][] = $valuesClient['values'];
if ($debug) {
$output['ok']['columns'] = array_keys($valuesClient['values']);
}
} }
} }