From be0044abb2da0178f5fe9eb21038f3531d65d2fd Mon Sep 17 00:00:00 2001 From: Michael RICOIS Date: Fri, 3 Feb 2017 17:09:48 +0100 Subject: [PATCH] Detection dureePlan --- library/Metier/Insee/MInsee.php | 109 ++++++++++++++------------------ 1 file changed, 48 insertions(+), 61 deletions(-) diff --git a/library/Metier/Insee/MInsee.php b/library/Metier/Insee/MInsee.php index a0d4a849..d3776c8c 100644 --- a/library/Metier/Insee/MInsee.php +++ b/library/Metier/Insee/MInsee.php @@ -4869,13 +4869,42 @@ class Metier_Insee_MInsee extends Metier_Insee_Table */ public function getAnnoncesLegalesPlan($type, $fj, $annonce) { + // --- Bodacc + if ($type == 'bodacc') { + $tabEven = explode(';', $annonce['typeEven']); + foreach ($tabEven as $even) { + $this->matchPlanDuree($even, $annonce['dateJugement'], $annonce['annonce']); + } + } + // --- Annonce + if ($type == 'annonce') { + $this->matchPlanDuree($annonce['typeEven'], $annonce['dateJugement'], $annonce['annonce']); + } + + // --- Historique + if ($type == 'histo') { + $this->matchPlanDuree($annonce['CODEVE'], $annonce['DATE'], $annonce['annonceTxt']); + } + } + + /** + * + */ + protected function matchPlanDuree($eve, $date, $txt) + { + if ($this->debug) { + file_put_contents('procol.log', "MATCH DUREE PLAN : ", FILE_APPEND); + } + $evenDetect = array( + '75', // Histo '1407', // Modification de plan '1409', // Modification du plan de continuation '1413', // Arrêt du plan de continuation '1414', // Arrêt du plan de redressement '1101', // Arrêt du plan de sauvegarde ); + $fjDetect = array( 16,1600, // Exploitant agricole 63,6316,6317,6318, // Société coopérative agricole @@ -4885,80 +4914,41 @@ class Metier_Insee_MInsee extends Metier_Insee_Table 6597,6598, ); - // --- Bodacc - if ($type == 'bodacc') { - $tabEven = explode(';', $annonce['typeEven']); - foreach ($tabEven as $even) { - if (intval($even)!=0) { - if (($this->dureePlan==0 || $this->dureePlan==120) && in_array($even, $evenDetect)) { - if ($this->debug) { - file_put_contents('procol.log', "BODACC MATCH DUREE PLAN \n", FILE_APPEND); - } - // --- Lecture dureePlan dans annonce - $this->debutPlan = str_replace('-', '', $annonce['dateJugement']); // SSAAMMJJ - if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uisu', $annonce['annonce'], $matches)) { - $this->dureePlan = $matches[1]*12; // 10 ans = 120 mois - } - - // --- Duree du Plan par défaut sur FJ et par défaut - if ($this->dureePlan<1 || $this->dureePlan>120) { - if (in_array($fj, $fjDetect)) { - $this->dureePlan = 180; // 15 ans - } else { - $this->dureePlan = 120; // 10 ans = 120 mois - } - } - $this->finPlan = Metier_Util_Date::period2Days($this->debutPlan, $this->dureePlan.' mois'); - } - } - } - } - - // --- Historique - if ($type == 'histo') { - if (($this->dureePlan==0 || $this->dureePlan==120) && $annonce['CODEVE']==75) { // Modification de plan - $this->debutPlan = $annonce['DATE']; // SSAAMMJJ - if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uisu', $annonce['annonceTxt'], $matches)) { + if (in_array($eve, $evenDetect)) { + if (($this->dureePlan == 0 || $this->dureePlan == 120)) { + // --- Lecture dureePlan dans annonce + $this->debutPlan = str_replace('-', '', $date); // SSAAMMJJ + if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uisu', $txt, $matches)) { $this->dureePlan = $matches[1]*12; // 10 ans = 120 mois - if ($this->debug) { - file_put_contents('procol.log', "HISTO MATCH DUREE PLAN \n", FILE_APPEND); - } + } + if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+mois?/Uisu', $txt, $matches)) { + $this->dureePlan = $matches[1]; } // --- Duree du Plan par défaut sur FJ et par défaut - if ($this->dureePlan<1 || $this->dureePlan>120) { + if ($this->dureePlan < 1 || $this->dureePlan > 120) { if (in_array($fj, $fjDetect)) { $this->dureePlan = 180; // 15 ans } else { $this->dureePlan = 120; // 10 ans = 120 mois } } + if ($this->debug) { + file_put_contents('procol.log', $this->dureePlan." mois", FILE_APPEND); + } $this->finPlan = Metier_Util_Date::period2Days($this->debutPlan, $this->dureePlan.' mois'); } } - // --- Annonce - if ($type == 'annonce') { - if (($this->dureePlan<1 || $this->dureePlan==120) && in_array($annonce['typeEven'], $evenDetect)) { - $this->debutPlan = str_replace('-', '', $annonce['dateJugement']); // SSAAMMJJ - if (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uisu', $annonce['annonce'], $matches)) { - $this->dureePlan = $matches[1]*12; // 10 ans = 120 mois - } elseif (preg_match('/dur.e(?:.*)plan(?:.*)(\d+)\s+ans?/Uisu', $annonce['annonce'], $matches)) { - $this->dureePlan = $matches[1]*12; // 10 ans = 120 mois - } - if ($this->dureePlan<1 || $this->dureePlan>120) { - if (in_array($fj, $fjDetect)) { - $this->dureePlan = 180; // 15 ans - } else { - $this->dureePlan = 120; // 10 ans = 120 mois - } - } - $this->finPlan = Metier_Util_Date::period2Days($this->debutPlan, $this->dureePlan.' mois'); - } + if ($this->debug) { + file_put_contents('procol.log', "\n", FILE_APPEND); } } protected function getAnnoncesLegalesEffacement($siren, $rubrique, $tabRet) { + if ($this->debug) { + file_put_contents('procol.log', "Effacement Procol\n", FILE_APPEND); + } $effacement = false; $MaxPeriodProcol = 80000; // --- Si il y a des annonces @@ -4997,7 +4987,7 @@ class Metier_Insee_MInsee extends Metier_Insee_Table // --- Gestions des conditions pour l'affichage de l'indicateur procédure collectives if ($rubrique == 'P') { if ($this->debug) { - file_put_contents('procol.log', "Rubrique P = ".print_r($tabRet, 1)."\n", FILE_APPEND); + file_put_contents('procol.log', "Rubrique P\n", FILE_APPEND); } // Si plan recherche des annonces suivantes if ($this->dureePlan > 0) { @@ -5021,7 +5011,7 @@ class Metier_Insee_MInsee extends Metier_Insee_Table 1417, 1418, 1419, // Cloture 1500, 1501, 1502, 1503, 1504, 1514 ))) { - $this->dureePlan = 0; + $this->dureePlan = 0; } } if ($this->debug) { @@ -5595,9 +5585,6 @@ class Metier_Insee_MInsee extends Metier_Insee_Table } } - if ($this->debug && $rubrique == 'D') { - file_put_contents('procol.log', $sql."\n", FILE_APPEND); - } try { $stmt = $this->conn->executeQuery($sql); } catch (\Doctrine\DBAL\DBALException $e) {