Correction traitement filtre siege

This commit is contained in:
Michael RICOIS 2013-01-04 17:15:00 +00:00
parent 8dac441775
commit 8ace51d39f

View File

@ -97,7 +97,7 @@ function filtreAdresse(&$formR, &$criteres, &$sphinx)
if (empty($formR['cpVille']) == true) { if (empty($formR['cpVille']) == true) {
return; return;
} }
$adressePostale = $formR['cpVille']; $adressePostale = $formR['cpVille'];
//If we have a CEDEX //If we have a CEDEX
if (preg_match('/^[0-9]{5}\s(.*)\sCEDEX/i', $adressePostale, $codePostaux)) { if (preg_match('/^[0-9]{5}\s(.*)\sCEDEX/i', $adressePostale, $codePostaux)) {
@ -125,7 +125,7 @@ function filtreAdresse(&$formR, &$criteres, &$sphinx)
$formR['ville'] = str_replace($codePostaux[0], '', $adressePostale); $formR['ville'] = str_replace($codePostaux[0], '', $adressePostale);
$dep = intval(substr($codePostaux[0], 0, 2)); $dep = intval(substr($codePostaux[0], 0, 2));
//Monaco //Monaco
if ($codePostaux[0] == '98000') { if ($codePostaux[0] == '98000') {
$formR['departement'] = 99; $formR['departement'] = 99;
@ -144,14 +144,14 @@ function filtreAdresse(&$formR, &$criteres, &$sphinx)
|| preg_match('/([0-9]{3})/', $adressePostale, $departements)) || preg_match('/([0-9]{3})/', $adressePostale, $departements))
{ {
$departement = $departements[1]; $departement = $departements[1];
if ($departement == '2A'){ if ($departement == '2A'){
$departement = 201; $departement = 201;
} }
if ($departement == '2B' ) { if ($departement == '2B' ) {
$departement = 202; $departement = 202;
} }
if (strstr($criteres, 'D') != false) { if (strstr($criteres, 'D') != false) {
debugln("filtre adr_dep='$departement'"); debugln("filtre adr_dep='$departement'");
$sphinx->SetFilter('adr_dep', array($departement)); $sphinx->SetFilter('adr_dep', array($departement));
@ -268,7 +268,7 @@ function filtreActif(&$formR, &$criteres, &$sphinx)
//Filtre sur les sieges //Filtre sur les sieges
function filtreSiege(&$formR, &$criteres, &$sphinx) function filtreSiege(&$formR, &$criteres, &$sphinx)
{ {
if ( array_key_exists('siege', $formR) && $formR['siege']===true ) { if ( array_key_exists('siege', $formR) && $formR['siege']==1 ) {
$sphinx->setFilter('siege', array(1)); $sphinx->setFilter('siege', array(1));
} }
} }
@ -283,15 +283,15 @@ function filtreSiege(&$formR, &$criteres, &$sphinx)
function premiereRequeteSphinx(&$sphinx, &$index, &$formR, &$criteres, function premiereRequeteSphinx(&$sphinx, &$index, &$formR, &$criteres,
&$criteresSphinx, &$form2crit, $sirenValide) &$criteresSphinx, &$form2crit, $sirenValide)
{ {
filtreSiege($formR, $criteres, $sphinx); filtreSiege ($formR, $criteres, $sphinx);
filtreActif($formR, $criteres, $sphinx); filtreActif ($formR, $criteres, $sphinx);
filtreSiret ($formR, $criteres, $sphinx); filtreSiret ($formR, $criteres, $sphinx);
filtreAdresse($formR, $criteres, $sphinx); filtreAdresse ($formR, $criteres, $sphinx);
filtreNumero ($formR, $criteres, $sphinx); filtreNumero ($formR, $criteres, $sphinx);
if ($sirenValide == true) { if ($sirenValide == true) {
$sphinx->SetFilter('sirenValide', array(1)); $sphinx->SetFilter('sirenValide', array(1));
} }
$requete_sphinx = ''; $requete_sphinx = '';
foreach ($formR as $label => $valeur) { foreach ($formR as $label => $valeur) {
@ -331,11 +331,11 @@ function requeteSphinx(&$sphinx, &$index, &$formR, &$criteres,
&$criteresSphinx, &$form2crit, $quorum_actif, $quorum, &$criteresSphinx, &$form2crit, $quorum_actif, $quorum,
$sirenValide) $sirenValide)
{ {
filtreSiege($formR, $criteres, $sphinx); filtreSiege ($formR, $criteres, $sphinx);
filtreActif($formR, $criteres, $sphinx); filtreActif ($formR, $criteres, $sphinx);
filtreSiret ($formR, $criteres, $sphinx); filtreSiret ($formR, $criteres, $sphinx);
filtreAdresse($formR, $criteres, $sphinx); filtreAdresse ($formR, $criteres, $sphinx);
filtreNumero ($formR, $criteres, $sphinx); filtreNumero ($formR, $criteres, $sphinx);
if ($sirenValide == true) { if ($sirenValide == true) {
$sphinx->SetFilter('sirenValide', array(1)); $sphinx->SetFilter('sirenValide', array(1));
} }
@ -732,16 +732,16 @@ function reponse(&$resSphinx, &$resDB, $criteres, $time, $formR, $form2crit,
$pertinence_generale = intval($pertinence_generale); $pertinence_generale = intval($pertinence_generale);
//print 'Pertinence generale: '.$pertinence_generale.'<br/>'; //print 'Pertinence generale: '.$pertinence_generale.'<br/>';
} }
if ( is_object($resDB) ) { if ( is_object($resDB) ) {
$resDB->data_seek(0); $resDB->data_seek(0);
for ($i = 0; $i < $resDB->num_rows; $i++) { for ($i = 0; $i < $resDB->num_rows; $i++) {
$ligne = $resDB->fetch_assoc(); $ligne = $resDB->fetch_assoc();
//file_put_contents('test.log', "\n".'i = '.$i.print_r($ligne,1), FILE_APPEND); //file_put_contents('test.log', "\n".'i = '.$i.print_r($ligne,1), FILE_APPEND);
$ret['reponses'][$i]['id'] = $ligne['id']; $ret['reponses'][$i]['id'] = $ligne['id'];
$pertinence = $pertinence_generale; $pertinence = $pertinence_generale;
if ($formR['type'] == 'ent') { if ($formR['type'] == 'ent') {
@ -777,7 +777,7 @@ function reponse(&$resSphinx, &$resDB, $criteres, $time, $formR, $form2crit,
$ret['reponses'][$i]['Actif'] = $ligne['actif']; $ret['reponses'][$i]['Actif'] = $ligne['actif'];
$ret['reponses'][$i]['NafEtab'] = $ligne['ape_etab']; $ret['reponses'][$i]['NafEtab'] = $ligne['ape_etab'];
$ret['reponses'][$i]['NafEnt'] = $ligne['ape_entrep']; $ret['reponses'][$i]['NafEnt'] = $ligne['ape_entrep'];
if ($formR['type']=='dir') { if ($formR['type']=='dir') {
// Dirigeant // Dirigeant
$ret['reponses'][$i]['DirRs'] = ''; $ret['reponses'][$i]['DirRs'] = '';
@ -799,7 +799,7 @@ function reponse(&$resSphinx, &$resDB, $criteres, $time, $formR, $form2crit,
} }
} }
} }
if ($formR['type'] == 'ent') { if ($formR['type'] == 'ent') {
$ret['pass'] = $resSphinx['pass']; $ret['pass'] = $resSphinx['pass'];
} }
@ -935,17 +935,17 @@ function rechercheDir(&$formR, $deb, $nbRep, $max)
$requeteDB .= ")"; $requeteDB .= ")";
//file_put_contents('test.log', $requeteDB); //file_put_contents('test.log', $requeteDB);
debugln(); debugln();
debugln("requeteDB='$requeteDB'"); debugln("requeteDB='$requeteDB'");
$resDB = $gDatabaseJO->query($requeteDB); $resDB = $gDatabaseJO->query($requeteDB);
// Reponse // Reponse
$ligneDir = array(); $ligneDir = array();
for ($i = 0; $i < $resDB->num_rows; $i++) { for ($i = 0; $i < $resDB->num_rows; $i++) {
$ligne = $resDB->fetch_assoc(); $ligne = $resDB->fetch_assoc();
$nom = $ligne['nom']; $nom = $ligne['nom'];
if ( $ligne['naissance_nom']!='' ) { if ( $ligne['naissance_nom']!='' ) {
$nom.= " nom d'usage ".$ligne['naissance_nom']; $nom.= " nom d'usage ".$ligne['naissance_nom'];
@ -960,7 +960,7 @@ function rechercheDir(&$formR, $deb, $nbRep, $max)
'naissance_lieu'=> $ligne['naissance_lieu'] 'naissance_lieu'=> $ligne['naissance_lieu']
); );
} }
debugln(); debugln();
debugln("requeteDB='$requeteDB'"); debugln("requeteDB='$requeteDB'");
@ -1090,7 +1090,7 @@ function rechercheAct($formR, $deb, $nbRep, $max)
$req = $gDatabaseJO->query($requette); $req = $gDatabaseJO->query($requette);
/*$requette2 ='SELECT id, CONCAT(siren,nic) AS siret, siren, nic, siege, '. /*$requette2 ='SELECT id, CONCAT(siren,nic) AS siret, siren, nic, siege, '.
'raisonSociale, sigle, enseigne, adr_num, adr_typeVoie, adr_libVoie, '. 'raisonSociale, sigle, enseigne, adr_num, adr_typeVoie, adr_libVoie, '.
'adr_comp, adr_cp, adr_ville, tel, fax, cj, actif, ape_etab, '. 'adr_comp, adr_cp, adr_ville, tel, fax, cj, actif, ape_etab, '.
@ -1226,8 +1226,8 @@ function rechercheEnt(&$formR, $deb, $nbRep, $max, $sirenValide = false)
$criteres = 'ITSEPDLVNR'; $criteres = 'ITSEPDLVNR';
} }
$total_premiere_requete = $resSphinx['total']; $total_premiere_requete = $resSphinx['total'];
if ($total_premiere_requete == 0 || if ($total_premiere_requete == 0 ||
$total_premiere_requete > 500) { // "huit a huit" donne 414 $total_premiere_requete > 500) { // "huit a huit" donne 414
$index = 'ent_mns'; $index = 'ent_mns';
@ -1280,6 +1280,8 @@ function rechercheEnt(&$formR, $deb, $nbRep, $max, $sirenValide = false)
} }
while ($pass > 0) { while ($pass > 0) {
filtreActif($formR, $criteres, $sphinx);
filtreSiege($formR, $criteres, $sphinx);
// Requete Sphinx // Requete Sphinx
$resSphinx = requeteSphinx($sphinx, $index, $formR, $criteres, $resSphinx = requeteSphinx($sphinx, $index, $formR, $criteres,
$criteresSphinx, $form2crit, $criteresSphinx, $form2crit,