/trunk/src/org/tela_botanica/client/vues/observation/ListeObservationVue.java |
---|
88,6 → 88,11 |
*/ |
private ColumnConfig ordreObservation; |
/** |
* Config de colonne |
*/ |
private ColumnConfig abondanceObservation; |
/** |
* Modele de colonnes |
*/ |
private ColumnModel modeleColonnes; |
158,7 → 163,7 |
bt = new BarrePaginationVue(this); |
bt.setLabelElement("Observations"); |
bt.setTaillePageParDefaut(20); |
bt.setIntervallesPages(new String[] {"400","200", "100" , "50" , "20", "10"}) ; |
bt.setIntervallesPages(new String[] {"1000","400","200","100","50","20","10"}) ; |
Toolbar barreActions = new Toolbar(); |
ToolbarButton publier = new ToolbarButton("Rendre publiques"); |
280,13 → 285,14 |
nomSaisiObservation = new ColumnConfig("Nom saisi", "nomSaisi_observation", 200, true, colRend); |
nomRetenuObservation = new ColumnConfig("Nom retenu", "nomRetenu_observation", 200, true, colRend); |
lieuObservation = new ColumnConfig("Lieu", "lieu_observation", 200, true, colRend); |
dateObservation = new ColumnConfig("Date", "date_observation", 120, true, dateRend); |
dateObservation = new ColumnConfig("Date", "date_observation", 70, true, dateRend); |
abondanceObservation = new ColumnConfig("Abondance", "abondance", 50, true, colRend); |
ordreObservation = new ColumnConfig("Ordre", "ordre_observation", 50, true, colRend); |
// on associe le modèle de colonnes |
ColumnConfig[] cm = {etatObservation, nomSaisiObservation, nomRetenuObservation, lieuObservation, dateObservation, ordreObservation}; |
ColumnConfig[] cm = {etatObservation, nomSaisiObservation, nomRetenuObservation, abondanceObservation, lieuObservation, dateObservation, ordreObservation}; |
modeleColonnes = new ColumnModel(cm); |
300,6 → 306,7 |
FieldDef defEtatObservation = new StringFieldDef("etat_observation"); |
FieldDef defNomSaisiObservation = new StringFieldDef("nomSaisi_observation"); |
FieldDef defNomRetenuObservation = new StringFieldDef("nomRetenu_observation"); |
FieldDef defAbondanceObservation = new IntegerFieldDef("abondance"); |
FieldDef defLieuObservation = new StringFieldDef("lieu_observation"); |
FieldDef defDateObservation = new StringFieldDef("date_observation"); |
FieldDef defOrdreObservation = new IntegerFieldDef("ordre_observation"); |
306,7 → 313,7 |
FieldDef[] defTab = { defEtatObservation, defNomSaisiObservation, defNomRetenuObservation, |
defLieuObservation, defDateObservation, defOrdreObservation }; |
defAbondanceObservation, defLieuObservation, defDateObservation, defOrdreObservation }; |
RecordDef rd = new RecordDef(defTab); |
st = new Store(rd); |
581,7 → 588,7 |
{ |
ListeObservation data = (ListeObservation) nouvelleDonnees ; |
Object[][] observationData = new Object[data.size()][7]; |
Object[][] observationData = new Object[data.size()][8]; |
int i = 0 ; |
if(data.size() == 0) |
598,11 → 605,11 |
observationData[i][0] = obs.getTransmis(); |
observationData[i][1] = obs.getNomSaisi(); |
observationData[i][2] = obs.getNomRetenu(); |
observationData[i][3] = Util.formaterLieu(obs, modeleLieu); |
observationData[i][4] = obs.getDate(); |
observationData[i][5] = obs.getNumeroOrdre(); |
observationData[i][6] = obs.getNumeroNomenclaturalSaisi(); |
observationData[i][3] = obs.getAbondance(); |
observationData[i][4] = Util.formaterLieu(obs, modeleLieu); |
observationData[i][5] = obs.getDate(); |
observationData[i][6] = obs.getNumeroOrdre(); |
observationData[i][7] = obs.getNumeroNomenclaturalSaisi(); |
i++ ; |
} |
611,6 → 618,7 |
FieldDef defEtatObservation = new StringFieldDef("etat_observation"); |
FieldDef defNomSaisiObservation = new StringFieldDef("nomSaisi_observation"); |
FieldDef defNomRetenuObservation = new StringFieldDef("nomRetenu_observation"); |
FieldDef defAbondanceObservation = new StringFieldDef("abondance"); |
FieldDef defLieuObservation = new StringFieldDef("lieu_observation"); |
FieldDef defDateObservation = new StringFieldDef("date_observation"); |
FieldDef defOrdreObservation = new IntegerFieldDef("ordre_observation"); |
621,7 → 629,7 |
// on associe le store |
FieldDef[] defTab = { defEtatObservation, defNomSaisiObservation, defNomRetenuObservation, |
FieldDef[] defTab = { defEtatObservation, defNomSaisiObservation, defNomRetenuObservation, defAbondanceObservation, |
defLieuObservation, defDateObservation, defOrdreObservation, defNumeroNomenclaturalSaisiObservation }; |
RecordDef rd = new RecordDef(defTab); |
935,6 → 943,7 |
FieldDef defEtatObservation = new StringFieldDef("etat_observation"); |
FieldDef defNomSaisiObservation = new StringFieldDef("nomSaisi_observation"); |
FieldDef defNomRetenuObservation = new StringFieldDef("nomRetenu_observation"); |
FieldDef defAbondanceObservation = new IntegerFieldDef("abondance"); |
FieldDef defLieuObservation = new StringFieldDef("lieu_observation"); |
FieldDef defDateObservation = new StringFieldDef("date_observation"); |
FieldDef defOrdreObservation = new IntegerFieldDef("ordre_observation"); |
943,7 → 952,7 |
FieldDef defNumeroNomenclaturalSaisiObservation = new StringFieldDef("numeroNomenclaturalSaisi_observation"); |
FieldDef[] defTab = { defEtatObservation, defNomSaisiObservation, defNomRetenuObservation, |
defLieuObservation, defDateObservation, defOrdreObservation }; |
defAbondanceObservation, defLieuObservation, defDateObservation, defOrdreObservation }; |
RecordDef rd = new RecordDef(defTab); |
st = new Store(rd); |
/trunk/src/org/tela_botanica/client/vues/observation/FormulaireSaisieObservationVue.java |
---|
3,6 → 3,7 |
// TODO Detecter redim et supprimer ajuster |
import java.util.Date; |
import java.util.HashMap; |
import java.util.Iterator; |
import org.tela_botanica.client.CarnetEnLigneMediateur; |
20,6 → 21,8 |
import org.tela_botanica.client.util.AutoCompletionRefComboBox; |
import org.tela_botanica.client.util.Util; |
import com.google.gwt.event.dom.client.KeyCodes; |
import com.google.gwt.event.dom.client.KeyEvent; |
import com.google.gwt.maps.client.geom.LatLng; |
import com.google.gwt.user.client.Timer; |
import com.google.gwt.user.client.Window; |
97,7 → 100,7 |
// Pour remise a zero partielle lors d'une validation |
private enum Champs { |
DATE, LIEUDIT, STATION, MILIEU, COMMENT, COMMUNE, ESPECE, TOUT, LATITUDE, LONGITUDE ; |
DATE, LIEUDIT, STATION, MILIEU, COMMENT, COMMUNE, ESPECE, TOUT, LATITUDE, LONGITUDE, ABONDANCE, CERTITUDE; |
@Override |
public String toString() { |
129,9 → 132,15 |
case LONGITUDE: |
return "longitude"; |
case ABONDANCE: |
return "abondance"; |
case CERTITUDE: |
return "certitude"; |
case TOUT: |
return "date, commune, lieu dit, station, milieu, espèce, commentaire, latitude, longitude"; |
return "date, commune, lieu dit, station, milieu, espèce, commentaire, latitude, longitude, abondance, certitude"; |
} |
return TOUT.toString(); |
} |
143,12 → 152,14 |
private boolean selectionCommune=false; |
private boolean selectionEspece=false; |
private boolean selectionAbondance = false; |
private boolean selectionCertitude = false; |
private boolean modification = false ; |
private Toolbar bt = null ; |
private final String VALEURS_MULTIPLES = "(Valeurs multiples)"; |
private final String modeleMessageModif = "commune:lieu-dit:station:milieu:latitude:longitude:date:espece:commentaire"; |
private final String modeleMessageModif = "commune:lieu-dit:station:milieu:latitude:longitude:date:espece:commentaire:abondance:certitude"; |
private boolean communeModifiee = false; |
private boolean lieuDitModifie = false; |
private boolean stationModifiee = false; |
156,8 → 167,9 |
private boolean dateModifiee = false; |
private boolean especeModifiee = false; |
private boolean commModifie = false; |
private boolean abondanceModifiee = false; |
private boolean certitudeModifiee = false; |
private final int KEY_ALT = 18; |
private final int KEY_BACKSPACE = 8; |
private final int KEY_CTRL = 17; |
223,8 → 235,12 |
private Timer tCoord; |
final String resultTplRefPerso = "<div class=\"search-item-commune\">{element_referentiel}</div>"; |
final String resultTplRefPerso = "<div class=\"search-item-commune\">{element_referentiel}</div>"; |
private ComboBox selecteurAbondance = null; |
private ComboBox selecteurCertitude = null; |
/** |
* Constructeur sans argument (privé car ne doit pas être utilisé) |
*/ |
458,6 → 474,26 |
panneauPremierColonne.add(espece, new AnchorLayoutData("95%")); |
selecteurAbondance = new ComboBox(); |
selecteurAbondance.setLabel("Abondance"); |
selecteurAbondance.setStore(getValeursAbondance()); |
selecteurAbondance.setDisplayField("label") ; |
selecteurAbondance.setValueField("valeur"); |
selecteurAbondance.setEditable(true); |
selecteurAbondance.setHideTrigger(false); |
selecteurAbondance.setForceSelection(false); |
panneauPremierColonne.add(selecteurAbondance, new AnchorLayoutData("50%")); |
selecteurCertitude = new ComboBox(); |
selecteurCertitude.setLabel("Certitude"); |
selecteurCertitude.setStore(getValeursCertitude()); |
selecteurCertitude.setDisplayField("label") ; |
selecteurCertitude.setValueField("valeur"); |
selecteurCertitude.setEditable(true); |
selecteurCertitude.setHideTrigger(false); |
selecteurCertitude.setForceSelection(false); |
panneauPremierColonne.add(selecteurCertitude, new AnchorLayoutData("50%")); |
lieudit = new AutoCompletionRefComboBox("Lieu-dit", "lieudit",observationMediateur,TypesReferentiels.REFERENTIEL_LIEU_DIT) { |
@Override |
571,14 → 607,35 |
}}); |
// on ajoute les listeners |
ajouterListeners() ; |
saisieTabindex(); |
} |
private Store getValeursAbondance() { |
Object[][] valeurs = {{"i : un seul individu","i"}, |
{"r : rare (quelques pieds)","r"}, |
{"+ : recouvrement R < 1%","+"}, |
{"1 : 1% < R < 5%","1"}, |
{"2 : 5% < R < 25%","2"}, |
{"3 : 25% < R < 50%","3"}, |
{"4 : 50% < R < 75%","4"}, |
{"5 : recouvrement R > 75%","5"} |
}; |
SimpleStore storeAbondance = new SimpleStore(new String[] {"label","valeur"},valeurs); |
storeAbondance.load(); |
return storeAbondance; |
} |
private Store getValeursCertitude() { |
Object[][] valeurs = {{"Certain","certain"}, |
{"Douteux","douteux"}, |
{"A déterminer","aDeterminer"} |
}; |
SimpleStore storeCertitude = new SimpleStore(new String[] {"label","valeur"},valeurs); |
storeCertitude.load(); |
return storeCertitude; |
} |
private void ajouterListeners() |
{ |
// Listener completion communne |
883,7 → 940,101 |
} |
} |
}); |
selecteurAbondance.addListener(new ComboBoxListenerAdapter() { |
@Override |
public void onSelect(ComboBox comboBox, Record record, int index) { |
selectionAbondance=true; |
abondanceModifiee = true; |
} |
}); |
selecteurAbondance.addKeyPressListener(new EventCallback() { |
@Override |
public void execute(EventObject e) { |
switch(e.getKey()) { |
case KEY_ALT: |
case KEY_CTRL: |
case KEY_DOWN: |
case KEY_END: |
case KEY_ESCAPE: |
case KEY_HOME: |
case KEY_LEFT: |
case KEY_PAGEDOWN: |
case KEY_PAGEUP: |
case KEY_RIGHT: |
case KEY_SHIFT: |
case KEY_TAB: |
case KEY_UP: |
break; |
case KEY_ENTER: |
if(!selectionAbondance) { |
validerSaisie(Champs.ABONDANCE); |
} else { |
selectionAbondance = false; |
} |
break; |
default: |
selecteurAbondance.setRawValue(selecteurAbondance.getRawValue()); |
selecteurAbondance.setValue(selecteurAbondance.getRawValue()); |
abondanceModifiee = true; |
selectionAbondance = false; |
break; |
} |
} |
}); |
selecteurCertitude.addListener(new ComboBoxListenerAdapter() { |
@Override |
public void onSelect(ComboBox comboBox, Record record, int index) { |
selectionCertitude=true; |
certitudeModifiee = true; |
} |
}); |
selecteurCertitude.addKeyPressListener(new EventCallback() { |
@Override |
public void execute(EventObject e) { |
switch(e.getKey()) { |
case KEY_ALT: |
case KEY_CTRL: |
case KEY_DOWN: |
case KEY_END: |
case KEY_ESCAPE: |
case KEY_HOME: |
case KEY_LEFT: |
case KEY_PAGEDOWN: |
case KEY_PAGEUP: |
case KEY_RIGHT: |
case KEY_SHIFT: |
case KEY_TAB: |
case KEY_UP: |
break; |
case KEY_ENTER: |
if(!selectionCertitude) { |
validerSaisie(Champs.CERTITUDE); |
} else { |
selectionCertitude = false; |
} |
break; |
default: |
selecteurCertitude.setRawValue(selecteurCertitude.getRawValue()); |
selecteurCertitude.setValue(selecteurCertitude.getRawValue()); |
certitudeModifiee = true; |
selectionCertitude = false; |
break; |
} |
} |
}); |
boutonOK.addListener(new ButtonListenerAdapter() { |
@Override |
1256,6 → 1407,9 |
obs.setLatitude(coords[0]); |
obs.setLongitude(coords[1]); |
obs.setAbondance(getAbondance()); |
obs.setCertitude(getCertitude()); |
observationMediateur.ajouterObservation(obs); |
} |
1300,6 → 1454,9 |
obs.setLatitude(coords[0]); |
obs.setLongitude(coords[1]); |
obs.setAbondance(getAbondance()); |
obs.setCertitude(getCertitude()); |
observationMediateur.modifierObservation(obs); |
selecteurMode.setValue("création"); |
1319,6 → 1476,8 |
String commM = null; |
String latM = null; |
String longM = null; |
String abondanceM = null; |
String certitudeM = null; |
String champs = modeleMessageModif; |
1403,6 → 1562,18 |
champs = champs.replaceAll(":longitude", ""); |
} |
if(abondanceModifiee && !selecteurAbondance.getRawValue().equals(VALEURS_MULTIPLES)) { |
abondanceM = getAbondance(); |
} else { |
champs = champs.replaceAll(":abondance", ""); |
} |
if(certitudeModifiee && !selecteurCertitude.getRawValue().equals(VALEURS_MULTIPLES)) { |
certitudeM = getCertitude(); |
} else { |
champs = champs.replaceAll(":certitude", ""); |
} |
champs = champs.replaceAll(":",", "); |
if(champs.startsWith(",")) { |
champs = champs.replaceFirst(",", ""); |
1417,6 → 1588,8 |
obs.setNumeroOrdre(numeroOrdre); |
obs.setLatitude(latM); |
obs.setLongitude(longM); |
obs.setAbondance(abondanceM); |
obs.setCertitude(certitudeM); |
if(Window.confirm(message)) { |
observationMediateur.modifierObservationEnMasse(obs); |
reinitialiserValeurModifiees(); |
1507,6 → 1680,12 |
latitude.setValue(obs.getLatitude()) ; |
longitude.setValue(obs.getLongitude()) ; |
} |
selecteurAbondance.getStore().load(); |
selecteurAbondance.setValue(obs.getAbondance()); |
selecteurCertitude.getStore().load(); |
selecteurCertitude.setValue(obs.getCertitude()); |
} |
1564,6 → 1743,14 |
afficherIndicationCommune(null); |
break; |
case ABONDANCE: |
selecteurAbondance.setValue(""); |
break; |
case CERTITUDE: |
selecteurCertitude.setValue(""); |
break; |
case TOUT: |
commune.reset(); |
date.reset() ; |
1576,6 → 1763,8 |
longitude.reset(); |
departement =""; |
espece.reset(); |
selecteurAbondance.clearValue(); |
selecteurCertitude.clearValue(); |
numeroNom = "" ; |
numeroOrdre = ""; |
afficherIndicationCommune(null); |
1657,6 → 1846,8 |
String notes = null; |
String lat = null; |
String lon = null; |
String abondance = null; |
String certitude = null; |
String ordreObs = ""; |
1672,6 → 1863,8 |
notes = comparerDifferencesChamps(notes, obsEnCours.getCommentaire()); |
lat = comparerDifferencesChamps(lat, obsEnCours.getLatitude()); |
lon = comparerDifferencesChamps(lon, obsEnCours.getLongitude()); |
abondance = comparerDifferencesChamps(abondance, obsEnCours.getAbondance()); |
certitude = comparerDifferencesChamps(certitude, obsEnCours.getCertitude()); |
ordreObs += obsEnCours.getNumeroOrdre()+","; |
} |
1680,8 → 1873,9 |
obs.setNumeroOrdre(ordreObs); |
obs.setLatitude(lat); |
obs.setLongitude(lon); |
rafraichir(obs, false); |
obs.setAbondance(abondance); |
obs.setCertitude(certitude); |
rafraichir(obs, false); |
} |
private String comparerDifferencesChamps(String valeurActuelle, String nouvelleValeur) { |
1700,8 → 1894,7 |
return retour; |
} |
private void reinitialiserValeurModifiees() { |
private void reinitialiserValeurModifiees() { |
communeModifiee = false; |
lieuDitModifie = false; |
stationModifiee = false; |
1711,6 → 1904,8 |
commModifie = false; |
latModifiee = false; |
longModifiee = false; |
abondanceModifiee = false; |
certitudeModifiee = false; |
} |
public void saisieTabindex() |
1739,8 → 1934,10 |
comment.setTabIndex(10); |
date.setTabIndex(11); |
espece.setTabIndex(12); |
boutonOK.setTabIndex(13); |
boutonAnnuler.setTabIndex(14); |
selecteurAbondance.setTabIndex(13); |
selecteurCertitude.setTabIndex(14); |
boutonOK.setTabIndex(15); |
boutonAnnuler.setTabIndex(16); |
} |
1847,6 → 2044,36 |
public String getCommuneSansDepartement() { |
return Util.supprimerNumDepartementChaineLocalite(getCommune()); |
} |
//TODO fusionner les deux fonctions et les objets qu'elles utilisent |
// car leur code est à 99% identique |
public String getAbondance() { |
String valeurAbondance = selecteurAbondance.getValue(); |
String valeurAbondanceBrute = selecteurAbondance.getRawValue(); |
// Test idiot qui permet de savoir si l'on utilise la valeur saisie directement ou bien la valeur |
// selectionnee car lors du setValue sur le keypress, gwtext ne prends pas en compte le dernier |
// caractère |
if(valeurAbondance.equals(valeurAbondanceBrute.substring(0, valeurAbondanceBrute.length() -1))) { |
valeurAbondance = selecteurAbondance.getRawValue(); |
} |
return valeurAbondance; |
} |
public String getCertitude() { |
String valeurCertitude = selecteurCertitude.getValue(); |
String valeurCertitudeBrute = selecteurCertitude.getRawValue(); |
// Test idiot qui permet de savoir si l'on utilise la valeur saisie directement ou bien la valeur |
// selectionnee car lors du setValue sur le keypress, gwtext ne prends pas en compte le dernier |
// caractère |
if(valeurCertitude.equals(valeurCertitudeBrute.substring(0, valeurCertitudeBrute.length() -1))) { |
valeurCertitude = selecteurCertitude.getRawValue(); |
} |
return valeurCertitude; |
} |
public boolean communeInitialisee() { |
return communeModifiee; |
/trunk/src/org/tela_botanica/client/vues/EtatConnexionVue.java |
---|
57,7 → 57,7 |
private String labelEtatConnexion = null; |
private String liens = "<div id=\"liensExt\"><a href=\"#\" id=\"lienAide\">Aide</a> <a href=\"#\" id=\"lienBugs\">Bugs</a> <a href=\"mailto:"+Configuration.getEmailContact()+"\" id=\"nousContacter\"> Nous contacter</a></div>" ; |
private String liens = "<div id=\"liensExt\"><a href=\"#\" id=\"lienAide\">Aide</a></div>" ; |
/** |
* Booleen indiquant si utilisateur connecte |
121,43 → 121,6 |
} |
}); |
} |
ExtElement lienBugs = Ext.get("lienBugs"); |
if(lienBugs != null) |
{ |
lienBugs.removeAllListeners(); |
lienBugs.addListener("click", new EventCallback() { |
@Override |
public void execute(EventObject e) { |
String bugsURL = Configuration.getSuiviBugUrl() ; |
Window.open(bugsURL, "", "") ; |
} |
}); |
} |
else |
{ |
addListener(new ContainerListenerAdapter() { |
@Override |
public void onAfterLayout(Container c) { |
ExtElement lienBugs = Ext.get("lienBugs"); |
if(lienBugs != null) |
{ |
lienBugs.removeAllListeners(); |
lienBugs.addListener("click", new EventCallback() { |
@Override |
public void execute(EventObject e) { |
String bugsURL = Configuration.getSuiviBugUrl() ; |
Window.open(bugsURL, "", "") ; |
} |
}); |
} |
} |
}); |
} |
} |
250,43 → 213,7 |
}); |
} |
} |
ExtElement lienBugs = Ext.get("lienBugs"); |
if(lienBugs != null) |
{ |
lienBugs.removeAllListeners(); |
lienBugs.addListener("click", new EventCallback() { |
@Override |
public void execute(EventObject e) { |
String bugsURL = Configuration.getSuiviBugUrl() ; |
Window.open(bugsURL, "", "") ; |
} |
}); |
} |
else |
{ |
addListener(new ContainerListenerAdapter() { |
@Override |
public void onAfterLayout(Container c) { |
ExtElement lienBugs = Ext.get("lienBugs"); |
if(lienBugs != null) |
{ |
lienBugs.removeAllListeners(); |
lienBugs.addListener("click", new EventCallback() { |
@Override |
public void execute(EventObject e) { |
String bugsURL = Configuration.getSuiviBugUrl() ; |
Window.open(bugsURL, "", "") ; |
} |
}); |
} |
} |
}); |
} |
ExtElement lienAide = Ext.get("lienAide"); |
if(lienAide != null) |
{ |
/trunk/src/org/tela_botanica/client/modeles/dao/ObservationAsynchroneDAO.java |
---|
63,7 → 63,9 |
+"&milieu="+URL.encodeComponent(obs.getMilieu()) |
+"&commentaire="+obs.getCommentaire() |
+"&latitude="+URL.encodeComponent(""+obs.getLatitude()) |
+"&longitude="+URL.encodeComponent(""+obs.getLongitude());; |
+"&longitude="+URL.encodeComponent(""+obs.getLongitude()) |
+"&abondance="+URL.encodeComponent(""+obs.getAbondance()) |
+"&certitude="+URL.encodeComponent(""+obs.getCertitude()); |
try { |
rb.sendRequest(postData, new RequestCallback() { |
111,8 → 113,9 |
+"&milieu="+ URL.encodeComponent(obs.getMilieu()) |
+"&commentaire="+obs.getCommentaire() |
+"&latitude="+URL.encodeComponent(""+obs.getLatitude()) |
+"&longitude="+URL.encodeComponent(""+obs.getLongitude()); |
+"&longitude="+URL.encodeComponent(""+obs.getLongitude()) |
+"&abondance="+URL.encodeComponent(""+obs.getAbondance()) |
+"&certitude="+URL.encodeComponent(""+obs.getCertitude()); |
try { |
rb.sendRequest(postData, new RequestCallback() { |
/trunk/src/org/tela_botanica/client/modeles/dao/ListeObservationAsynchroneDAO.java |
---|
84,8 → 84,7 |
@Override |
public void onError(final Request request, final Throwable exception) { |
// TODO Auto-generated method stub |
// TODO Auto-generated method stub |
} |
@Override |
113,8 → 112,7 |
observationData.put(obs.getNumeroOrdre(),obs); |
} |
} |
} else { |
} else { |
observationData = new ListeObservation(0) ; |
} |
135,78 → 133,80 |
public void modifierEnMasse(final Rafraichissable r, String identifiant, |
final Observation obs) { |
RequestBuilder rb = new RequestBuilder(RequestBuilder.POST,Configuration.getServiceBaseUrl()+ "/InventoryObservationList/" + identifiant + "/" + obs.getNumeroOrdre()+ "/") ; |
String postData = "ce_utilisateur=" |
+ identifiant ; |
if(obs.getNomSaisi() != null) { |
postData += "&nom_sel=" + URL.encodeComponent(obs.getNomSaisi()); |
} |
if(obs.getNumeroNomenclaturalSaisi() != null) { |
postData += "&nom_sel_nn=" + obs.getNumeroNomenclaturalSaisi(); |
} |
if(obs.getIdentifiantLocalite() != null) { |
postData += "&ce_zone_geo=" + obs.getIdentifiantLocalite(); |
} |
if(obs.getLocalite() != null) { |
postData += "&zone_geo=" + URL.encodeComponent(obs.getLocalite()); |
} |
if(obs.getDate() != null) { |
postData += "&date_observation=" + obs.getDate(); |
} |
if(obs.getLieudit() != null) { |
postData += "&lieudit="+ URL.encodeComponent(obs.getLieudit()); |
} |
if(obs.getStation() != null) { |
postData += "&station="+ URL.encodeComponent(obs.getStation()); |
} |
if(obs.getMilieu() != null) { |
postData += "&milieu="+ URL.encodeComponent(obs.getMilieu()); |
} |
if(obs.getCommentaire() != null) { |
postData += "&commentaire="+obs.getCommentaire(); |
} |
if(obs.getLatitude() != null ) { |
postData += "&latitude="+URL.encodeComponent(""+obs.getLatitude()); |
} |
if(obs.getLongitude() != null) { |
postData += "&longitude="+URL.encodeComponent(""+obs.getLongitude()); |
} |
RequestBuilder rb = new RequestBuilder(RequestBuilder.POST,Configuration.getServiceBaseUrl()+ "/InventoryObservationList/" + identifiant + "/" + obs.getNumeroOrdre()+ "/") ; |
String postData = "ce_utilisateur=" |
+ identifiant ; |
if(obs.getNomSaisi() != null) { |
postData += "&nom_sel=" + URL.encodeComponent(obs.getNomSaisi()); |
} |
if(obs.getNumeroNomenclaturalSaisi() != null) { |
postData += "&nom_sel_nn=" + obs.getNumeroNomenclaturalSaisi(); |
} |
if(obs.getIdentifiantLocalite() != null) { |
postData += "&ce_zone_geo=" + obs.getIdentifiantLocalite(); |
} |
if(obs.getLocalite() != null) { |
postData += "&zone_geo=" + URL.encodeComponent(obs.getLocalite()); |
} |
if(obs.getDate() != null) { |
postData += "&date_observation=" + obs.getDate(); |
} |
if(obs.getLieudit() != null) { |
postData += "&lieudit="+ URL.encodeComponent(obs.getLieudit()); |
} |
if(obs.getStation() != null) { |
postData += "&station="+ URL.encodeComponent(obs.getStation()); |
} |
if(obs.getMilieu() != null) { |
postData += "&milieu="+ URL.encodeComponent(obs.getMilieu()); |
} |
if(obs.getCommentaire() != null) { |
postData += "&commentaire="+obs.getCommentaire(); |
} |
if(obs.getLatitude() != null ) { |
postData += "&latitude="+URL.encodeComponent(""+obs.getLatitude()); |
} |
if(obs.getLongitude() != null) { |
postData += "&longitude="+URL.encodeComponent(""+obs.getLongitude()); |
} |
if(obs.getAbondance() != null) { |
postData += "&abondance="+URL.encodeComponent(""+obs.getAbondance()); |
} |
if(obs.getCertitude() != null) { |
postData += "&certitude="+URL.encodeComponent(""+obs.getCertitude()); |
} |
try { |
rb.sendRequest(postData, new RequestCallback() { |
try { |
rb.sendRequest(postData, new RequestCallback() { |
@Override |
public void onError(Request request, Throwable exception) { |
// TODO Auto-generated method stub |
} |
@Override |
public void onError(Request request, Throwable exception) { |
// TODO Auto-generated method stub |
} |
@Override |
public void onResponseReceived(Request request, |
Response response) { |
if(observationModele != null) { |
observationModele.obtenirListeObservation(r); |
} |
@Override |
public void onResponseReceived(Request request, |
Response response) { |
if(observationModele != null) { |
observationModele.obtenirListeObservation(r); |
} |
}) ; |
} catch (RequestException e) { |
} |
} |
}) ; |
} catch (RequestException e) { |
} |
} |
/** |
227,7 → 227,6 |
+ identifiant |
+ "/" |
+ numerosOrdre); |
try { |
rb.sendRequest(postData, new RequestCallback() { |
250,9 → 249,7 |
return ; |
} |
} |
}); |
r.rafraichir("OK", true) ; |
} catch (RequestException e) { |
259,7 → 256,6 |
// TODO Auto-generated catch block |
e.printStackTrace(); |
} |
} |
} |
/trunk/src/org/tela_botanica/client/modeles/objets/Observation.java |
---|
27,6 → 27,8 |
private String latitude=null; |
private String longitude=null; |
private String referentielGeo=null; |
private String abondance=null; |
private String certitude=null; |
public Observation() { |
} |
102,7 → 104,8 |
this.latitude = Util.getValeurJsonOuVide(observation,"latitude"); |
this.longitude = Util.getValeurJsonOuVide(observation,"longitude"); |
this.motsCles = Util.getValeurJsonOuVide(observation,"mots_cles"); |
this.abondance = Util.getValeurJsonOuVide(observation,"abondance"); |
this.certitude = Util.getValeurJsonOuVide(observation,"certitude"); |
} |
/** |
245,6 → 248,14 |
return this.id; |
} |
public String getAbondance() { |
return this.abondance; |
} |
public String getCertitude() { |
return this.certitude; |
} |
public void setMotsCles(String motsCles) { |
this.motsCles = motsCles; |
} |
265,10 → 276,15 |
this.referentielGeo = refGeo; |
} |
public void setId(String id) { |
this.id = id; |
} |
public void setAbondance(String abondance) { |
this.abondance = abondance; |
} |
public void setCertitude(String certitude) { |
this.certitude = certitude; |
} |
} |
/trunk/src/org/tela_botanica/client/modeles/objets/ListeObservation.java |
---|
2,18 → 2,18 |
import java.util.LinkedHashMap; |
/** |
* table de hachage composée d'observation, renvoyé par les objets de type DAO |
* pour les images. |
* La clé est l'identifiant de l'observation dans la base de données, et la valeur un objet |
* de type Observation |
* pour les images. La clé est l'identifiant de l'observation dans la base de |
* données, et la valeur un objet de type Observation |
* |
* L'uitilisation de LinkedHashMap permet de conserver l'ordre d'insertion des elements à la lecture |
* L'uitilisation de LinkedHashMap permet de conserver l'ordre d'insertion des |
* elements à la lecture |
* |
* @author david delon |
* |
*/ |
public class ListeObservation extends LinkedHashMap<String, Observation>{ |
public class ListeObservation extends LinkedHashMap<String, Observation> { |
/** |
* |
*/ |
20,42 → 20,40 |
private static final long serialVersionUID = 2715320270773281540L; |
/* |
* Constructeur sans paramètres |
* Constructeur sans paramètres |
*/ |
public ListeObservation() |
{ |
public ListeObservation() { |
super(); |
} |
/** |
* Constructeur avec paramètre |
* @param taille la taille de la table de hachage |
* |
* @param taille |
* la taille de la table de hachage |
*/ |
public ListeObservation(int taille) |
{ |
public ListeObservation(int taille) { |
super(taille); |
} |
/** |
* Constructeur avec paramètre |
* @param ic un tableau d'ImageCarnet |
* |
* @param ic |
* un tableau d'ImageCarnet |
*/ |
public ListeObservation(Observation[] obs) |
{ |
super() ; |
for (int i = 0; i < obs.length; i++) |
{ |
if(obs[i] != null && obs[i] instanceof Observation) |
{ |
this.put(obs[i].getNumeroOrdre(),obs[i]); |
public ListeObservation(Observation[] obs) { |
super(); |
for (int i = 0; i < obs.length; i++) { |
if (obs[i] != null && obs[i] instanceof Observation) { |
this.put(obs[i].getNumeroOrdre(), obs[i]); |
} |
} |
} |
public void ajouterObservation(Observation obs) { |
if(obs != null) |
{ |
this.put(obs.getNumeroOrdre(),obs); |
if (obs != null) { |
this.put(obs.getNumeroOrdre(), obs); |
} |
} |
/trunk/src/org/tela_botanica/client/observation/ObservationMediateur.java |
---|
387,13 → 387,9 |
// ACTIONS a entreprendre lors d'un evenement particulier |
/** |
* Lors du raffraichissement de la liste d'observation |
*/ |
public void onRafraichissementListeObservations() { |
carnetEnLigneMediateur.donneesObsVersImages(listeObservation.getCacheListeObservation()); |
443,12 → 439,14 |
if(details.isVisible()) { |
// Affichage de la carte de repartition correspondante |
String numeroNomenclaturalSaisiObservation = obs.getNumeroNomenclaturalRetenu() ; |
observationModele.obtenirImageInformationRepartition(informationRepartitionVue,numeroNomenclaturalSaisiObservation) ; |
liExtVue.rafraichir(numeroNomenclaturalSaisiObservation, false); |
observationModele.obtenirImageGenerique(imageGeneriqueVue,numeroNomenclaturalSaisiObservation) ; |
observationModele.obtenirLiaisonImage(mvz, obs.getId()) ; |
if(numeroNomenclaturalSaisiObservation != null && !numeroNomenclaturalSaisiObservation.isEmpty()) { |
observationModele.obtenirImageInformationRepartition(informationRepartitionVue,numeroNomenclaturalSaisiObservation) ; |
liExtVue.rafraichir(numeroNomenclaturalSaisiObservation, false); |
observationModele.obtenirImageGenerique(imageGeneriqueVue,numeroNomenclaturalSaisiObservation) ; |
observationModele.obtenirLiaisonImage(mvz, obs.getId()) ; |
} |
} |
filtres.getArbreMotsClesObservationVue().rafraichir(obs.getMotsCles(), false); |
} |
583,9 → 581,6 |
} |
// D du CRUD |
/** |
* TODO : afficher un message du type "observation modifie". |
* Lance la modification d'une observation |
/trunk/src/org/tela_botanica/client/observation/ObservationModele.java |
---|
181,7 → 181,6 |
* @param r |
* @param critere |
*/ |
public void obtenirListeReferentielPerso(Rafraichissable r, TypesReferentiels referentiel, String critere) { |
if (refPersoDAO==null) { |
197,8 → 196,7 |
* Obtenir une liste de nom scientifique de plante |
* @param r |
* @param critere |
*/ |
*/ |
public void obtenirListeReferentielNom(Rafraichissable r, String critere) { |
if (nomDAO==null) { |