2,6 → 2,7 |
|
// TODO Detecter redim et supprimer ajuster |
|
import java.util.Date; |
import java.util.Iterator; |
|
import org.tela_botanica.client.interfaces.Rafraichissable; |
13,6 → 14,7 |
import org.tela_botanica.client.modeles.ReferentielNom; |
import org.tela_botanica.client.observation.ObservationMediateur; |
|
import com.google.gwt.core.client.JavaScriptObject; |
import com.google.gwt.user.client.Window; |
import com.gwtext.client.core.EventCallback; |
import com.gwtext.client.core.EventObject; |
28,12 → 30,16 |
import com.gwtext.client.data.StringFieldDef; |
import com.gwtext.client.widgets.BoxComponent; |
import com.gwtext.client.widgets.Button; |
import com.gwtext.client.widgets.Component; |
import com.gwtext.client.widgets.Container; |
import com.gwtext.client.widgets.DatePicker; |
import com.gwtext.client.widgets.Panel; |
import com.gwtext.client.widgets.Toolbar; |
import com.gwtext.client.widgets.event.BoxComponentListenerAdapter; |
import com.gwtext.client.widgets.event.ButtonListenerAdapter; |
import com.gwtext.client.widgets.event.ContainerListenerAdapter; |
import com.gwtext.client.widgets.event.DatePickerListener; |
import com.gwtext.client.widgets.event.DatePickerListenerAdapter; |
import com.gwtext.client.widgets.event.PanelListenerAdapter; |
import com.gwtext.client.widgets.form.ComboBox; |
import com.gwtext.client.widgets.form.DateField; |
123,10 → 129,10 |
private Toolbar bt = null ; |
|
private final String VALEURS_MULTIPLES = "(Valeurs multiples)"; |
private final String modeleMessageModif = "commune lieu dit station milieu date espece commentaire"; |
private final String modeleMessageModif = "commune:lieu-dit:station:milieu:date:espece:commentaire"; |
private boolean communeModifiee = false; |
private boolean LieuDitModifie = false; |
private boolean StationModifiee = false; |
private boolean lieuDitModifie = false; |
private boolean stationModifiee = false; |
private boolean milieuModifie = false; |
private boolean dateModifiee = false; |
private boolean especeModifiee = false; |
423,30 → 429,71 |
|
public void execute(EventObject e) { |
// TODO Auto-generated method stub |
dateModifiee = true; |
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: |
if(date.getRawValue().equals(VALEURS_MULTIPLES)) { |
date.clearInvalid(); |
} |
case KEY_UP: |
|
break; |
|
case KEY_ENTER: |
validerSaisie(Champs.DATE); |
case KEY_ENTER: |
validerSaisie(Champs.DATE); |
break; |
|
default: |
dateModifiee = true; |
} |
} |
}); |
|
date.addListener(new DatePickerListenerAdapter() { |
|
public void onSelect(DatePicker dataPicker, Date date) { |
dateModifiee = true; |
} |
}); |
|
station.addKeyPressListener(new EventCallback() { |
|
public void execute(EventObject e) { |
// TODO Auto-generated method stub |
StationModifiee = true; |
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: |
validerSaisie(Champs.STATION); |
break; |
|
default: |
stationModifiee = true; |
} |
} |
}); |
527,14 → 574,30 |
|
public void execute(EventObject e) { |
// TODO Auto-generated method stub |
LieuDitModifie = true; |
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: |
validerSaisie(Champs.LIEUDIT); |
break; |
|
default: |
lieuDitModifie = true; |
} |
} |
}); |
543,8 → 606,23 |
|
public void execute(EventObject e) { |
// TODO Auto-generated method stub |
milieuModifie = true; |
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: |
validerSaisie(Champs.MILIEU); |
551,6 → 629,7 |
break; |
|
default: |
milieuModifie = true; |
} |
} |
}); |
558,8 → 637,26 |
comment.addKeyPressListener(new EventCallback() { |
|
public void execute(EventObject e) { |
// TODO Auto-generated method stub |
commModifie = true; |
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; |
|
default: |
commModifie = true; |
} |
} |
}); |
|
824,6 → 921,7 |
private void modifierObservationEnMasse(Champs champModifie) { |
String communeM = null; |
String departementM = null; |
String numNomSelM = null; |
String lieuDitM = null; |
String stationM = null; |
String milieuM = null; |
835,55 → 933,87 |
|
if(communeModifiee) { |
communeM = commune.getText(); |
|
if(departement.equals("000null") || departement.equals("")) { |
String[] depCom = commune.getText().split(" "); |
if(depCom.length > 1) { |
String dep = depCom[1].replace('(', ' '); |
dep =dep.replace(')', ' '); |
dep = dep.trim(); |
dep = dep.replace('\\',' '); |
dep = dep.trim(); |
|
try |
{ |
int nDep = Integer.parseInt(dep); |
if(nDep > 0 && nDep < 110) { |
departement = dep ; |
} |
} |
catch(NumberFormatException e) |
{ |
departement = "" ; |
} |
} |
} |
|
departementM = departement; |
} else { |
champs = champs.replaceAll("commune ", ""); |
champs = champs.replaceAll("commune", ""); |
} |
|
if(LieuDitModifie) { |
if(lieuDitModifie) { |
lieuDitM = lieudit.getText(); |
}else { |
champs = champs.replaceAll("lieu dit ", ""); |
champs = champs.replaceAll(":lieu-dit", ""); |
} |
|
if(StationModifiee) { |
if(stationModifiee) { |
stationM = station.getText(); |
}else { |
champs = champs.replaceAll("station ", ""); |
champs = champs.replaceAll(":station", ""); |
} |
|
if(milieuModifie) { |
milieuM = milieu.getText(); |
}else { |
champs = champs.replaceAll("milieu ", ""); |
champs = champs.replaceAll(":milieu", ""); |
} |
|
if(dateModifiee) { |
if(dateModifiee && !date.getRawValue().equals(VALEURS_MULTIPLES)) { |
dateM = date.getRawValue(); |
}else { |
champs = champs.replaceAll("date ", ""); |
champs = champs.replaceAll(":date", ""); |
} |
|
if(especeModifiee) { |
especeM = espece.getText(); |
numNomSelM = numeroNom; |
}else { |
champs = champs.replaceAll("espece ", ""); |
champs = champs.replaceAll(":espece", ""); |
} |
|
if(commModifie) { |
commM = comment.getText(); |
}else { |
champs = champs.replaceAll("commentaire", ""); |
champs = champs.replaceAll(":commentaire", ""); |
} |
|
String message = "Voulez vous modifier les champs suivants : "+champs+" pour les observations selectionnées ?" ; |
champs = champs.replaceAll(":",", "); |
if(champs.startsWith(",")) { |
champs = champs.replaceFirst(",", ""); |
} |
|
String message = "Voulez vous modifier le(s) champ(s) suivant(s) : "+champs+" pour les observations selectionnées ?" ; |
|
if(champs.trim().equals("")) { |
Window.alert("Aucun champ n'a été modifié"); |
} else { |
Observation obs = new Observation(especeM,numeroNom,communeM,departementM,lieuDitM,stationM,milieuM, commM,dateM); |
Observation obs = new Observation(especeM,numNomSelM,communeM,departementM,lieuDitM,stationM,milieuM, commM,dateM); |
obs.setNumeroOrdre(numeroOrdre); |
if(Window.confirm(message)) { |
observationMediateur.modifierObservationEnMasse(obs); |
reinitialiserValeurModifiees(); |
} |
} |
} |
908,7 → 1038,7 |
idLoc = obs.getIdentifiantLocalite(); |
} |
|
if(!obs.getDate().equals("null") && !obs.getDate().equals("000null")) { |
if(!obs.getDate().equals("null") && !obs.getDate().equals("000null") && !obs.getDate().equals(VALEURS_MULTIPLES)) { |
String[] dateEtHeure = obs.getDate().split(" ", 2); |
if(verifierFormatDate(dateEtHeure[0])) { |
date.setValue(dateEtHeure[0]) ; |
917,6 → 1047,9 |
{ |
date.setRawValue(""); |
} |
} else { |
date.setRawValue(VALEURS_MULTIPLES); |
date.clearInvalid(); |
} |
if(!obs.getLieudit().equals("null") && !obs.getLieudit().equals("000null")) { |
lieudit.setValue(obs.getLieudit()) ; |
931,8 → 1064,12 |
comment.setValue(obs.getCommentaire()) ; |
} |
if(!obs.getLocalite().equals("null") && !obs.getLocalite().equals("000null")) { |
if(!idLoc.equals("000null") && !idLoc.equals(VALEURS_MULTIPLES)) { |
commune.setValue(obs.getLocalite()+" ("+idLoc+")") ; |
if(!idLoc.equals("000null")) { |
if(!idLoc.equals(VALEURS_MULTIPLES)) { |
commune.setValue(obs.getLocalite()+" ("+idLoc+")") ; |
} else { |
commune.setValue(VALEURS_MULTIPLES); |
} |
} |
else |
{ |
1127,8 → 1264,8 |
private void reinitialiserValeurModifiees() { |
|
communeModifiee = false; |
LieuDitModifie = false; |
StationModifiee = false; |
lieuDitModifie = false; |
stationModifiee = false; |
milieuModifie = false; |
dateModifiee = false; |
especeModifiee = false; |