Ajout commentaires et formattage pour l'indicateur de procédures collectives
This commit is contained in:
parent
f0bd69941f
commit
aeec1e28ec
@ -2992,7 +2992,7 @@ class MInsee
|
||||
$tabProcol = $this->getAnnoncesLegales($siren, 0, 'P', false);
|
||||
if ( count($tabProcol) > 0 ) {
|
||||
$tabDates = array();
|
||||
foreach ($tabProcol as $iProcol=>$procol) {
|
||||
foreach ($tabProcol as $iProcol => $procol) {
|
||||
$tabDates[] = $procol['dateJugement'];
|
||||
}
|
||||
rsort($tabDates);
|
||||
@ -5262,7 +5262,7 @@ class MInsee
|
||||
}
|
||||
}
|
||||
|
||||
if ($ann['Rubrique']=='procol') $procol=true;
|
||||
if ($ann['Rubrique']=='procol') $procol = true;
|
||||
|
||||
$dateCes=str_replace('-','', $ann['dateCessationActivite'])*1;
|
||||
$dateDeb=str_replace('-','', $ann['dateDebutActivite'])*1;
|
||||
@ -5627,123 +5627,115 @@ class MInsee
|
||||
|
||||
// --- Vérification
|
||||
if ($visualisation === false) {
|
||||
/**
|
||||
* On vérifie si la société n'est pas in bonis pour les raisons suivantes :
|
||||
* 1502 : Clôture de la procédure pour extinction du passif
|
||||
*/
|
||||
if ($rubrique=='P') {
|
||||
$tabJugements=array();
|
||||
foreach ($tabRet as $i=>$ann) {
|
||||
$tabJugements[$ann['dateJugement']]=$ann['evenements'][0]['CodeEven'];
|
||||
// --- Si il y a des annonces
|
||||
if (count($tabRet) > 0) {
|
||||
$tabJugements = array();
|
||||
// --- Liste des jugements principaux - élimination des secondaires
|
||||
foreach ($tabRet as $i => $ann) {
|
||||
$tabJugements[$ann['dateJugement']] = $ann['evenements'][0]['CodeEven'];
|
||||
}
|
||||
// Si plan recherche des annonces suivantes
|
||||
if ($this->dureePlan>0) {
|
||||
ksort($tabJugements);
|
||||
// Tableau chronologique des dates de jugement ==> code jugement
|
||||
reset($tabJugements);
|
||||
foreach ($tabJugements as $dateJuge=>$codeJuge) {
|
||||
if ($dateJuge>$this->debutPlan & (
|
||||
($codeJuge>=1100 && $codeJuge<=1101)|| // Sauvegarde
|
||||
($codeJuge>=1200 && $codeJuge<=1202)||$codeJuge==1211|| // RJ
|
||||
($codeJuge>=1300 && $codeJuge<=1313)|| // LJ
|
||||
($codeJuge>=1500 && $codeJuge<=1504) ) ) // Cloture
|
||||
// --- Gestions des conditions pour l'affichage de l'indicateur procédure collectives
|
||||
if ($rubrique=='P') {
|
||||
// Si plan recherche des annonces suivantes
|
||||
if ($this->dureePlan > 0) {
|
||||
ksort($tabJugements);
|
||||
// Tableau chronologique des dates de jugement => code jugement
|
||||
foreach ($tabJugements as $dateJuge => $codeJuge) {
|
||||
// Si plan suivi de SV, RJ, LJ ou clôture alors pas de plan
|
||||
$this->dureePlan=0;
|
||||
}
|
||||
}
|
||||
|
||||
// Tableau ante-chronologique des dates de jugement ==> code jugement
|
||||
krsort($tabJugements);
|
||||
reset($tabJugements);
|
||||
|
||||
$tabNoProcol=array();
|
||||
$tmp=$this->iDb->select('jo.tabEvenements', 'codEven,affProcol', 'affProcol>0', false, MYSQL_ASSOC);
|
||||
foreach ($tmp as $tmp2)
|
||||
$tabNoProcol[$tmp2['codEven']]=$tmp2['affProcol'];
|
||||
|
||||
if (@array_key_exists(current($tabJugements), $tabNoProcol)) {
|
||||
// Ce code jugement Procol n'appel pas forcément l'indicateur : SituationJuridique=P
|
||||
switch($tabNoProcol[current($tabJugements)]) {
|
||||
case 1: // PAS DE MENTION DE LA PROCOL
|
||||
$tabRet=array();
|
||||
break;
|
||||
case 2: // Ne pas mentionner la procol si CJ=1xxx
|
||||
//$tabId=$this->getIdentiteLight($siren);
|
||||
if (substr($tabId['FJ'],0,1)*1==1) {
|
||||
$tabRet=array();
|
||||
} elseif ($tabId['Actif']*1>0 && substr($tabId['FJ'],0,1)*1<>9 ) {
|
||||
$derProcol =str_replace('-','',key($tabJugements))*1;
|
||||
$maxLatence=date('Ymd',mktime(0,0,0,(substr($derProcol,4,2)*1)+1,substr($derProcol,6,2),substr($derProcol,0,4)));
|
||||
if (date('Ymd')>$maxLatence) {
|
||||
$tabRet=array();
|
||||
if ($dateJuge>$this->debutPlan & (
|
||||
($codeJuge>=1100 && $codeJuge<=1101)|| // Sauvegarde
|
||||
($codeJuge>=1200 && $codeJuge<=1202)|| $codeJuge==1211|| // RJ
|
||||
($codeJuge>=1300 && $codeJuge<=1313)|| // LJ
|
||||
($codeJuge>=1500 && $codeJuge<=1504) ) ) { // Cloture
|
||||
$this->dureePlan = 0;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 3: // Pas Procol si actif RCS
|
||||
//$tabId=$this->getIdentiteLight($siren);
|
||||
if ($tabId['Actif']*1>0) {
|
||||
$tabRet=array();
|
||||
}
|
||||
break;
|
||||
case 4: // Le dernier jugement est un appel => Procol Suspendu
|
||||
$this->appelJugement=true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (count($tabRet)>0) {
|
||||
$derProcol=str_replace('-','',key($tabJugements))*1;
|
||||
$dateTropAncienne=(date('Ymd')*1)-120000;
|
||||
if ($derProcol<$dateTropAncienne) {
|
||||
//$tabId=$this->getIdentiteLight($siren);
|
||||
if ($tabId['Actif']*1>0) {
|
||||
/** Procédure trop ancienne **/
|
||||
$derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol);
|
||||
$tabRet=array();
|
||||
}
|
||||
} elseif ((current($tabJugements)>=1300 && current($tabJugements)<=1313 && current($tabJugements)!=1310) ||
|
||||
(current($tabJugements)>=1500 && current($tabJugements)<=1504)) {
|
||||
/** En Procol mais présence d'une annonce de cloture ou LJ
|
||||
avec Bilan publié ultérieurement
|
||||
**/
|
||||
$mBil=new MBilans($siren, $this->iDb);
|
||||
$tabBilans=$mBil->listeBilans($accesDist);
|
||||
$derExercice=0;
|
||||
}
|
||||
|
||||
foreach ($tabBilans as $idx=>$bilan)
|
||||
if ($bilan['dateExercice']>$derExercice) $derExercice=$bilan['dateExercice'];
|
||||
// Tableau ante-chronologique des dates de jugement ==> code jugement
|
||||
krsort($tabJugements);
|
||||
$evenFirst = current($tabJugements);
|
||||
$derProcol = str_replace('-','', key($tabJugements))*1;
|
||||
|
||||
//@todo : Mettre en cache
|
||||
$tabNoProcol = array();
|
||||
$tmp = $this->iDb->select('jo.tabEvenements', 'codEven, affProcol', 'affProcol>0', false, MYSQL_ASSOC);
|
||||
foreach ($tmp as $tmp2) {
|
||||
$tabNoProcol[$tmp2['codEven']] = $tmp2['affProcol'];
|
||||
}
|
||||
|
||||
// --- Evenements effaçant l'indicateur P dans Situation Juridique
|
||||
if (array_key_exists($evenFirst, $tabNoProcol)) {
|
||||
switch ($tabNoProcol[$evenFirst]) {
|
||||
// PAS DE MENTION DE LA PROCOL
|
||||
case 1:
|
||||
$tabRet = array();
|
||||
break;
|
||||
// Ne pas mentionner la procol si CJ=1xxx
|
||||
case 2:
|
||||
if (substr($tabId['FJ'],0,1)*1==1) {
|
||||
$tabRet = array();
|
||||
} elseif ($tabId['Actif']*1 > 0 && substr($tabId['FJ'],0,1)*1 != 9) {
|
||||
$maxLatence = date('Ymd',mktime(0,0,0,(substr($derProcol,4,2)*1)+1,substr($derProcol,6,2),substr($derProcol,0,4)));
|
||||
if (date('Ymd') > $maxLatence) {
|
||||
$tabRet = array();
|
||||
}
|
||||
}
|
||||
break;
|
||||
// Pas Procol si actif RCS
|
||||
case 3:
|
||||
if ($tabId['Actif']*1>0) {
|
||||
$tabRet = array();
|
||||
}
|
||||
break;
|
||||
// Le dernier jugement est un appel => Procol Suspendu
|
||||
case 4:
|
||||
$this->appelJugement = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// --- Procédure trop ancienne plus de 12 ans et actif
|
||||
$dateTropAncienne = (date('Ymd')*1)-120000;
|
||||
if ($derProcol < $dateTropAncienne && $tabId['Actif']*1 > 0) {
|
||||
$derPr = $classWDate->dateT('Ymd','d/m/Y', $derProcol);
|
||||
$tabRet = array();
|
||||
}
|
||||
// --- En Procol mais présence d'une annonce de cloture ou LJ avec Bilan publié ultérieurement
|
||||
elseif ( ($evenFirst>=1300 && $evenFirst<=1313 && $evenFirst!=1310) || ($evenFirst>=1500 && $evenFirst<=1504)) {
|
||||
$mBil = new MBilans($siren, $this->iDb);
|
||||
$tabBilans = $mBil->listeBilans($accesDist);
|
||||
$derExercice = 0;
|
||||
foreach ($tabBilans as $idx => $bilan) {
|
||||
if ($bilan['dateExercice'] > $derExercice) {
|
||||
$derExercice = $bilan['dateExercice'];
|
||||
}
|
||||
}
|
||||
if ($derExercice>$derProcol) {
|
||||
$derEx=$classWDate->dateT('Ymd','d/m/Y',$derExercice);
|
||||
$derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol);
|
||||
$tabRet=array();
|
||||
$derEx = $classWDate->dateT('Ymd', 'd/m/Y', $derExercice);
|
||||
$derPr = $classWDate->dateT('Ymd', 'd/m/Y', $derProcol);
|
||||
$tabRet = array();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
elseif ($rubrique=='D' && count($tabRet)>0) {
|
||||
$tabJugements=array();
|
||||
foreach ($tabRet as $i=>$ann) {
|
||||
$tabJugements[$ann['DateParution']]=$ann['evenements'][0]['CodeEven'];
|
||||
}
|
||||
// Tableau ante-chronologique des dates de jugement ==> code jugement
|
||||
krsort($tabJugements);
|
||||
reset($tabJugements);
|
||||
|
||||
$mBil = new MBilans($siren, $this->iDb);
|
||||
$tabBilans = $mBil->listeBilans($accesDist);
|
||||
$derExercice = 0;
|
||||
$derProcol = str_replace('-','',key($tabJugements))*1;
|
||||
foreach ($tabBilans as $idx=>$bilan){
|
||||
if ($bilan['dateExercice']>$derExercice) {
|
||||
$derExercice = $bilan['dateExercice'];
|
||||
// --- Dissolution mais bilan après événements
|
||||
elseif ($rubrique == 'D') {
|
||||
// Tableau ante-chronologique des dates de jugement ==> code jugement
|
||||
krsort($tabJugements);
|
||||
$mBil = new MBilans($siren, $this->iDb);
|
||||
$tabBilans = $mBil->listeBilans(false, 3);
|
||||
$derExercice = 0;
|
||||
$derProcol = str_replace('-','',key($tabJugements))*1;
|
||||
foreach ($tabBilans as $idx => $bilan){
|
||||
if ($bilan['dateExercice'] > $derExercice) {
|
||||
$derExercice = $bilan['dateExercice'];
|
||||
}
|
||||
}
|
||||
if ($derExercice > $derProcol) {
|
||||
$derEx = $classWDate->dateT('Ymd','d/m/Y',$derExercice);
|
||||
$derPr = $classWDate->dateT('Ymd','d/m/Y',$derProcol);
|
||||
$tabRet = array();
|
||||
}
|
||||
}
|
||||
if ($derExercice > $derProcol) {
|
||||
$derEx=$classWDate->dateT('Ymd','d/m/Y',$derExercice);
|
||||
$derPr=$classWDate->dateT('Ymd','d/m/Y',$derProcol);
|
||||
$tabRet = array();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user