Indicateur procédure collective, correction dernier evénements

This commit is contained in:
Michael RICOIS 2016-02-15 15:21:45 +00:00
parent 5e780ab91a
commit 903c286c4f

View File

@ -3174,7 +3174,7 @@ class MInsee
if (intval($siren) > 100) { if (intval($siren) > 100) {
if ($this->debug) file_put_contents('procol.log', "Debut"."\n"); if ($this->debug) file_put_contents('procol.log', "Debut"."\n");
$tabProcol = $this->getAnnoncesLegales($siren, 0, 'P', false); $tabProcol = $this->getAnnoncesLegales($siren, 0, 'P', false);
if ($this->debug) file_put_contents('procol.log', print_r($tabProcol,1)."\n", FILE_APPEND); if ($this->debug) file_put_contents('procol.log', "tabProcol = ".print_r($tabProcol,1)."\n", FILE_APPEND);
if ( count($tabProcol) > 0 ) { if ( count($tabProcol) > 0 ) {
$tabDates = array(); $tabDates = array();
foreach ($tabProcol as $iProcol => $procol) { foreach ($tabProcol as $iProcol => $procol) {
@ -5818,7 +5818,7 @@ class MInsee
if ($visualisation === false) { if ($visualisation === false) {
// --- Si il y a des annonces // --- Si il y a des annonces
if (count($tabRet) > 0) { if (count($tabRet) > 0) {
if ($this->debug) file_put_contents('procol.log', "Even ".print_r($tabRet,1)."\n", FILE_APPEND); if ($this->debug) file_put_contents('procol.log', "Even = ".print_r($tabRet,1)."\n", FILE_APPEND);
$tabJugements = array(); $tabJugements = array();
// --- Liste des jugements principaux, élimination des secondaires - Trier ante-chronologique // --- Liste des jugements principaux, élimination des secondaires - Trier ante-chronologique
foreach ($tabRet as $i => $ann) { foreach ($tabRet as $i => $ann) {
@ -5827,13 +5827,10 @@ class MInsee
$item->dateISO8601 = $ann['dateJugement']; $item->dateISO8601 = $ann['dateJugement'];
$item->code = $ann['evenements'][0]['CodeEven']; $item->code = $ann['evenements'][0]['CodeEven'];
$tabJugements[] = $item; $tabJugements[] = $item;
// Derniere date de procol // Dernier evenement de procol
if ($i == 0) { if ($i == 0) {
$evenProcolDateLast = $item->date; $evenProcolLastDate = $item->date;
} $evenProcolLast = $item->code;
// Premier evenement
if ($i == count($tabRet)-1) {
$evenProcolFirst = $item->code;
} }
} }
// --- Gestions des conditions pour l'affichage de l'indicateur procédure collectives // --- Gestions des conditions pour l'affichage de l'indicateur procédure collectives
@ -5845,14 +5842,18 @@ class MInsee
krsort($tabJugements); krsort($tabJugements);
foreach ($tabJugements as $i => $j) { foreach ($tabJugements as $i => $j) {
// Si plan suivi de SV, RJ, LJ ou clôture alors pas de plan // Si plan suivi de SV, RJ, LJ ou clôture alors pas de plan
if ($j->date > $this->debutPlan & ( if ($j->date > $this->debutPlan && in_array($j->code, array(
($j->code>=1100 && $j->code<=1101) || // Sauvegarde // Sauvegarde
($j->code>=1200 && $j->code<=1202) || // RJ 1100, 1101,
in_array($j->code, array(1211,1217)) || // RJ // RJ
($j->code>=1300 && $j->code<=1314) || // LJ 1200, 1201, 1202, 1211, 1217,
in_array($j->code, array(1417,1418,1419)) || // Extension SV, LJ, RJ // LJ
($j->code>=1500 && $j->code<=1504) || // Cloture 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314,
in_array($j->code, array(1514)))) { // Cloture // Extension SV, LJ, RJ
1417, 1418, 1419,
// Cloture
1500, 1501, 1502, 1503, 1504, 1514
))) {
$this->dureePlan = 0; $this->dureePlan = 0;
} }
if ($this->debug) file_put_contents('procol.log', $j->date.'>'.$this->debutPlan.', Jugement='.$j->code."\n", FILE_APPEND); if ($this->debug) file_put_contents('procol.log', $j->date.'>'.$this->debutPlan.', Jugement='.$j->code."\n", FILE_APPEND);
@ -5865,14 +5866,15 @@ class MInsee
foreach ($tmp as $tmp2) { foreach ($tmp as $tmp2) {
$tabNoProcol[$tmp2['codEven']] = $tmp2['affProcol']; $tabNoProcol[$tmp2['codEven']] = $tmp2['affProcol'];
} }
if (array_key_exists($evenProcolFirst, $tabNoProcol)) { if (array_key_exists($evenProcolLast, $tabNoProcol)) {
switch ($tabNoProcol[$evenProcolFirst]) { if ($this->debug) file_put_contents('procol.log', "Effacement Procol\n", FILE_APPEND);
switch ($tabNoProcol[$evenProcolLast]) {
// PAS DE MENTION DE LA PROCOL // PAS DE MENTION DE LA PROCOL
case 1: case 1:
if ($this->debug) file_put_contents('procol.log', "affProcol = 1\n", FILE_APPEND); if ($this->debug) file_put_contents('procol.log', "affProcol = 1\n", FILE_APPEND);
$tabRet = array(); $tabRet = array();
break; break;
// Ne pas mentionner la procol si CJ=1xxx // Ne pas mentionner la procol si CJ=1xxx OU si actif et CJ!=9xxx et even de plus d'un mois
case 2: case 2:
if (substr($tabId['FJ'],0,1)*1==1) { if (substr($tabId['FJ'],0,1)*1==1) {
if ($this->debug) file_put_contents('procol.log', "affProcol = 2\n", FILE_APPEND); if ($this->debug) file_put_contents('procol.log', "affProcol = 2\n", FILE_APPEND);
@ -5880,9 +5882,9 @@ class MInsee
} elseif ($tabId['Actif']*1 > 0 && substr($tabId['FJ'],0,1)*1 != 9) { } elseif ($tabId['Actif']*1 > 0 && substr($tabId['FJ'],0,1)*1 != 9) {
if ($this->debug) file_put_contents('procol.log', "affProcol = 2", FILE_APPEND); if ($this->debug) file_put_contents('procol.log', "affProcol = 2", FILE_APPEND);
$maxLatence = date('Ymd',mktime(0,0,0, $maxLatence = date('Ymd',mktime(0,0,0,
substr($evenProcolDateLast,4,2)*1+1, substr($evenProcolLastDate,4,2)*1+1,
substr($evenProcolDateLast,6,2), substr($evenProcolLastDate,6,2),
substr($evenProcolDateLast,0,4))); substr($evenProcolLastDate,0,4)));
if (date('Ymd') > $maxLatence) { if (date('Ymd') > $maxLatence) {
$tabRet = array(); $tabRet = array();
} }
@ -5904,14 +5906,14 @@ class MInsee
} }
// --- Procédure trop ancienne plus de 12 ans et actif // --- Procédure trop ancienne plus de 12 ans et actif
$dateTropAncienne = (date('Ymd')*1)-120000; $dateTropAncienne = (date('Ymd')*1)-120000;
if ($evenProcolDateLast < $dateTropAncienne && $tabId['Actif']*1 > 0) { if ($evenProcolLastDate < $dateTropAncienne && $tabId['Actif']*1 > 0) {
$derPr = $classWDate->dateT('Ymd','d/m/Y', $evenProcolDateLast); $derPr = $classWDate->dateT('Ymd','d/m/Y', $evenProcolLastDate);
$tabRet = array(); $tabRet = array();
if ($this->debug) file_put_contents('procol.log', "Procédure trop ancienne plus de 12 ans et actif\n", FILE_APPEND); if ($this->debug) file_put_contents('procol.log', "Procédure trop ancienne plus de 12 ans et actif\n", FILE_APPEND);
} }
// --- En Procol mais présence d'une annonce de cloture ou LJ avec Bilan publié ultérieurement // --- En Procol mais présence d'une annonce de cloture ou LJ avec Bilan publié ultérieurement
elseif ( ($evenProcolFirst>=1300 && $evenProcolFirst<=1313 && $evenProcolFirst!=1310) elseif ( in_array($evenProcolLast, array(1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1311,1312,1313))
|| ($evenProcolFirst>=1500 && $evenProcolFirst<=1504) ) { || in_array($evenProcolLast, array(1500,1501,1502,1503,1504))) {
$mBil = new MBilans($siren, $this->iDb); $mBil = new MBilans($siren, $this->iDb);
$tabBilans = $mBil->listeBilans($accesDist); $tabBilans = $mBil->listeBilans($accesDist);
$derExercice = 0; $derExercice = 0;