From d70a618e46b06e11c59594a8bf58355d66db8ab4 Mon Sep 17 00:00:00 2001 From: Michael RICOIS Date: Mon, 9 Jan 2017 17:13:19 +0100 Subject: [PATCH 1/3] Radiation --- library/Metier/Insee/MInsee.php | 284 ++++++++++++++++---------------- 1 file changed, 140 insertions(+), 144 deletions(-) diff --git a/library/Metier/Insee/MInsee.php b/library/Metier/Insee/MInsee.php index e142684e..acc2edaf 100644 --- a/library/Metier/Insee/MInsee.php +++ b/library/Metier/Insee/MInsee.php @@ -1826,10 +1826,10 @@ class Metier_Insee_MInsee extends Metier_Insee_Table $adr = $this->structureVoie($etabG['Adresse']); // Date de dernière MAJ $lastMaj = str_replace('-', '', $etabG['DateRadiation'])*1; - if (str_replace('-', '', $etabG['DateCreation'])*1>$lastMaj) { + if (str_replace('-', '', $etabG['DateCreation'])*1 > $lastMaj) { $lastMaj = str_replace('-', '', $etabG['DateCreation'])*1; } - if (str_replace('-', '', $etabG['DateUpdate'])*1>$lastMaj) { + if (str_replace('-', '', $etabG['DateUpdate'])*1 > $lastMaj) { $lastMaj = str_replace('-', '', $etabG['DateUpdate'])*1; } @@ -3113,37 +3113,37 @@ class Metier_Insee_MInsee extends Metier_Insee_Table if (strtoupper(trim($entrep['sigle'])) != strtoupper(trim($tabRet['Sigle']))) { $tabRet['sigleLong'] = strtoupper($entrep['sigle']); } - $tabRet['dateImmat'] = $entrep['dateImma']; - $tabRet['dateRad'] = $entrep['dateRad']; - $tabRet['Capital'] = $entrep['capitalMontant']+($entrep['capitalCent']/100); - $tabRet['CapitalDev'] = $entrep['capitalDevIso']; - $tabRet['CapitalType'] = trim(strtoupper(substr($entrep['capitalType'], 0, 1))); + $tabRet['dateImmat'] = $entrep['dateImma']; + $tabRet['dateRad'] = $entrep['dateRad']; + $tabRet['Capital'] = $entrep['capitalMontant']+($entrep['capitalCent']/100); + $tabRet['CapitalDev'] = $entrep['capitalDevIso']; + $tabRet['CapitalType'] = trim(strtoupper(substr($entrep['capitalType'], 0, 1))); // Par défaut, la Forme juridique qui fait foie est celle de l'INPI - $fjInpi=$entrep['cj']*1; + $fjInpi = $entrep['cj']*1; if ($tabRet['FJ']*1 != $fjInpi && $fjInpi>0) { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - $tabRet['FJ'] = $fjInpi; - $tabRet['FJ_lib'] = $this->getLibelleFJ($fjInpi); + $tabRet['FJ2'] = $tabRet['FJ']; + $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; + $tabRet['FJ'] = $fjInpi; + $tabRet['FJ_lib'] = $this->getLibelleFJ($fjInpi); } else { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; + $tabRet['FJ2'] = $tabRet['FJ']; + $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; } if ($fjInpi >= 1000 && $fjInpi < 2000) { - $tabRet['dir1Titre'] = 'Personne physique'; - $tabRet['dir1Code'] = '1050'; + $tabRet['dir1Titre'] = 'Personne physique'; + $tabRet['dir1Code'] = '1050'; $tabRet['dir1NomPrenom'] = strtoupper($entrep['nom']).' '. ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1Nom'] = strtoupper($entrep['nom']); - $tabRet['dir1Prenom'] = ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1NomUsage'] = strtoupper($entrep['nomUsage']); - $tabRet['dir1DateNaiss'] = $entrep['dateNaiss']; - $tabRet['dir1LieuNaiss'] = $entrep['lieuNaiss']; - $tabRet['dir1Genre'] = $entrep['sexe']; + $tabRet['dir1Nom'] = strtoupper($entrep['nom']); + $tabRet['dir1Prenom'] = ucwords(strtolower($entrep['prenom'])); + $tabRet['dir1NomUsage'] = strtoupper($entrep['nomUsage']); + $tabRet['dir1DateNaiss'] = $entrep['dateNaiss']; + $tabRet['dir1LieuNaiss'] = $entrep['lieuNaiss']; + $tabRet['dir1Genre'] = $entrep['sexe']; } - if ($tabRet['DateMajRCS']=='') { + if ($tabRet['DateMajRCS'] == '') { if ($entrep['jourUpdate'] != '0000-00-00') { $tabRet['DateMajRCS'] = $entrep['jourUpdate']; } else { @@ -3179,32 +3179,32 @@ class Metier_Insee_MInsee extends Metier_Insee_Table dateInsert, DATE(dateUpdate) AS jourUpdate FROM jo.rncs_etab WHERE siren=$siren AND nic=$nic"); if ($stmt->rowCount() > 0) { - $entrep = $stmt->fetch(\PDO::FETCH_ASSOC); + $rncsEtab = $stmt->fetch(\PDO::FETCH_ASSOC); $tabRet['EtabActifRCS'] = 0; - if ($entrep['jourUpdate'] != '0000-00-00' && - str_replace('-', '', $entrep['jourUpdate'])*1>str_replace('-', '', $tabRet['DateMajRCS'])) { - $tabRet['DateMajRCS'] = $entrep['jourUpdate']; + if ($rncsEtab['jourUpdate'] != '0000-00-00' && + str_replace('-', '', $rncsEtab['jourUpdate'])*1 > str_replace('-', '', $tabRet['DateMajRCS'])) { + $tabRet['DateMajRCS'] = $rncsEtab['jourUpdate']; } - // On signal que l'établissement est actif au RCS - if ($entrep['actif']*1 == 1) { - $tabRet['EtabActifRCS'] = 1; - } - $tabRet['NomCommercial'] = $entrep['nomCommercial']; - $tabRet['enseigneLong'] = $entrep['enseigne']; + // On signal que l'établissement est actif au RCS + if ($rncsEtab['actif']*1 == 1) { + $tabRet['EtabActifRCS'] = 1; + } + $tabRet['NomCommercial'] = $rncsEtab['nomCommercial']; + $tabRet['enseigneLong'] = $rncsEtab['enseigne']; if ($codePaysIso2 != 'FR' && $codePaysIso2 != '') { - $tabRet['Adresse'] = trim(preg_replace('/ +/', ' ', $entrep['adrNumVoie'] .' '.$entrep['adrIndRep'].' '. - $entrep['adrTypeVoie'].' '.$entrep['adrVoie'])); - $tabRet['Adresse2'] = trim(preg_replace('/ +/', ' ', $entrep['adrComp'])); - $tabRet['AdresseNum'] = $entrep['adrNumVoie']; - $tabRet['AdresseBtq'] = $entrep['adrIndRep']; - $tabRet['AdresseVoie'] = $entrep['adrTypeVoie']; - $tabRet['AdresseRue'] = $entrep['adrVoie']; - $tabRet['CP'] = $entrep['cp']; - $tabRet['Ville'] = $entrep['commune']; + $tabRet['Adresse'] = trim(preg_replace('/ +/', ' ', $rncsEtab['adrNumVoie'] .' '.$rncsEtab['adrIndRep'].' '. + $rncsEtab['adrTypeVoie'].' '.$rncsEtab['adrVoie'])); + $tabRet['Adresse2'] = trim(preg_replace('/ +/', ' ', $rncsEtab['adrComp'])); + $tabRet['AdresseNum'] = $rncsEtab['adrNumVoie']; + $tabRet['AdresseBtq'] = $rncsEtab['adrIndRep']; + $tabRet['AdresseVoie'] = $rncsEtab['adrTypeVoie']; + $tabRet['AdresseRue'] = $rncsEtab['adrVoie']; + $tabRet['CP'] = $rncsEtab['cp']; + $tabRet['Ville'] = $rncsEtab['commune']; } } - $timer['infosRNCS']=microtime(true); + $timer['infosRNCS'] = microtime(true); } elseif ($siren > 1000) { // Recherche au RM $stmt = $this->conn->executeQuery("SELECT siren, actif, numRM, denomination, @@ -3214,26 +3214,26 @@ class Metier_Insee_MInsee extends Metier_Insee_Table DATE(dateUpdate) AS jourUpdate, DATE(dateInsert) AS dateInsert FROM jo.artisanat WHERE siren=$siren"); if ($stmt->rowCount() > 0) { - $entrep = $stmt->fetch(\PDO::FETCH_ASSOC); + $rmEntrep = $stmt->fetch(\PDO::FETCH_ASSOC); if (isset($entrep['numRM'])) { - $tabRet['AutreId'] = $entrep['numRM']; + $tabRet['AutreId'] = $rmEntrep['numRM']; if ($tabRet['Activite']=='') { - $tabRet['Activite'] = $entrep['activite']; + $tabRet['Activite'] = $rmEntrep['activite']; } if ($tabRet['APRM'] == '') { - $tabRet['APRM'] = $entrep['aprm']; + $tabRet['APRM'] = $rmEntrep['aprm']; $tabRet['APRM_Lib'] = $this->getLibelleNafa($entrep['aprm']); } - if (strtoupper(trim($entrep['nom'].' '.$entrep['prenom'].' '.$entrep['nomUsage'])) != strtoupper(trim($tabRet['Nom']))) { - $tabRet['nomLong'] = strtoupper(trim($entrep['nom'].' '.$entrep['prenom'].' '.$entrep['nomUsage'])); + if (strtoupper(trim($rmEntrep['nom'].' '.$rmEntrep['prenom'].' '.$rmEntrep['nomUsage'])) != strtoupper(trim($tabRet['Nom']))) { + $tabRet['nomLong'] = strtoupper(trim($rmEntrep['nom'].' '.$rmEntrep['prenom'].' '.$rmEntrep['nomUsage'])); } - if (strtoupper(trim($entrep['sigle'])) != strtoupper(trim($tabRet['Sigle']))) { - $tabRet['sigleLong']= strtoupper($entrep['sigle']); + if (strtoupper(trim($rmEntrep['sigle'])) != strtoupper(trim($tabRet['Sigle']))) { + $tabRet['sigleLong']= strtoupper($rmEntrep['sigle']); } - $tabRet['dateImmat'] = $entrep['debutActivite']; - $tabRet['dateRad'] = $entrep['radiation']; + $tabRet['dateImmat'] = $rmEntrep['debutActivite']; + $tabRet['dateRad'] = $rmEntrep['radiation']; // Si on est au greffe, on est artisan commercant // Artisan Commerçant @@ -3247,33 +3247,31 @@ class Metier_Insee_MInsee extends Metier_Insee_Table // Par défaut, la Forme juridique qui fait foie est celle de l'INPI if ($tabRet['FJ']*1 != $fjInpi) { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - $tabRet['FJ'] = $fjInpi; - $tabRet['FJ_lib'] = $this->getLibelleFJ($fjInpi); + $tabRet['FJ2'] = $tabRet['FJ']; + $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; + $tabRet['FJ'] = $fjInpi; + $tabRet['FJ_lib'] = $this->getLibelleFJ($fjInpi); } else { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; + $tabRet['FJ2'] = $tabRet['FJ']; + $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; } - $tabRet['dir1Titre'] = ucwords(strtolower($entrep['qualite'].' '. - $entrep['qualif'])); - $tabRet['dir1NomPrenom'] = strtoupper($entrep['nom']).' '. - ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1Nom'] = strtoupper($entrep['nom']); - $tabRet['dir1Prenom'] = ucwords(strtolower($entrep['prenom'])); - $tabRet['dir1DateNaiss'] = $entrep['dateNaiss']; - $tabRet['dir1LieuNaiss'] = $entrep['lieuNaiss']; + $tabRet['dir1Titre'] = ucwords(strtolower($rmEntrep['qualite'].' '.$rmEntrep['qualif'])); + $tabRet['dir1NomPrenom'] = strtoupper($rmEntrep['nom']).' '.ucwords(strtolower($rmEntrep['prenom'])); + $tabRet['dir1Nom'] = strtoupper($rmEntrep['nom']); + $tabRet['dir1Prenom'] = ucwords(strtolower($rmEntrep['prenom'])); + $tabRet['dir1DateNaiss'] = $rmEntrep['dateNaiss']; + $tabRet['dir1LieuNaiss'] = $rmEntrep['lieuNaiss']; - if ($tabRet['DateMajRCS']=='') { - if ($entrep['jourUpdate'] != '0000-00-00') { - $tabRet['DateMajRCS'] = $entrep['jourUpdate']; + if ($tabRet['DateMajRCS'] == '') { + if ($rmEntrep['jourUpdate'] != '0000-00-00') { + $tabRet['DateMajRCS'] = $rmEntrep['jourUpdate']; } else { - $tabRet['DateMajRCS'] = $entrep['dateInsert']; + $tabRet['DateMajRCS'] = $rmEntrep['dateInsert']; } } // On signal que l'entreprise est active au RCS - if ($entrep['actif'] == 1 || $entrep['actif'] == 11) { + if ($rmEntrep['actif'] == 1 || $rmEntrep['actif'] == 11) { $tabRet['EntActiveRCS'] = 1; } // On signal que l'entreprise est radié du RCS @@ -3285,45 +3283,41 @@ class Metier_Insee_MInsee extends Metier_Insee_Table } } - $tabRet['NomCommercial']=$entrep['nomCommercial']; - $tabRet['enseigneLong']=$entrep['enseigne']; + $tabRet['NomCommercial'] = $rmEntrep['nomCommercial']; + $tabRet['enseigneLong'] = $rmEntrep['enseigne']; } } } } - if ($tabRet['dir1Genre']=='M' || $tabRet['dir1Genre']=='F') { - $tabRet['dir1Titre']='Personne physique'; - $tabRet['dir1Code']='1050'; + if ($tabRet['dir1Genre'] == 'M' || $tabRet['dir1Genre'] == 'F') { + $tabRet['dir1Titre'] = 'Personne physique'; + $tabRet['dir1Code'] = '1050'; } if ($accesDist && // Département couvert par Infogreffe !in_array($tabRet['Dept'], array(57, 67, 68, 97, 98, 99)) && // Forme Juridique présente au greffe - ($tabInsee['CJ']==1100 || - $tabInsee['CJ']==1200 || - $tabInsee['CJ']==1300 || - $tabInsee['CJ']==1700 || + (in_array($tabInsee['CJ'], array(1100,1200,1300,1700,9900)) || ($tabInsee['CJ']>=3100 && $tabInsee['CJ']<=3299) || ($tabInsee['CJ']>=4100 && $tabInsee['CJ']<=4199) || ($tabInsee['CJ']>=5100 && $tabInsee['CJ']<=5899) || ($tabInsee['CJ']>=6100 && $tabInsee['CJ']<=6599) || - $tabInsee['CJ']==9900 || - preg_match('/EIRL/', $nom) || preg_match('/EIRL/', $nom2) || + preg_match('/EIRL/', $nom) || preg_match('/EIRL/', $nom2) || preg_match('/EIRL/', $tabRet['Sigle']) || preg_match('/EIRL/', $tabRet['Enseigne']) || preg_match('/EIRL/', $tabRet['Adresse']) || preg_match('/EIRL/', $tabRet['Adresse2']) - ) && - ($tabInsee['CJ']==1700 || // Agents commerciaux (uniquement au Greffes RSAC) - $tabRet['numRC']=='' || // Numéro de RCS absent = Anomalie (<à3%) - $tabRet['Tribunal']=='' || // Tribunal absent = anomalie - str_replace('-', '', $tabRet['dateImmat'])*1==0 || // Pas de date d'immat = anomalie (<à9%) - ($nbEtab*1==0 && str_replace('-', '', $tabRet['dateRad'])*1==0) // Inactif sans date de RAD + ) + && ($tabInsee['CJ'] == 1700 || // Agents commerciaux (uniquement au Greffes RSAC) + $tabRet['numRC'] == '' || // Numéro de RCS absent = Anomalie (<à3%) + $tabRet['Tribunal'] == '' || // Tribunal absent = anomalie + str_replace('-', '', $tabRet['dateImmat'])*1 == 0 || // Pas de date d'immat = anomalie (<à9%) + ($nbEtab*1 == 0 && str_replace('-', '', $tabRet['dateRad'])*1 == 0) // Inactif sans date de RAD ) ) { if ($this->debugtime) { file_put_contents(LOG_PATH.'/accesDistant.log', date('YmdHis').";$siren;MGreffes Avant\n", FILE_APPEND); - $tdeb=microtime(1); + $tdeb = microtime(1); } $iGeffes = new Metier_Partenaires_MGreffes($this->iDb); @@ -3336,35 +3330,37 @@ class Metier_Insee_MInsee extends Metier_Insee_Table } if ($etabG) { - if ($tabRet['numRC']=='') { - $tabRet['numRC'] = $etabG['NumRC2']; + if ($tabRet['numRC'] == '') { + $tabRet['numRC'] = $etabG['NumRC2']; } if ($tabRet['Tribunal']=='') { - $tabRet['Tribunal'] = $iRncs->getCodeBodaccTribunal($etabG['NumGreffe']); + $tabRet['Tribunal'] = $iRncs->getCodeBodaccTribunal($etabG['NumGreffe']); } - if (str_replace('-', '', $tabRet['dateImmat'])*1==0) { - $tabRet['dateImmat']= $etabG['DateCreation']; + if (str_replace('-', '', $tabRet['dateImmat'])*1 == 0) { + $tabRet['dateImmat'] = $etabG['DateCreation']; } - if (str_replace('-', '', $tabRet['dateRad'])*1==0) { - $tabRet['dateRad'] = $etabG['DateRadiation']; - if (str_replace('-', '', $tabRet['dateRad'])*1>0 && $tabRet['SituationJuridique']=='') { - $tabRet['SituationJuridique']='RR'; + if (str_replace('-', '', $tabRet['dateRad'])*1 == 0) { + $tabRet['dateRad'] = $etabG['DateRadiation']; + if (str_replace('-', '', $tabRet['dateRad'])*1 > 0 && $tabRet['SituationJuridique'] == '') { + $tabRet['SituationJuridique'] = 'RR'; } } if (preg_match('/[A-Z]/i', substr($tabRet['AutreId'], 2, 2)) || $tabRet['AutreId']=='') { - $tabRet['AutreId'] = $etabG['NumRC2']; + $tabRet['AutreId'] = $etabG['NumRC2']; } } - $timer['infosInfogreffes']=microtime(true); + $timer['infosInfogreffes'] = microtime(true); } + file_put_contents('test.log', print_r($entrep,1)); + // Si il n'y a aucun établissement actif et qu'on est radié au RCS : on part chercher la dernière annonce de Radiation au Bodacc - if (($nbEtab*1)==0 || (isset($entrep['numGreffe']) && $entrep['actif']==0 && $entrep['dateRadNum']==0)) { + if ($entrep['dateRadNum'] == 0 && ($nbEtab*1 == 0 || isset($entrep['numGreffe']) && $entrep['actif'] == 0)) { $tabRad = $this->getAnnoncesLegales($siren, 0, 'R'); // Il y a au moins une annonce de radiation au Bodacc if (count($tabRad) > 0) { if ($tabRet['SituationJuridique'] == '') { - $tabRet['SituationJuridique']='RP'; + $tabRet['SituationJuridique'] = 'RP'; } $dateEff = str_replace('-', '', $tabRad[0]['dateEffet'])*1; $dateJug = str_replace('-', '', $tabRad[0]['dateJugement'])*1; @@ -3385,23 +3381,23 @@ class Metier_Insee_MInsee extends Metier_Insee_Table typeBilan, unite, postes, dateProvPartenaire, dateInsert FROM jo.bilans WHERE siren=$siren AND typeBilan IN ('N','S') ORDER BY dateExercice DESC LIMIT 0,1"); if ($stmt->rowCount() > 0) { - $entrep = $stmt->fetch(\PDO::FETCH_ASSOC); - $tabRet['bilanAnnee'] = substr($entrep['dateExercice'], 0, 4); - $tabRet['bilanDate'] = $entrep['dateExercice']; - $tabRet['bilanMois'] = $entrep['dureeExercice']; - $tabRet['bilanDevise'] = $entrep['monnaie']; - if ($entrep['dateProvPartenaire'] > 0) { - $tabRet['bilanDateMaj'] = Metier_Util_Date::dateT('Ymd', 'Y-m-d', $entrep['dateProvPartenaire']); + $bilEntrep = $stmt->fetch(\PDO::FETCH_ASSOC); + $tabRet['bilanAnnee'] = substr($bilEntrep['dateExercice'], 0, 4); + $tabRet['bilanDate'] = $bilEntrep['dateExercice']; + $tabRet['bilanMois'] = $bilEntrep['dureeExercice']; + $tabRet['bilanDevise'] = $bilEntrep['monnaie']; + if ($bilEntrep['dateProvPartenaire'] > 0) { + $tabRet['bilanDateMaj'] = Metier_Util_Date::dateT('Ymd', 'Y-m-d', $bilEntrep['dateProvPartenaire']); } else { - $tabRet['bilanDateMaj'] = Metier_Util_Date::dateT('Y-m-d', 'Y-m-d', $entrep['dateInsert']); + $tabRet['bilanDateMaj'] = Metier_Util_Date::dateT('Y-m-d', 'Y-m-d', $bilEntrep['dateInsert']); } - switch (strtoupper(trim($entrep['unite']))) { + switch (strtoupper(trim($bilEntrep['unite']))) { case 'M': $unite = 'M'; break; case 'K': $unite = 'K'; break; - default: $unite = 'U'; break; + default: $unite = 'U'; break; } - $tabTmp = explode(';', $entrep['postes']); + $tabTmp = explode(';', $bilEntrep['postes']); $tabBilan = array(); foreach ($tabTmp as $i=>$strTmp) { $tabTmp2 = explode('=', $strTmp); @@ -3415,49 +3411,49 @@ class Metier_Insee_MInsee extends Metier_Insee_Table } } } - if (strtoupper($entrep['typeBilan'])=='S') { + if (strtoupper($bilEntrep['typeBilan'])=='S') { $mBil = new Metier_Partenaires_MBilans(); $tabTmp = $mBil->bilanSimplifie2Normal($tabBilan); $tabBilan = array_merge($tabTmp, $tabBilan); } - $tabRet['bilanDA'] = $tabBilan['DA']; - $tabRet['bilanFL'] = $tabBilan['FL']; - $tabRet['bilanHN'] = $tabBilan['HN']; - $tabRet['bilanYP'] = $tabBilan['YP']; + $tabRet['bilanDA'] = $tabBilan['DA']; + $tabRet['bilanFL'] = $tabBilan['FL']; + $tabRet['bilanHN'] = $tabBilan['HN']; + $tabRet['bilanYP'] = $tabBilan['YP']; // Fiche AGS - $tabRet['bilanPQ'] = $tabBilan['PQ']; - $tabRet['bilanPU'] = $tabBilan['PU']; - $tabRet['bilanPY'] = $tabBilan['PY']; - $tabRet['bilanQC'] = $tabBilan['QC']; + $tabRet['bilanPQ'] = $tabBilan['PQ']; + $tabRet['bilanPU'] = $tabBilan['PU']; + $tabRet['bilanPY'] = $tabBilan['PY']; + $tabRet['bilanQC'] = $tabBilan['QC']; // Tranche de CA Bilan Réel si TCA Insee ou Estimée < dernière clôture - if ($tabRet['AnneeTCA']<=$tabRet['bilanAnnee'] && $tabInsee['ACTIF']==1) { - $tabRet['TrancheCA']=$this->getTca($tabBilan['FL']); - $tabRet['TrancheCALib']=self::$tabTCA[$tabRet['TrancheCA']]; - $tabRet['TrancheCAType']='R'; - $tabRet['AnneeTCA']=$tabRet['bilanAnnee']; + if ($tabRet['AnneeTCA'] <= $tabRet['bilanAnnee'] && $tabInsee['ACTIF']==1) { + $tabRet['TrancheCA'] = $this->getTca($tabBilan['FL']); + $tabRet['TrancheCALib'] = self::$tabTCA[$tabRet['TrancheCA']]; + $tabRet['TrancheCAType'] = 'R'; + $tabRet['AnneeTCA'] = $tabRet['bilanAnnee']; } // Contrôle de la cohérence du type d'exploitation - if ($tabBilan['AH']>0 && // Je possède un fond commercial + if ($tabBilan['AH'] > 0 && // Je possède un fond commercial $tabRet['TypeExploitation'] != 2 && // et je ne suis pas Loueur d'un fond $tabRet['TypeExploitation'] != 3 && // et je ne suis pas Prestataire de personnel $tabRet['TypeExploitation'] != 10) { // et je ne suis pas exploitant direct - $tabRet['TypeExploitation']=10; + $tabRet['TypeExploitation'] = 10; } // Controle de cohérence du capital car parfois absent en Alsace Moselle au RNCS - if ($tabRet['FJ']>2000 && $tabRet['Capital']==0 && $tabRet['CapitalDev']=='') { - $tabRet['Capital']=$tabRet['bilanDA']; - $tabRet['CapitalDev']=$tabRet['bilanDevise']; + if ($tabRet['FJ'] > 2000 && $tabRet['Capital'] == 0 && $tabRet['CapitalDev'] == '') { + $tabRet['Capital'] = $tabRet['bilanDA']; + $tabRet['CapitalDev'] = $tabRet['bilanDevise']; } - $timer['infosBilan']=microtime(true); - } elseif ($caEstime>0 && $tabInsee['ACTIF']==1) { - $tabRet['bilanAnnee'] = date('Y')-2; - $tabRet['bilanFLestime']= $caEstime; + $timer['infosBilan'] = microtime(true); + } elseif ($caEstime > 0 && $tabInsee['ACTIF'] == 1) { + $tabRet['bilanAnnee'] = date('Y')-2; + $tabRet['bilanFLestime'] = $caEstime; } $tabRet['TribunalLib'] = $this->iBodacc->getTribunalNom($tabRet['Tribunal']); @@ -3475,7 +3471,7 @@ class Metier_Insee_MInsee extends Metier_Insee_Table // Numero de Registre du métier si nécessaire if (($tabRet['FJ']==1100 || $tabRet['FJ']==1300 || $tabRet['FJ']==11 || $tabRet['FJ']==13 || $tabInsee['APRM'] != '') && ($tabRet['Dept']=='2A' || $tabRet['Dept']=='2B' || $tabRet['Dept']<98)) { - // Artisan Commerçant OU Artisan en FRANCE + // Artisan Commerçant OU Artisan en FRANCE $tabRet['NumRM'] = $siren.' RM '.$tabRet['Dept']; // Ajaccio if ($tabRet['Dept'] == '2A') { @@ -3489,8 +3485,8 @@ class Metier_Insee_MInsee extends Metier_Insee_Table } } - // Recherche des infos boursières - $iBourse = new Metier_Partenaires_MBourse($siren, $this->iDb); + // Recherche des infos boursières + $iBourse = new Metier_Partenaires_MBourse($siren, $this->iDb); $bourse = $iBourse->getInfosBourse($siren); $tabRet['Bourse'] = array( 'placeCotation' => $bourse['placeCotation'], @@ -3499,11 +3495,11 @@ class Metier_Insee_MInsee extends Metier_Insee_Table 'derCoursDate' => $bourse['date'], 'derCoursCloture' => $bourse['close'] ); - $timer['infosBoursieres']=microtime(true); + $timer['infosBoursieres'] = microtime(true); } // Date de dernière mise à jour - $lastMaj=str_replace('-', '', $tabRet['DateMajINSEE'])*1; + $lastMaj = str_replace('-', '', $tabRet['DateMajINSEE'])*1; if (str_replace('-', '', $tabRet['DateMajRCS'])*1 > $lastMaj) { $lastMaj = str_replace('-', '', $tabRet['DateMajRCS'])*1; } @@ -5780,7 +5776,7 @@ class Metier_Insee_MInsee extends Metier_Insee_Table WHERE l.siren=$siren AND l.idAnn=b.id $strIdAnn AND d.id=b.id GROUP BY b.id ORDER BY l.Boamp_Date_Parution DESC LIMIT $offset,$lignes"); } catch(\Doctrine\DBAL\DBALException $e) { - file_put_contents('test.log', $e->getMessage()); + //file_put_contents('test.log', $e->getMessage()); } if ($stmt->rowCount() > 0) { while ($ann = $stmt->fetch(\PDO::FETCH_ASSOC)) { @@ -5878,7 +5874,7 @@ class Metier_Insee_MInsee extends Metier_Insee_Table WHERE d.siren=$siren AND d.id=b.id $strIdAnn GROUP BY b.id ORDER BY d.Boamp_Date_Parution DESC LIMIT $offset,$lignes"); } catch(\Doctrine\DBAL\DBALException $e) { - file_put_contents('test.log', $e->getMessage()); + //file_put_contents('test.log', $e->getMessage()); } if ($stmt->rowCount() > 0) { From e8903e3a3b75084e5d8560fdf4f1cf156d271683 Mon Sep 17 00:00:00 2001 From: Michael RICOIS Date: Tue, 10 Jan 2017 16:59:15 +0100 Subject: [PATCH 2/3] Remove Debug --- library/Metier/Insee/MInsee.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/library/Metier/Insee/MInsee.php b/library/Metier/Insee/MInsee.php index acc2edaf..dd6773b5 100644 --- a/library/Metier/Insee/MInsee.php +++ b/library/Metier/Insee/MInsee.php @@ -3352,8 +3352,6 @@ class Metier_Insee_MInsee extends Metier_Insee_Table $timer['infosInfogreffes'] = microtime(true); } - file_put_contents('test.log', print_r($entrep,1)); - // Si il n'y a aucun établissement actif et qu'on est radié au RCS : on part chercher la dernière annonce de Radiation au Bodacc if ($entrep['dateRadNum'] == 0 && ($nbEtab*1 == 0 || isset($entrep['numGreffe']) && $entrep['actif'] == 0)) { $tabRad = $this->getAnnoncesLegales($siren, 0, 'R'); From 25db7c39a374bab17a3b7a640f0d7cfe3c28d4df Mon Sep 17 00:00:00 2001 From: Michael RICOIS Date: Wed, 11 Jan 2017 12:20:12 +0100 Subject: [PATCH 3/3] Meilleur gestion des dates --- library/Metier/Insee/MInsee.php | 121 ++++++++++++++++++++------------ 1 file changed, 76 insertions(+), 45 deletions(-) diff --git a/library/Metier/Insee/MInsee.php b/library/Metier/Insee/MInsee.php index dd6773b5..069ae1ea 100644 --- a/library/Metier/Insee/MInsee.php +++ b/library/Metier/Insee/MInsee.php @@ -1835,30 +1835,30 @@ class Metier_Insee_MInsee extends Metier_Insee_Table $etab = array( 'id' => $etabG['id'], - 'siret' => $etabG['Siret'], - 'siege' => $etabG['Siege'], - 'raisonSociale' => $etabG['Nom'], - 'sigle' => $etabG['Sigle'], - 'enseigne' => $etabG['Enseigne'], - 'Adresse' => $etabG['Adresse'], - 'adr_comp' => $etabG['Adresse2'], - 'adr_num' => $adr['num'], - 'adr_btq' => $adr['adr_btq'], - 'adr_typeVoie' => $adr['typeVoie'], - 'adr_libVoie' => $adr['libVoie'], - 'adr_dep' => substr($etabG['CP'], 0, 2), + 'siret' => $etabG['Siret'], + 'siege' => $etabG['Siege'], + 'raisonSociale' => $etabG['Nom'], + 'sigle' => $etabG['Sigle'], + 'enseigne' => $etabG['Enseigne'], + 'Adresse' => $etabG['Adresse'], + 'adr_comp' => $etabG['Adresse2'], + 'adr_num' => $adr['num'], + 'adr_btq' => $adr['adr_btq'], + 'adr_typeVoie' => $adr['typeVoie'], + 'adr_libVoie' => $adr['libVoie'], + 'adr_dep' => substr($etabG['CP'], 0, 2), 'adr_cp' => $etabG['CP'], - 'adr_ville' => $etabG['Ville'], - 'tel' => $etabG['Tel'], - 'fax' => $etabG['Fax'], + 'adr_ville' => $etabG['Ville'], + 'tel' => $etabG['Tel'], + 'fax' => $etabG['Fax'], 'cj' => $etabG['FJ'], - 'siren' => $etabG['Siren'], - 'nic' => $etabG['Nic'], - 'actif' => $etabG['Actif'], - 'ape_etab' => $etabG['NafEtab'], + 'siren' => $etabG['Siren'], + 'nic' => $etabG['Nic'], + 'actif' => $etabG['Actif'], + 'ape_etab' => $etabG['NafEtab'], 'ape_entrep' => $etabG['NafEnt'], - 'autre_id' => $etabG['NumRC'], - 'dateMAJ' => Metier_Util_Date::dateT('Ymd', 'Y-m-d', $lastMaj), + 'autre_id' => $etabG['NumRC'], + 'dateMAJ' => Metier_Util_Date::dateT('Ymd', 'Y-m-d', $lastMaj), ); } $timer['accesInfogreffeCarInconnu'] = microtime(true); @@ -2659,25 +2659,38 @@ class Metier_Insee_MInsee extends Metier_Insee_Table if ($identite['SituationJuridique'] == '') { $tabAnn = $this->getAnnoncesLegales($siren, 0, 'A', false); $nbAnn = count($tabAnn); - if (count($tabAnn) > 0) { + if ($nbAnn > 0) { + if ($this->debug) { + file_put_contents('procol.log', "DETECTION ABSORPTION\n", FILE_APPEND); + } $dateAnn = $tabAnn[$nbAnn-1]['dateInsertionSD']; $dateAnnCompare = DateTime::createFromFormat('Y-m-d H:i:s', $dateAnn); $dateAnnCompare->add(new DateInterval('P364D')); - if ($dateAnnCompare >= $dateAnnLastCompare) { + if ($dateAnnCompare > $dateAnnLastCompare) { $tabRet['SituationJuridique'] = 'A'; + if ($this->debug) { + file_put_contents('procol.log', "Entreprise absorbée\n", FILE_APPEND); + } } } } + // Dissolution if ($identite['SituationJuridique'] == '') { $tabAnn = $this->getAnnoncesLegales($siren, 0, 'D', false); $nbAnn = count($tabAnn); - if (count($tabAnn) > 0) { + if ($nbAnn > 0) { + if ($this->debug) { + file_put_contents('procol.log', "DETECTION DISSOLUTION\n", FILE_APPEND); + } $dateAnn = $tabAnn[$nbAnn-1]['dateInsertionSD']; $dateAnnCompare = DateTime::createFromFormat('Y-m-d H:i:s', $dateAnn); $dateAnnCompare->add(new DateInterval('P364D')); - if ($dateAnnCompare >= $dateAnnLastCompare) { + if ($dateAnnCompare > $dateAnnLastCompare) { $tabRet['SituationJuridique'] = 'D'; + if ($this->debug) { + file_put_contents('procol.log', "Entreprise dissolue\n", FILE_APPEND); + } } } } @@ -2686,10 +2699,8 @@ class Metier_Insee_MInsee extends Metier_Insee_Table if ($this->debug) { file_put_contents('procol.log', "SituationJuridique = ".$tabRet['SituationJuridique']."\n", FILE_APPEND); } - // Fin Situation Juridique - $timer['getAnnoncesLegales'] = microtime(true); - } + } // Fin Situation Juridique if (($tabInsee['CJ'] > 0 && $tabInsee['CJ'] < 20 || $tabInsee['CJ'] > 999 && $tabInsee['CJ'] < 2000) && $tabInsee['DIR_FCT']=='') { @@ -2881,10 +2892,10 @@ class Metier_Insee_MInsee extends Metier_Insee_Table $tabRet['Mail'] = trim($annCap['Assoc_Mail']); } if ($annCap['typeAsso'] == 'ASL' && $tabRet['FJ'] != 9150) { - $tabRet['FJ2'] = $tabRet['FJ']; - $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; - $tabRet['FJ'] = 9150; - $tabRet['FJ_lib'] = $this->getLibelleFJ(9150); + $tabRet['FJ2'] = $tabRet['FJ']; + $tabRet['FJ2_Lib'] = $tabRet['FJ_lib']; + $tabRet['FJ'] = 9150; + $tabRet['FJ_lib'] = $this->getLibelleFJ(9150); } elseif ($annCap['typeAsso'] == 'FOD') { $tabRet['FJ_lib'].= ' (Fonds de dotation)'; } @@ -3072,25 +3083,26 @@ class Metier_Insee_MInsee extends Metier_Insee_Table } $tabRet['dir1NomPrenom']=implode(' ', $tabNom); } - $tabRet['FJ_lib'] = $etabG['FJLib']; - $tabRet['AutreId'] = $etabG['NumRC']; - $tabRet['NafEtab'] = $etabG['NafEtab']; - $tabRet['NafEnt'] = $etabG['NafEnt']; + $tabRet['FJ_lib'] = $etabG['FJLib']; + $tabRet['AutreId'] = $etabG['NumRC']; + $tabRet['NafEtab'] = $etabG['NafEtab']; + $tabRet['NafEnt'] = $etabG['NafEnt']; $tabRet['NafEntLib'] = $etabG['NafEntLib']; - $tabRet['NafEtabLib'] = $etabG['NafEtabLib']; - $tabRet['SiretSiege'] = $etabG['Siret']; - $tabRet['DateMajRCS'] = $etab['dateMAJ']; + $tabRet['NafEtabLib'] = $etabG['NafEtabLib']; + $tabRet['SiretSiege'] = $etabG['Siret']; + $tabRet['DateMajRCS'] = $etab['dateMAJ']; $tabRet['numGreffe'] = $etabG['NumGreffe']; $tabRet['numRC'] = $etabG['NumRC2']; - $tabRet['Enseigne'] = $etabG['Enseigne']; + $tabRet['Enseigne'] = $etabG['Enseigne']; $iRncs = new Metier_Partenaires_MRncs($this->iDb); - $tabRet['Tribunal'] = $iRncs->getCodeBodaccTribunal($etabG['NumGreffe']); + $tabRet['Tribunal'] = $iRncs->getCodeBodaccTribunal($etabG['NumGreffe']); } if ($tabRet['Siege']==1 && $tabRet['Actif'] && $tabRet['Tribunal']=='') { $tabRet['Tribunal'] = $tabCodeTri; } + // RNCS Entrep et Etab, RM if (intval($siren) > 0) { $stmt = $this->conn->executeQuery("SELECT siren, sirenValide, actif, numGreffe, triCode, triId, numRC, numRC2, raisonSociale, nom, prenom, nomUsage, sigle, dateNaiss, @@ -4586,8 +4598,19 @@ class Metier_Insee_MInsee extends Metier_Insee_Table // --- Liste des jugements principaux - Tri chronologique par date de jugement foreach ($tabRet as $i => $ann) { $item = new stdClass(); - $item->date = str_replace('-', '', $ann['dateJugement']); - $item->dateISO8601 = $ann['dateJugement']; + $dateEff = str_replace('-', '', $ann['dateEffet'])*1; + $dateJug = str_replace('-', '', $ann['dateJugement'])*1; + $datePar = str_replace('-', '', $ann['DateParution'])*1; + if ($dateEff > 0) { + $item->date = $dateEff; + $item->dateISO8601 = $ann['dateEffet']; + } elseif ($dateJug > 0) { + $item->date = $dateJug; + $item->dateISO8601 = $ann['dateJugement']; + } elseif ($datePar > 0) { + $item->date = $datePar; + $item->dateISO8601 = $ann['DateParution']; + } $item->code = $ann['evenements'][0]['CodeEven']; $tabJugements[] = $item; // Detection TopDepart Cloture @@ -4755,10 +4778,14 @@ class Metier_Insee_MInsee extends Metier_Insee_Table $derExercice = $bilan['dateExercice']; } } - if ($derExercice > $evenProcolDateLast) { + if ($derExercice > $evenProcolLastDate) { $derEx = Metier_Util_Date::dateT('Ymd', 'd/m/Y', $derExercice); - $derPr = Metier_Util_Date::dateT('Ymd', 'd/m/Y', $evenProcolDateLast); + $derPr = Metier_Util_Date::dateT('Ymd', 'd/m/Y', $evenProcolLastDate); $effacement = true; + + if ($this->debug) { + file_put_contents('procol.log', "Effacement dissolution : $derExercice > $evenProcolLastDate\n", FILE_APPEND); + } } } } @@ -5190,6 +5217,10 @@ class Metier_Insee_MInsee extends Metier_Insee_Table $sql.= " ORDER BY unionDate ASC, FIELD(SourceTable, 'histo', 'annonce', 'bodacc')"; } } + + if ($this->debug && $rubrique == 'D') { + file_put_contents('procol.log', $sql."\n", FILE_APPEND); + } $stmt = $this->conn->executeQuery($sql); // --- Traitement des resultats