Line 149... |
Line 149... |
149 |
case 'inferieurs' :
|
149 |
case 'inferieurs' :
|
150 |
$rel = 'recupererIdInf';
|
150 |
$rel = 'recupererIdInf';
|
151 |
$this->format_reponse .= '/inferieurs';
|
151 |
$this->format_reponse .= '/inferieurs';
|
152 |
$this->traiterRessourceIdRelationInfSup($rel);
|
152 |
$this->traiterRessourceIdRelationInfSup($rel);
|
153 |
break;
|
153 |
break;
|
- |
|
154 |
case 'hierarchie' :
|
- |
|
155 |
$rel = 'recupererIdHierarchie';
|
- |
|
156 |
$this->format_reponse .= '/hierarchie';
|
- |
|
157 |
$this->traiterRessourceIdRelationHierarchie($rel);
|
- |
|
158 |
break;
|
154 |
default :
|
159 |
default :
|
155 |
$e = 'Erreur dans votre requête </br> Ressources disponibles : <br/>
|
160 |
$e = 'Erreur dans votre requête </br> Ressources disponibles : <br/>
|
156 |
<li> taxons/#id/relations </li><li> #id/relations/inferieurs </li>
|
161 |
<li> taxons/#id/relations </li><li> #id/relations/inferieurs </li>
|
157 |
<li> #id/relations/superieurs </li>';
|
162 |
<li> #id/relations/superieurs </li>';
|
158 |
$this->renvoyerErreur(RestServeur::HTTP_CODE_MAUVAISE_REQUETE, $e);
|
163 |
$this->renvoyerErreur(RestServeur::HTTP_CODE_MAUVAISE_REQUETE, $e);
|
Line 179... |
Line 184... |
179 |
$this->corps_http = json_encode($res);
|
184 |
$this->corps_http = json_encode($res);
|
180 |
$this->entete_http = RestServeur::HTTP_CODE_OK;
|
185 |
$this->entete_http = RestServeur::HTTP_CODE_OK;
|
181 |
}
|
186 |
}
|
182 |
}
|
187 |
}
|
Line -... |
Line 188... |
- |
|
188 |
|
- |
|
189 |
public function traiterRessourceIdRelationHierarchie($rel) {
|
- |
|
190 |
//Appel de la fct récupérerIdSup ou recupererIdInf : retourne les num_nom des noms inferieurs ou superieurs
|
- |
|
191 |
$res_relation = $this->$rel();
|
- |
|
192 |
//analyse du résultat retourné par la requete de recherche des identifiants correspondant aux taxons inf|sup :
|
- |
|
193 |
if ($res_relation == '') {
|
- |
|
194 |
//dans le cas ou la requete comporte des erreurs
|
- |
|
195 |
$e = 'Fct traiterRessourceIdRelationInfSup : La requête forme comporte une erreur!';
|
- |
|
196 |
$this->renvoyerErreur(RestServeur::HTTP_CODE_RESSOURCE_INTROUVABLE, $e);
|
- |
|
197 |
} elseif ($res_relation) {
|
- |
|
198 |
//dans le cas ou une ou plusieurs relations est retournée, on récupère les identifiants ss la forme (id, id, id)
|
- |
|
199 |
foreach ($res_relation as $ligne) $res[] = $ligne['num_nom'];
|
- |
|
200 |
$res = implode(',',$res);
|
- |
|
201 |
$this->requete_condition[0] = "num_nom IN ($res)";
|
- |
|
202 |
$this->requete_champ .= ', rang, num_tax_sup ';
|
- |
|
203 |
} else { //dans le cas ou aucune relation n'existe
|
- |
|
204 |
$res = array($this->num_nom_taxon => null);
|
- |
|
205 |
$this->corps_http = json_encode($res);
|
- |
|
206 |
$this->entete_http = RestServeur::HTTP_CODE_OK;
|
- |
|
207 |
}
|
- |
|
208 |
}
|
- |
|
209 |
|
- |
|
210 |
public function recupererIdHierarchie() {
|
- |
|
211 |
$req_relation = 'SELECT num_nom FROM '.$this->table.' '.
|
- |
|
212 |
' WHERE hierarchie LIKE CONCAT('.
|
- |
|
213 |
'(SELECT hierarchie FROM '.
|
- |
|
214 |
$this->table.' '.
|
- |
|
215 |
'WHERE num_nom = '.$this->getBdd()->proteger($this->num_nom_taxon).')'.
|
- |
|
216 |
', '.$this->getBdd()->proteger($this->num_nom_taxon.'-%').
|
- |
|
217 |
')';
|
- |
|
218 |
$res_relation = $this->getBdd()->recupererTous($req_relation);
|
- |
|
219 |
return $res_relation;
|
- |
|
220 |
}
|
183 |
|
221 |
|
184 |
public function recupererIdInf() {
|
222 |
public function recupererIdInf() {
|
185 |
//SELECT num_nom FROM bfdtx_v2_00 WHERE num_tax_sup = (SELECT num_nom FROM bdtfx_v2_00 WHERE num_nom = X);
|
223 |
//SELECT num_nom FROM bfdtx_v2_00 WHERE num_tax_sup = (SELECT num_nom FROM bdtfx_v2_00 WHERE num_nom = X);
|
186 |
$req_relation = 'SELECT num_nom FROM '.$this->table
|
224 |
$req_relation = 'SELECT num_nom FROM '.$this->table
|
187 |
.' WHERE num_tax_sup = (SELECT num_nom FROM '
|
225 |
.' WHERE num_tax_sup = (SELECT num_nom FROM '
|
Line 284... |
Line 322... |
284 |
$reponse = $this->formaterIdSuperieur($resultat, $version);
|
322 |
$reponse = $this->formaterIdSuperieur($resultat, $version);
|
285 |
break;
|
323 |
break;
|
286 |
case 'taxons/id/relations/inferieurs' :
|
324 |
case 'taxons/id/relations/inferieurs' :
|
287 |
$reponse = $this->formaterIdInferieur($resultat);
|
325 |
$reponse = $this->formaterIdInferieur($resultat);
|
288 |
break;
|
326 |
break;
|
- |
|
327 |
case 'taxons/id/relations/hierarchie' :
|
- |
|
328 |
// le formatage de la hiérarchie est identique aux relations inférieures
|
- |
|
329 |
$reponse = $this->formaterIdInferieur($resultat);
|
- |
|
330 |
break;
|
289 |
case 'taxons/stats/annees' : //ds CommunNomsTaxons
|
331 |
case 'taxons/stats/annees' : //ds CommunNomsTaxons
|
290 |
$reponse = $this->formaterStatsAnnee($resultat);
|
332 |
$reponse = $this->formaterStatsAnnee($resultat);
|
291 |
break;
|
333 |
break;
|
292 |
case 'taxons/stats/rangs' ://ds CommunNomsTaxons
|
334 |
case 'taxons/stats/rangs' ://ds CommunNomsTaxons
|
293 |
$reponse = $this->formaterStatsRang($resultat);
|
335 |
$reponse = $this->formaterStatsRang($resultat);
|