Suppression pollutions etablissements

This commit is contained in:
Michael RICOIS 2016-09-26 11:17:04 +02:00
parent 8a1f30297b
commit c17a045b44

View File

@ -1076,22 +1076,26 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
// Utilisation d'un index texte à cause du webservice // Utilisation d'un index texte à cause du webservice
foreach ($Ritem as $Ridx => $Rmont) { foreach ($Ritem as $Ridx => $Rmont) {
if ( ($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1]) && ($tabBilan[$i+1]['CONSOLIDE']=='S' if ( ($tabBilan[$i]['CONSOLIDE']=='S' && isset($tabRatios[$i+1]) && ($tabBilan[$i+1]['CONSOLIDE']=='S'
|| ($tabBilan[$i+1]['CONSOLIDE']=='N' && $tabBilan[$i+1]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE']))) || ($tabBilan[$i+1]['CONSOLIDE']=='N' && $tabBilan[$i+1]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE'])))
|| ($tabBilan[$i]['CONSOLIDE']=='N' && isset($tabRatios[$i+1]) && ($tabBilan[$i+1]['CONSOLIDE']=='N' || ($tabBilan[$i]['CONSOLIDE']=='N' && isset($tabRatios[$i+1]) && ($tabBilan[$i+1]['CONSOLIDE']=='N'
|| ($tabBilan[$i+1]['CONSOLIDE']=='S' && $tabBilan[$i+1]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE']))) ) { || ($tabBilan[$i+1]['CONSOLIDE']=='S' && $tabBilan[$i+1]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE']))) ) {
$Rmont = 0;
$Rmont = (($tabRatios[$i][$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]); if (abs($tabRatios[$i+1][$Ridx]) > 0) {
$Rdiffmont = $tabRatios[$i][$Ridx]-$tabRatios[$i+1][$Ridx]; $Rmont = (($tabRatios[$i][$Ridx]-$tabRatios[$i+1][$Ridx])*100)/abs($tabRatios[$i+1][$Ridx]);
}
} elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S' $Rdiffmont = $tabRatios[$i][$Ridx]-$tabRatios[$i+1][$Ridx];
|| ($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE']))) }
elseif ( ($tabBilan[$i]['CONSOLIDE']=='S'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='S'
|| ($tabBilan[$i+2]['CONSOLIDE']=='N'&&$tabBilan[$i+2]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE'])))
|| ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N' || ($tabBilan[$i]['CONSOLIDE']=='N'&&isset($tabRatios[$i+1])&&($tabBilan[$i+2]['CONSOLIDE']=='N'
|| ($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE']))) ) { || ($tabBilan[$i+2]['CONSOLIDE']=='S'&&$tabBilan[$i+2]['DATE_CLOTURE']!=$tabBilan[$i]['DATE_CLOTURE']))) ) {
$Rmont = 0;
$Rmont = (($tabRatios[$i][$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]); if (abs($tabRatios[$i+2][$Ridx]) > 0) {
$Rdiffmont = $tabRatios[$i][$Ridx]-$tabRatios[$i+1][$Ridx]; $Rmont = (($tabRatios[$i][$Ridx]-$tabRatios[$i+2][$Ridx])*100)/abs($tabRatios[$i+2][$Ridx]);
}
} else { $Rdiffmont = $tabRatios[$i][$Ridx]-$tabRatios[$i+1][$Ridx];
}
else {
$Rmont = 'NS'; $Rmont = 'NS';
$Rdiffmont = 'NS'; $Rdiffmont = 'NS';
} }
@ -3166,28 +3170,26 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$timer['risquesArret']=microtime(true); $timer['risquesArret']=microtime(true);
/** Liste des établissements polluants **/ /** Liste des établissements polluants **/
$sirenDeb=$siren.'00000'; /*$sirenDeb = $siren.'00000';
$sirenFin=$siren.'99999'; $sirenFin = $siren.'99999';
$tabTmp = $iDb->select( $tabTmp = $iDb->select(
'pollutions.iREP_etablissements e, pollutions.iREP_rejets_etablissements r', 'pollutions.iREP_etablissements e, pollutions.iREP_rejets_etablissements r',
'e.codecommune, e.nom, e.codesiret, e.idetab, r.idrejet, r.coderejet, r.libellerejet, r.codeouvragedepollution, r.codeentitehydro, r.nomstep, r.nommilieu', 'e.codecommune, e.nom, e.codesiret, e.idetab, r.idrejet, r.coderejet, r.libellerejet, r.codeouvragedepollution, r.codeentitehydro, r.nomstep, r.nommilieu',
"e.codesiret BETWEEN $sirenDeb AND $sirenFin AND e.idetab=r.idetab GROUP BY e.codesiret, r.libellerejet LIMIT 0,50", INDISCORE_DEBUG, MYSQL_ASSOC); "e.codesiret BETWEEN $sirenDeb AND $sirenFin AND e.idetab=r.idetab GROUP BY e.codesiret, r.libellerejet LIMIT 0,50", true, MYSQL_ASSOC);
// Nombre d'établissements concernés: neutraliser si >= 10 // Nombre d'établissements concernés: neutraliser si >= 10
$RISQUEACT_NB = count($tabTmp); $RISQUEACT_NB = count($tabTmp);
$RISQUEACT = array(); $RISQUEACT = array();
if ($RISQUEACT_NB > 0) { if ($RISQUEACT_NB > 0) {
file_put_contents('test.log', print_r($tabTmp,1)); file_put_contents('test.log', print_r($tabTmp,1));
foreach ($tabTmp as $iTmp => $tabArret) { foreach ($tabTmp as $iTmp => $tabArret) {
/* // Libellé risque lié à la l'activité de l'un des etablissements
* Libellé risque lié à la l'activité de l'un des etablissements // "l'entreprise à au moins l'un de ses établissements figurant au registre francais des émissions polluantes"
* "l'entreprise à au moins l'un de ses établissements figurant au registre francais des émissions polluantes" // (AIR, EAU ou et SOL)
* (AIR, EAU ou et SOL)
*/
$RISQUEACT[] = $tabArret['libellerejet']; $RISQUEACT[] = $tabArret['libellerejet'];
} }
$RISQUEACT = array_unique($RISQUEACT); $RISQUEACT = array_unique($RISQUEACT);
$RISQUEACT = implode(', ', $RISQUEACT); $RISQUEACT = implode(', ', $RISQUEACT);
} }*/
$timer['risquesPollu']=microtime(true); $timer['risquesPollu']=microtime(true);
/** Bassin hydro : Le ou les libellés des bassins hydrographiques concernés /** Bassin hydro : Le ou les libellés des bassins hydrographiques concernés
@ -3274,7 +3276,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$MARCHEPUBLICDER_MT=false; // Montant $MARCHEPUBLICDER_MT=false; // Montant
$MARCHEPUBLICDER_ANNEE=0; // Année du dernier marché public remporté $MARCHEPUBLICDER_ANNEE=0; // Année du dernier marché public remporté
$MARCHEPUBLICDER_DATE=0; // Date du dernier marché public remporté $MARCHEPUBLICDER_DATE=0; // Date du dernier marché public remporté
$ret=$iInsee->getAnnoncesBoamp($siren); $ret = $iInsee->getAnnoncesBoamp($siren);
if (count($ret)>0) { if (count($ret)>0) {
foreach ($ret as $i=>$mp) { foreach ($ret as $i=>$mp) {
if (substr($mp['id'],0,1)=='A' || $mp['BodaccCode']=='BOMP C') { if (substr($mp['id'],0,1)=='A' || $mp['BodaccCode']=='BOMP C') {
@ -3356,7 +3358,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
AND v.codeCommune LIKE '$codeCommuneInsee' AND v.codeCommune LIKE '$codeCommuneInsee'
AND v.Bodacc_Date_Parution>='$ya2ans' AND v.Bodacc_Date_Parution>='$ya2ans'
AND v.VenteMt>1 AND v.VenteDev='EUR' $filtreCAEff AND v.VenteMt>1 AND v.VenteDev='EUR' $filtreCAEff
GROUP BY v.id)b"); GROUP BY v.id)b", INDISCORE_DEBUG);
if (count($ret)>0) { if (count($ret)>0) {
while($ret=$iDb->fetch(MYSQL_ASSOC)) { while($ret=$iDb->fetch(MYSQL_ASSOC)) {
$VENTEMAX_MT = $VENTEMAX_VILLE_MT = $VENTEMAX_VILLE_EU = $ret['vtMax']; // Plus grand montant de vente annonce VC niveau "ville" $VENTEMAX_MT = $VENTEMAX_VILLE_MT = $VENTEMAX_VILLE_EU = $ret['vtMax']; // Plus grand montant de vente annonce VC niveau "ville"
@ -3365,6 +3367,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
$VENTE_NB = $VENTE_VILLE_NB = $ret['vtNb']; // Nombre de ventes dans le niveau statistique "ville" dans les 24 derniers mois $VENTE_NB = $VENTE_VILLE_NB = $ret['vtNb']; // Nombre de ventes dans le niveau statistique "ville" dans les 24 derniers mois
} }
} }
// Par département // Par département
$DEPARTEMENT=$iInsee->getDepartement($tabIdentite['Dept']); $DEPARTEMENT=$iInsee->getDepartement($tabIdentite['Dept']);
$DEPARTEMENT_DE=$iInsee->getDepartement($tabIdentite['Dept'], true); $DEPARTEMENT_DE=$iInsee->getDepartement($tabIdentite['Dept'], true);
@ -3376,7 +3379,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
AND v.codeCommune LIKE '".$tabIdentite['Dept']."%' AND v.codeCommune LIKE '".$tabIdentite['Dept']."%'
AND v.Bodacc_Date_Parution>='$ya2ans' AND v.Bodacc_Date_Parution>='$ya2ans'
AND v.VenteMt>1 AND v.VenteDev='EUR' $filtreCAEff AND v.VenteMt>1 AND v.VenteDev='EUR' $filtreCAEff
GROUP BY v.id)b"); GROUP BY v.id)b", INDISCORE_DEBUG);
while($ret=$iDb->fetch(MYSQL_ASSOC)) { while($ret=$iDb->fetch(MYSQL_ASSOC)) {
$VENTEMAX_DEP_MT = $VENTEMAX_DEP_EU = $ret['vtMax']; // Plus grand montant de vente annonce VC niveau "ville" $VENTEMAX_DEP_MT = $VENTEMAX_DEP_EU = $ret['vtMax']; // Plus grand montant de vente annonce VC niveau "ville"
$VENTEMOY_DEP_MT = $VENTEMOY_DEP_EU = $ret['vtMoy']; $VENTEMOY_DEP_MT = $VENTEMOY_DEP_EU = $ret['vtMoy'];
@ -3391,7 +3394,7 @@ function calculIndiScore($siren, $nic=0, $accesDist=false, $cycleClient=2, $mail
WHERE v.nafEn LIKE '$APEENT' WHERE v.nafEn LIKE '$APEENT'
AND v.Bodacc_Date_Parution>='$ya2ans' AND v.Bodacc_Date_Parution>='$ya2ans'
AND v.VenteMt>1 AND v.VenteDev='EUR' $filtreCAEff AND v.VenteMt>1 AND v.VenteDev='EUR' $filtreCAEff
GROUP BY v.id)b"); GROUP BY v.id)b", INDISCORE_DEBUG);
while($ret=$iDb->fetch(MYSQL_ASSOC)) { while($ret=$iDb->fetch(MYSQL_ASSOC)) {
$VENTEMAX_FRA_MT = $VENTEMAX_FRA_EU = $ret['vtMax']; // Plus grand montant de vente annonce VC niveau "ville" $VENTEMAX_FRA_MT = $VENTEMAX_FRA_EU = $ret['vtMax']; // Plus grand montant de vente annonce VC niveau "ville"
$VENTEMOY_FRA_MT = $VENTEMOY_FRA_EU = $ret['vtMoy']; $VENTEMOY_FRA_MT = $VENTEMOY_FRA_EU = $ret['vtMoy'];