Rev 2033 | Blame | Last modification | View Log | RSS feed
package org.tela_botanica.client.modeles.objets;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import com.gwtext.client.data.FieldDef;
import com.gwtext.client.data.IntegerFieldDef;
import com.gwtext.client.data.SimpleStore;
import com.gwtext.client.data.Store;
import com.gwtext.client.data.StringFieldDef;
public class Ontologies {
//TODO: extraire toutes ces valeurs dans des fichiers de configuration
// ou bien via l'appel d'un web service spécialisé.
private static HashMap<String, String> valeursCertitude = null;
private static List<InfosReferentielNom> listeReferentielsNoms = null;
public static Store getValeursCertitude() {
Object[][] valeurs = {{"Certaine","certain"},
{"Douteuse","douteux"},
{"A déterminer","aDeterminer"}
};
SimpleStore storeCertitude = new SimpleStore(new String[] {"label","valeur"},valeurs);
storeCertitude.load();
return storeCertitude;
}
public static Store getValeursAbondance() {
Object[][] valeurs = {
{"5 : recouvrement R > 75%","5"},
{"4 : 50% < R < 75%","4"},
{"3 : 25% < R < 50%","3"},
{"2 : 5% < R < 25%","2"},
{"1 : 1% < R < 5%","1"},
{"+ : recouvrement R < 1%","+"},
{"r : rare (quelques pieds)","r"},
{"i : un seul individu","i"},
{"1-5 individus","1-5"},
{"5-10 individus","5-10"},
{"10-50 individus","10-50"},
{"50-100 individus","50-100"},
{"100-500 individus","100-500"},
{">500 individus",">500"},
{"E : exceptionnel","E"},
{"RR : très rare","RR"},
{"R : rare","R"},
{"AR : assez rare","AR"},
{"PC : peu commun","PC"},
{"AC : assez commun","AC"},
{"C : commun","C"},
{"CC : très commun","CC"}
};
SimpleStore storeAbondance = new SimpleStore(new String[] {"label","valeur"},valeurs);
storeAbondance.load();
return storeAbondance;
}
public static String getCorrespondanceCertitude(String cle) {
if(valeursCertitude == null) {
valeursCertitude = new HashMap<String, String>();
valeursCertitude.put("certain", "Certaine");
valeursCertitude.put("douteux", "Douteuse");
valeursCertitude.put("aDeterminer", "A déterminer");
}
String valeur = valeursCertitude.get(cle);
return valeur == null ? cle : valeur;
}
public static Store getValeursReferentiel() {
List<InfosReferentielNom> listeReferentiels = Configuration.getReferentielsDispos();
Object[][] valeurs = new Object[listeReferentiels.size()][2];
int i = 0;
for (Iterator<InfosReferentielNom> iterator = listeReferentiels.iterator(); iterator
.hasNext();) {
InfosReferentielNom infosReferentielNom = iterator.next();
String[] valeur = {infosReferentielNom.getIntitule(), infosReferentielNom.getCode()};
valeurs[i] = valeur;
i++;
}
SimpleStore storeReferentiels = new SimpleStore(new String[] {"label","valeur"},valeurs);
storeReferentiels.load();
return storeReferentiels;
}
public static InfosReferentielNom getInfosReferentielNomParCode(String code) {
InfosReferentielNom infos = null;
List<InfosReferentielNom> listeReferentiels = Configuration.getReferentielsDispos();
for (Iterator<InfosReferentielNom> iterator = listeReferentiels.iterator(); iterator
.hasNext();) {
InfosReferentielNom infosReferentielNom = iterator.next();
if(infosReferentielNom.getCode().equals(code)) {
infos = infosReferentielNom;
break;
}
}
return infos;
}
public static Store getValeursPhenologie() {
Object[][] valeurs = {
{"00-09: germination, développement des bourgeons", "00-09"},
{"10-19: développement des feuilles", "10-19"},
{"11: par ex, environ 10% des feuilles épanouies", "11"},
{"15: par ex, environ 50% des feuilles épanouies", "15"},
{"20-29: formation de pousses latérales, tallage", "20-29"},
{"30-39: développement des tiges, croissance des rosettes", "30-39"},
{"40-49: développement des organes de propagation végétative", "40-49"},
{"50-59: apparition de l'inflorescence, épiaison", "50-59"},
{"60-69: floraison", "60-69"},
{"61 : par ex, environ 10% des fleurs épanouies", "61"},
{"65 : par ex, environ 50% des fleurs épanouies", "65"},
{"70-79: fructification", "70-79"},
{"80-89: maturité des fruits et des graines", "80-89"},
{"85: par ex, 50% des fruits matures", "85"},
{"90-99: sénescence et dormance", "90-99"},
{"91: par ex, environ 10% des feuilles jaunes", "91"},
{"95: par ex, environ 50% des feuilles jaunes", "95"}
};
SimpleStore storeAbondance = new SimpleStore(new String[] {"label","valeur"},valeurs);
storeAbondance.load();
return storeAbondance;
}
public static HashMap<String, String> getCorrespondanceGrilleObservationChampsTri() {
HashMap<String, String> correspondances = new HashMap<String, String>();
correspondances.put("etat_observation", "transmission");
correspondances.put("referentiel_taxo_observation", "nom_referentiel");
correspondances.put("nomSaisi_observation", "nom_sel");
correspondances.put("certitude", "certitude");
correspondances.put("nomRetenu_observation", "nom_ret");
correspondances.put("famille_observation", "famille");
correspondances.put("abondance", "abondance");
correspondances.put("phenologie", "phenologie");
correspondances.put("etat_observation", "transmission");
correspondances.put("lieu_observation", "ce_zone_geo");
correspondances.put("altitude_observation", "altitude");
correspondances.put("date_observation", "date_observation");
correspondances.put("ordre_observation", "ordre");
return correspondances;
}
}