Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 953 → Rev 954

/trunk/src/org/tela_botanica/client/vues/collection/CollectionFormContenu.java
1,5 → 1,8
package org.tela_botanica.client.vues.collection;
 
import java.util.HashMap;
import java.util.Iterator;
 
import org.tela_botanica.client.Mediateur;
import org.tela_botanica.client.composants.ChampCaseACocher;
import org.tela_botanica.client.composants.ChampComboBoxListeValeurs;
6,7 → 9,13
import org.tela_botanica.client.composants.ChampSliderPourcentage;
import org.tela_botanica.client.composants.ConteneurMultiChamps;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.ValeurListe;
import org.tela_botanica.client.modeles.aDonnee;
import org.tela_botanica.client.modeles.collection.Collection;
import org.tela_botanica.client.modeles.collection.CollectionBotanique;
import org.tela_botanica.client.util.Debug;
import org.tela_botanica.client.util.Pattern;
import org.tela_botanica.client.util.UtilDate;
import org.tela_botanica.client.util.UtilString;
import org.tela_botanica.client.vues.Formulaire;
import org.tela_botanica.client.vues.FormulaireOnglet;
 
17,10 → 26,14
import com.extjs.gxt.ui.client.widget.form.TextArea;
import com.extjs.gxt.ui.client.widget.layout.FormData;
import com.extjs.gxt.ui.client.widget.layout.HBoxLayoutData;
import com.google.gwt.core.client.GWT;
 
public class CollectionFormContenu extends FormulaireOnglet implements Rafraichissable {
private Collection collection = null;
private CollectionBotanique collectionBotanique = null;
private Collection collectionCollectee = null;
private CollectionBotanique collectionBotaniqueCollectee = null;
private ChampCaseACocher natureChp = null;
private TextArea specialiteChp = null;
private ChampCaseACocher periodeConstitutionChp = null;
172,6 → 185,67
add(etiquetteFieldSet);
}
private String collecterEtiquetteRenseignement() {
String renseignement = "";
renseignement += creerTypeValeur("AT", auteurTitrePourcentChp.getValeur());
renseignement += creerTypeValeur("F", famillePourcentChp.getValeur());
renseignement += creerTypeValeur("G", genrePourcentChp.getValeur());
renseignement += creerTypeValeur("SP", spPourcentChp.getValeur());
renseignement += creerTypeValeur("ASP", auteurSpPourcentChp.getValeur());
renseignement += creerTypeValeur("L", localitePourcentChp.getValeur());
renseignement += creerTypeValeur("D", datePourcentChp.getValeur());
renseignement = renseignement.replaceFirst(aDonnee.SEPARATEUR_VALEURS+"$", "");
return renseignement;
}
private String creerTypeValeur(String type, String valeur) {
String retour = "";
if (!UtilString.isEmpty(valeur)) {
retour = type+aDonnee.SEPARATEUR_TYPE_VALEUR+valeur+aDonnee.SEPARATEUR_VALEURS;
}
return retour;
}
private void peuplerEtiquetteRenseignement(String valeurTruk) {
HashMap<String,String> infos = parserEtiquetteRenseignement(valeurTruk);
if (infos != null) {
Iterator<String> it = infos.keySet().iterator();
while (it.hasNext()) {
String cle = it.next();
if (cle.equals("AT")) {
auteurTitrePourcentChp.peupler(infos.get(cle));
} else if (cle.equals("F")) {
famillePourcentChp.peupler(infos.get(cle));
} else if (cle.equals("G")) {
genrePourcentChp.peupler(infos.get(cle));
} else if (cle.equals("SP")) {
spPourcentChp.peupler(infos.get(cle));
} else if (cle.equals("ASP")) {
auteurSpPourcentChp.peupler(infos.get(cle));
} else if (cle.equals("L")) {
localitePourcentChp.peupler(infos.get(cle));
} else if (cle.equals("D")) {
genrePourcentChp.peupler(infos.get(cle));
}
}
}
}
private HashMap<String,String> parserEtiquetteRenseignement(String valeurTruk) {
HashMap<String,String> infos = null;
if (!UtilString.isEmpty(valeurTruk)) {
infos = new HashMap<String,String>();
String[] pourcentages = valeurTruk.split(Pattern.quote(aDonnee.SEPARATEUR_VALEURS));
for (int i = 0; i < pourcentages.length; i++) {
String[] pourcentageIdValeur = pourcentages[i].split(Pattern.quote(aDonnee.SEPARATEUR_TYPE_VALEUR));
String id = pourcentageIdValeur[0];
String valeur = pourcentageIdValeur[1];
infos.put(id, valeur);
}
}
return infos;
}
private void creerFieldsetIntegration() {
FieldSet integrationFieldSet = new FieldSet();
integrationFieldSet.setHeading("Collections intégrées");
190,20 → 264,69
add(integrationFieldSet);
}
public void rafraichir(Object nouvellesDonnees) {
if (nouvellesDonnees instanceof ValeurListe) {
ValeurListe listeValeurs = (ValeurListe) nouvellesDonnees;
rafraichirValeurListe(listeValeurs);
} else {
GWT.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()), null);
public void peupler() {
initialiserCollection();
if (collectionBotanique != null) {
natureChp.peupler(collectionBotaniqueCollectee.getNature());
specialiteChp.setValue(collectionBotaniqueCollectee.getSpecialite());
periodeConstitutionChp.peupler(collectionCollectee.getPeriodeConstitution());
dateDebutChp.setValue(UtilString.formaterEnDate(collectionBotaniqueCollectee.getRecolteDateDebut()));
dateDebutCombo.peupler(collectionBotaniqueCollectee.getRecolteDateDebutType());
dateFinChp.setValue(UtilString.formaterEnDate(collectionBotaniqueCollectee.getRecolteDateFin()));
dateFinCombo.peupler(collectionBotaniqueCollectee.getRecolteDateFinType());
etatClassementCombo.peupler(collectionBotaniqueCollectee.getClassementEtat());
annotationClassementChp.setValue(collectionBotaniqueCollectee.getClassementAnnotation());
peuplerEtiquetteRenseignement(collectionBotaniqueCollectee.getEtiquetteRenseignement());
precisionLocaliteCombo.peupler(collectionBotaniqueCollectee.getPrecisionLocalite());
precisionDateCombo.peupler(collectionBotaniqueCollectee.getPrecisionDate());
etiquetteAnnotationChp.setValue(collectionBotaniqueCollectee.getAnnotationsDiverses());
integreCollectionCombo.peupler(collectionBotaniqueCollectee.getCollectionIntegre());
infoIntegreCollectionCombo.peupler(collectionBotaniqueCollectee.getCollectionIntegreInfo());
}
}
private void rafraichirValeurListe(ValeurListe listeValeurs) {
if (listeValeurs.getId().equals(config.getListeId(""))) {
public void collecter() {
initialiserCollection();
if (etreAccede()) {
collectionBotaniqueCollectee.setNature(natureChp.getValeur());
collectionBotaniqueCollectee.setSpecialite(specialiteChp.getValue());
} else {
GWT.log("Gestion de la liste "+listeValeurs.getId()+" non implémenté!", null);
collectionCollectee.setPeriodeConstitution(periodeConstitutionChp.getValeur());
collectionBotaniqueCollectee.setRecolteDateDebut(UtilDate.formaterEnString(dateDebutChp.getValue()));
collectionBotaniqueCollectee.setRecolteDateDebutType(dateDebutCombo.getValeur());
collectionBotaniqueCollectee.setRecolteDateFin(UtilDate.formaterEnString(dateFinChp.getValue()));
collectionBotaniqueCollectee.setRecolteDateFinType(dateFinCombo.getValeur());
collectionBotaniqueCollectee.setClassementEtat(etatClassementCombo.getValeur());
collectionBotaniqueCollectee.setClassementAnnotation(annotationClassementChp.getValue());
collectionBotaniqueCollectee.setEtiquetteRenseignement(collecterEtiquetteRenseignement());
collectionBotaniqueCollectee.setPrecisionLocalite(precisionLocaliteCombo.getValeur());
collectionBotaniqueCollectee.setPrecisionDate(precisionDateCombo.getValeur());
collectionBotaniqueCollectee.setAnnotationsDiverses(etiquetteAnnotationChp.getValue());
collectionBotaniqueCollectee.setCollectionIntegre(integreCollectionCombo.getValeur());
collectionBotaniqueCollectee.setCollectionIntegreInfo(infoIntegreCollectionCombo.getValeur());
}
}
}
private void initialiserCollection() {
collection = ((CollectionForm) formulaire).collection;
if (collection != null) {
collectionBotanique = collection.getBotanique();
}
collectionCollectee = ((CollectionForm) formulaire).collectionCollectee;
if (collectionCollectee != null) {
collectionBotaniqueCollectee = collectionCollectee.getBotanique();
}
}
public void rafraichir(Object nouvellesDonnees) {
Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass()));
}
}