/trunk/src/org/tela_botanica/client/util/UtilString.java |
---|
20,6 → 20,10 |
return inputStr.substring(0,1).toUpperCase() + inputStr.substring(1, inputStr.length()); |
} |
public static String mettrePremiereLettreEnMajuscule(String str) { |
return str.substring(0, 1).toUpperCase() + str.substring(1); |
} |
public static boolean isEmpty(String chaine) { |
boolean etreVide = false; |
if (chaine == null || chaine.equals("") || chaine.equals("0000-00-00") || chaine.equals("0000-00-00 00:00:00")) { |
/trunk/src/org/tela_botanica/client/i18n/Constantes.java |
---|
19,6 → 19,8 |
String chargement(); |
String oui(); |
String non(); |
String peutEtre(); |
String neSaitPas(); |
String ok(); |
String autres(); |
String nom(); |
395,6 → 397,8 |
String collectionUniteBasePart(); |
String collectionUniteBaseSp(); |
String selectionnerUniteBase(); |
String collectionNbPlanchesHerbier(); |
String collectionNbEspeces(); |
String collectionUniteBaseSaisirType(); |
String selectionnerUniteBaseAjoute(); |
String collectionTitreConservation(); |
/trunk/src/org/tela_botanica/client/i18n/Constantes.properties |
---|
3,6 → 3,8 |
chargement = Chargement ... |
oui = oui |
non = non |
peutEtre = peut-être |
neSaitPas = ne sait pas |
ok = ok |
autres = Autres |
nom = Nom |
407,6 → 409,8 |
collectionUniteBasePart = Parts |
collectionUniteBaseSp = Espèces |
selectionnerUniteBase = une unité de base |
collectionNbPlanchesHerbier = Planches d'herbier |
collectionNbEspeces = Nombres d'espèces |
collectionUniteBaseSaisirType = Veuillez saisir le type d'unité de base : |
selectionnerUniteBaseAjoute = Seules les unités de base ajoutées peuvent être supprimées |
collectionTitreConservation = Conservation |
/trunk/src/org/tela_botanica/client/vues/collection/CollectionFormDescription.java |
---|
101,6 → 101,8 |
private ChampMultiValeursMultiTypes specimenDegradationChp = null; |
private ChampMultiValeursMultiTypes presentationDegradationChp = null; |
private Text labelPresentationDegradationChp = null; |
private ChampNombre planchesHerbier = null; |
private ChampNombre nbEspeces = null; |
public CollectionFormDescription(Formulaire formulaireCourrant) { |
initialiserOnglet(formulaireCourrant); |
446,277 → 448,6 |
return bouton; |
} |
private ContentPanel creerUniteBase() { |
ContentPanel panneauGrille = creerPanneauContenantGrille(i18nC.collectionUniteBaseTitre()); |
uniteBaseGrille = creerGrilleUniteBase(); |
mediateur.obtenirListeValeurEtRafraichir(this, "typeUniteBase", null); |
panneauGrille.add(uniteBaseGrille); |
ToolBar barreOutils = creerBarreOutilsGrilleUniteBase(); |
panneauGrille.setTopComponent(barreOutils); |
return panneauGrille; |
} |
private EditorGrid<UniteBase> creerGrilleUniteBase() { |
ListStore<UniteBase> storeGrille = new ListStore<UniteBase>(); |
List<ColumnConfig> colonnes = new ArrayList<ColumnConfig>(); |
colonnes.add(new ColumnConfig("type", i18nC.collectionUniteType(), 150)); |
NumberField champNombre = creerChampNombre(); |
champNombre.setFormat(NumberFormat.getFormat("#")); |
CellEditor editeurNombre = new CellEditor(champNombre); |
ColumnConfig nombreColonne = new ColumnConfig("nombre", i18nC.collectionUniteNbre(), 50); |
nombreColonne.setEditor(editeurNombre); |
nombreColonne.setNumberFormat(NumberFormat.getFormat("#")); |
colonnes.add(nombreColonne); |
CellEditor editeurPrecision = new CellEditor(getChampPrecision()) { |
@Override |
public Object preProcessValue(Object valeur) { |
InterneValeur retour = null; |
if (valeur != null ) { |
if (precisionStore.findModel("nom", valeur.toString()) != null) { |
retour = precisionStore.findModel("nom", valeur.toString()); |
} else if (precisionStore.findModel("abr", valeur.toString()) != null) { |
retour = precisionStore.findModel("abr", valeur.toString()); |
} |
} |
return retour; |
} |
@Override |
public Object postProcessValue(Object valeur) { |
String retour = null; |
if (valeur != null ) { |
if (valeur instanceof InterneValeur) { |
InterneValeur valeurInterne = (InterneValeur) valeur; |
retour = valeurInterne.getNom(); |
} |
} |
return retour; |
} |
}; |
ColumnConfig precisionColonne = new ColumnConfig("precision", i18nC.collectionUnitePrecision(), 50); |
precisionColonne.setEditor(editeurPrecision); |
colonnes.add(precisionColonne); |
TextField<String> formatChp = new TextField<String>(); |
ColumnConfig formatColonne = new ColumnConfig("format", i18nC.collectionUniteFormat(), 100); |
formatColonne.setEditor(new CellEditor(formatChp)); |
colonnes.add(formatColonne); |
ColumnConfig partNombreColonne = new ColumnConfig("nombre_part", i18nC.collectionUniteNbre(), 50); |
partNombreColonne.setEditor(editeurNombre); |
partNombreColonne.setNumberFormat(NumberFormat.getFormat("#")); |
colonnes.add(partNombreColonne); |
ColumnConfig partPrecisionColonne = new ColumnConfig("precision_part", i18nC.collectionUnitePrecision(), 50); |
partPrecisionColonne.setEditor(editeurPrecision); |
colonnes.add(partPrecisionColonne); |
ColumnConfig spNombreColonne = new ColumnConfig("nombre_sp", i18nC.collectionUniteNbre(), 50); |
spNombreColonne.setEditor(editeurNombre); |
spNombreColonne.setNumberFormat(NumberFormat.getFormat("#")); |
colonnes.add(spNombreColonne); |
ColumnConfig spPrecisionColonne = new ColumnConfig("precision_sp", i18nC.collectionUnitePrecision(), 50); |
spPrecisionColonne.setEditor(editeurPrecision); |
colonnes.add(spPrecisionColonne); |
GridSelectionModel<UniteBase> modeleDeSelection = new GridSelectionModel<UniteBase>(); |
ColumnModel modeleDeColonnes = new ColumnModel(colonnes); |
modeleDeColonnes.addHeaderGroup(0, 0, new HeaderGroupConfig(i18nC.collectionUniteBase(), 1, 4)); |
modeleDeColonnes.addHeaderGroup(0, 4, new HeaderGroupConfig(i18nC.collectionUniteBasePart(), 1, 2)); |
modeleDeColonnes.addHeaderGroup(0, 6, new HeaderGroupConfig(i18nC.collectionUniteBaseSp(), 1, 2)); |
AggregationRowConfig<UniteBase> total = new AggregationRowConfig<UniteBase>(); |
total.setHtml("type", "TOTAL"); |
total.setSummaryType("nombre", SummaryType.SUM); |
total.setSummaryFormat("nombre", NumberFormat.getFormat("#")); |
total.setSummaryType("nombre_part", SummaryType.SUM); |
total.setSummaryFormat("nombre_part", NumberFormat.getFormat("#")); |
total.setSummaryType("nombre_sp", SummaryType.SUM); |
total.setSummaryFormat("nombre_sp", NumberFormat.getFormat("#")); |
modeleDeColonnes.addAggregationRow(total); |
EditorGrid<UniteBase> grilleUniteBase = new EditorGrid<UniteBase>(storeGrille, modeleDeColonnes); |
grilleUniteBase.setHeight(200); |
grilleUniteBase.setBorders(true); |
grilleUniteBase.setSelectionModel(modeleDeSelection); |
grilleUniteBase.getView().setForceFit(true); |
grilleUniteBase.getView().setAutoFill(true); |
grilleUniteBase.setAutoExpandColumn("type"); |
grilleUniteBase.setStripeRows(true); |
grilleUniteBase.setTrackMouseOver(true); |
return grilleUniteBase; |
} |
private String collecterGrilleUniteBase() { |
String truk = ""; |
int nbreUnite = uniteBaseGrille.getStore().getCount(); |
for (int i = 0; i < nbreUnite; i++) { |
UniteBase unite = uniteBaseGrille.getStore().getAt(i); |
if (unite.getTypeAutre()) { |
truk += unite.getType(); |
} else { |
truk += unite.getId(); |
} |
truk += aDonnee.SEPARATEUR_TYPE_VALEUR; |
truk += UtilNombre.formaterEnEntier(unite.getNombre())+aDonnee.SEPARATEUR_DONNEES; |
truk += getPrecisionAbr(unite.getPrecision())+aDonnee.SEPARATEUR_DONNEES; |
truk += unite.getFormat()+aDonnee.SEPARATEUR_DONNEES; |
truk += UtilNombre.formaterEnEntier(unite.getNombrePart())+aDonnee.SEPARATEUR_DONNEES; |
truk += getPrecisionAbr(unite.getPrecisionPart())+aDonnee.SEPARATEUR_DONNEES; |
truk += UtilNombre.formaterEnEntier(unite.getNombreSp())+aDonnee.SEPARATEUR_DONNEES; |
truk += getPrecisionAbr(unite.getPrecisionSp()); |
truk += (i == (nbreUnite - 1)) ? "" : aDonnee.SEPARATEUR_VALEURS; |
} |
return truk; |
} |
private void peuplerGrilleUniteBase(String valeurTruk) { |
if (!UtilString.isEmpty(valeurTruk)) { |
HashMap<String,UniteBase> unitesEnregistrees = parserValeurUniteBase(valeurTruk); |
ArrayList<UniteBase> listeUniteMaj = new ArrayList<UniteBase>(); |
int nbreUnite = uniteBaseGrille.getStore().getCount(); |
for (int i = 0; i < nbreUnite; i++) { |
UniteBase uniteDansGrille = uniteBaseGrille.getStore().getAt(i); |
UniteBase uniteEnregistree = unitesEnregistrees.get(uniteDansGrille.getId()); |
if (uniteEnregistree != null) { |
uniteEnregistree.setType(uniteDansGrille.getType()); |
listeUniteMaj.add(uniteEnregistree); |
} else { |
listeUniteMaj.add(uniteDansGrille); |
} |
} |
Iterator<String> it = unitesEnregistrees.keySet().iterator(); |
while (it.hasNext()) { |
String cle = it.next(); |
if (cle.matches(aDonnee.TYPE_AUTRE+aDonnee.SEPARATEUR_TYPE_VALEUR+"[a-zA-Z0-9]+")) { |
UniteBase uniteAutreEnregistree = unitesEnregistrees.get(cle); |
listeUniteMaj.add(uniteAutreEnregistree); |
} |
} |
uniteBaseGrille.getStore().removeAll(); |
uniteBaseGrille.getStore().add(listeUniteMaj); |
layout(); |
} |
} |
public static HashMap<String,UniteBase> parserValeurUniteBase(String valeurTruk) { |
HashMap<String,UniteBase> unitesEnregistrees = new HashMap<String,UniteBase>(); |
if (!UtilString.isEmpty(valeurTruk)) { |
String[] unites = valeurTruk.split(Pattern.quote(aDonnee.SEPARATEUR_VALEURS)); |
for (int i = 0; i < unites.length; i++) { |
String[] uniteTypeIdDonnees = unites[i].split(Pattern.quote(aDonnee.SEPARATEUR_TYPE_VALEUR)); |
String uniteChaineDonnees = uniteTypeIdDonnees[1]; |
String[] uniteDonnees = uniteChaineDonnees.split(Pattern.quote(aDonnee.SEPARATEUR_DONNEES)); |
UniteBase uniteBase = new UniteBase(); |
if (uniteDonnees.length > 0) { |
uniteBase.setNombre(UtilString.formaterEnEntier(uniteDonnees[0])); |
} |
if (uniteDonnees.length > 1) { |
uniteBase.setPrecision(getPrecisionNom(uniteDonnees[1])); |
} |
if (uniteDonnees.length > 2) { |
uniteBase.setFormat(uniteDonnees[2]); |
} |
if (uniteDonnees.length > 3) { |
uniteBase.setNombrePart(UtilString.formaterEnEntier(uniteDonnees[3])); |
} |
if (uniteDonnees.length > 4) { |
uniteBase.setPrecisionPart(getPrecisionNom(uniteDonnees[4])); |
} |
if (uniteDonnees.length > 5) { |
uniteBase.setNombreSp(UtilString.formaterEnEntier(uniteDonnees[5])); |
} |
if (uniteDonnees.length > 6) { |
uniteBase.setPrecisionSp(getPrecisionNom(uniteDonnees[6])); |
} |
if (uniteTypeIdDonnees[0].matches("[0-9]+")) { |
uniteBase.setId(uniteTypeIdDonnees[0]); |
uniteBase.setTypeAutre(false); |
unitesEnregistrees.put(uniteTypeIdDonnees[0], uniteBase); |
} else { |
uniteBase.setType(uniteTypeIdDonnees[0]); |
uniteBase.setTypeAutre(true); |
String id = aDonnee.TYPE_AUTRE+aDonnee.SEPARATEUR_TYPE_VALEUR+uniteTypeIdDonnees[0]+"-"+i; |
uniteBase.setId(id); |
unitesEnregistrees.put(aDonnee.TYPE_AUTRE+aDonnee.SEPARATEUR_TYPE_VALEUR+uniteTypeIdDonnees[0], uniteBase); |
} |
} |
} |
return unitesEnregistrees; |
} |
private ToolBar creerBarreOutilsGrilleUniteBase() { |
ToolBar barreOutils = new ToolBar(); |
Button ajouterBouton = creerBoutonAjouterUniteBase(); |
barreOutils.add(ajouterBouton); |
barreOutils.add(new SeparatorToolItem()); |
Button supprimerBouton = creerBoutonSupprimerUniteBase(); |
barreOutils.add(supprimerBouton); |
return barreOutils; |
} |
private Button creerBoutonAjouterUniteBase() { |
Button bouton = new Button(i18nC.ajouter()); |
bouton.setIcon(Images.ICONES.ajouter()); |
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() { |
@Override |
public void componentSelected(ButtonEvent ce) { |
final MessageBox box = MessageBox.prompt(i18nC.collectionUniteType(), i18nC.collectionUniteBaseSaisirType()); |
box.addCallback(new Listener<MessageBoxEvent>() { |
public void handleEvent(MessageBoxEvent be) { |
if (!UtilString.isEmpty(be.getValue()) && !be.getValue().matches("[0-9]+")) { |
final UniteBase unite = new UniteBase(); |
unite.setType(be.getValue()); |
unite.setTypeAutre(true); |
uniteBaseGrille.getStore().add(unite); |
} else { |
InfoLogger.display("Information", "Vous ne pouvez pas saisir de valeur vide ou numérique"); |
} |
} |
}); |
} |
}); |
return bouton; |
} |
private Button creerBoutonSupprimerUniteBase() { |
Button bouton = new Button(i18nC.supprimer()); |
bouton.setIcon(Images.ICONES.supprimer()); |
bouton.addSelectionListener(new SelectionListener<ButtonEvent>() { |
@Override |
public void componentSelected(ButtonEvent ce) { |
UniteBase uniteBaseSelectionnee = uniteBaseGrille.getSelectionModel().getSelectedItem(); |
if (uniteBaseSelectionnee == null) { |
InfoLogger.display(i18nC.informationTitreGenerique(), Mediateur.i18nM.veuillezSelectionner(i18nC.selectionnerUniteBase())); |
} else if (uniteBaseSelectionnee.getTypeAutre() == false) { |
InfoLogger.display(i18nC.informationTitreGenerique(), i18nC.selectionnerUniteBaseAjoute()); |
} else { |
uniteBaseGrille.getStore().remove(uniteBaseSelectionnee); |
} |
} |
}); |
return bouton; |
} |
private void creerFieldsetConservation() { |
FieldSet conservationFieldSet = new FieldSet(); |
conservationFieldSet.setHeadingHtml(i18nC.collectionTitreConservation()); |
799,8 → 530,16 |
etatTypesUniteFieldSet.add(etatUniteRangementCombo); |
etatTypesUniteFieldSet.add(creerUniteRangement()); |
etatTypesUniteFieldSet.add(creerUniteBase()); |
planchesHerbier = new ChampNombre(); |
planchesHerbier.setFieldLabel(i18nC.collectionNbPlanchesHerbier()); |
nbEspeces = new ChampNombre(); |
nbEspeces.setFieldLabel(i18nC.collectionNbEspeces()); |
etatTypesUniteFieldSet.add(planchesHerbier); |
etatTypesUniteFieldSet.add(nbEspeces); |
add(etatTypesUniteFieldSet); |
etatGeneralCombo = new ChampComboBoxListeValeurs(i18nC.collectionEtatGeneral(), "etat"); |
855,8 → 594,15 |
peuplerGrilleUniteRangement(collectionBotanique.getUniteRangement()); |
etatUniteRangementCombo.peupler(collectionBotanique.getUniteRangementEtat()); |
peuplerGrilleUniteBase(collectionBotanique.getUniteBase()); |
if(!collectionBotanique.getNbPlanchesHerbiers().isEmpty()) { |
planchesHerbier.setValue((Integer.parseInt(collectionBotanique.getNbPlanchesHerbiers()))); |
} |
if(!collectionBotanique.getNbEspeces().isEmpty()) { |
nbEspeces.setValue((Integer.parseInt(collectionBotanique.getNbEspeces()))); |
} |
typePapierConservationChp.peupler(collectionBotanique.getConservationPapierType()); |
methodeConservationChp.peupler(collectionBotanique.getConservationMethode()); |
889,7 → 635,8 |
collectionBotaniqueCollectee.setUniteRangement(collecterGrilleUniteRangement()); |
collectionBotaniqueCollectee.setUniteRangementEtat(etatUniteRangementCombo.getValeur()); |
collectionBotaniqueCollectee.setUniteBase(collecterGrilleUniteBase()); |
collectionBotaniqueCollectee.setNbPlanchesHerbiers(planchesHerbier.getValue()+""); |
collectionBotaniqueCollectee.setNbEspeces(nbEspeces.getValue()+""); |
collectionBotaniqueCollectee.setConservationPapierType(typePapierConservationChp.getValeur()); |
collectionBotaniqueCollectee.setConservationMethode(methodeConservationChp.getValeur()); |
/trunk/src/org/tela_botanica/client/vues/collection/CollectionFormInventaire.java |
---|
4,6 → 4,8 |
import org.tela_botanica.client.composants.ChampCaseACocher; |
import org.tela_botanica.client.composants.ChampComboBoxListeValeurs; |
import org.tela_botanica.client.composants.ChampSliderPourcentage; |
import org.tela_botanica.client.modeles.OntologiesLocales; |
import org.tela_botanica.client.modeles.SimpleModelData; |
import org.tela_botanica.client.modeles.collection.Collection; |
import org.tela_botanica.client.modeles.collection.CollectionBotanique; |
import org.tela_botanica.client.util.Debug; |
10,7 → 12,11 |
import org.tela_botanica.client.vues.Formulaire; |
import org.tela_botanica.client.vues.FormulaireOnglet; |
import com.extjs.gxt.ui.client.Style.SortDir; |
import com.extjs.gxt.ui.client.store.ListStore; |
import com.extjs.gxt.ui.client.widget.form.ComboBox; |
import com.extjs.gxt.ui.client.widget.form.TextArea; |
import com.extjs.gxt.ui.client.widget.form.ComboBox.TriggerAction; |
import com.extjs.gxt.ui.client.widget.layout.FormData; |
public class CollectionFormInventaire extends FormulaireOnglet { |
21,8 → 27,8 |
private Collection collectionCollectee = null; |
private CollectionBotanique collectionBotaniqueCollectee = null; |
private ChampComboBoxListeValeurs existenceInventaireCombo = null; |
private ChampComboBoxListeValeurs auteurInventaireCombo = null; |
private ComboBox<SimpleModelData> existenceInventaireCombo = null; |
private ComboBox<SimpleModelData> auteurInventaireCombo = null; |
private ChampComboBoxListeValeurs formeInventaireCombo = null; |
private TextArea infoInventaireChp = null; |
private ChampCaseACocher digitalInventaireChp = null; |
35,13 → 41,10 |
setText(Mediateur.i18nC.collectionInventaire()); |
int tabIndex = formulaireCourrant.tabIndex; |
existenceInventaireCombo = new ChampComboBoxListeValeurs(i18nC.existenceInventaireCollection(), "onpi", tabIndex++); |
existenceInventaireCombo.setTrie("id_valeur"); |
existenceInventaireCombo = creerSimpleComboOuiNonPeutEtre(i18nC.existenceInventaireCollection()); |
add(existenceInventaireCombo, new FormData(300, 0)); |
auteurInventaireCombo = new ChampComboBoxListeValeurs(i18nC.auteurInventaireCollection(), "onpi", tabIndex++); |
auteurInventaireCombo.setTrie("id_valeur"); |
auteurInventaireCombo.setTabIndex(tabIndex++); |
auteurInventaireCombo = creerSimpleComboOuiNonPeutEtre(i18nC.auteurInventaireCollection()); |
add(auteurInventaireCombo, new FormData(300, 0)); |
formeInventaireCombo = new ChampComboBoxListeValeurs(i18nC.formeInventaireCollection(), "inventaireForme", tabIndex++); |
68,8 → 71,8 |
public void peupler() { |
initialiserCollection(); |
if (collectionBotanique != null) { |
existenceInventaireCombo.peupler(collectionBotanique.getInventaire()); |
auteurInventaireCombo.peupler(collectionBotanique.getInventaireAuteur()); |
remplirSimpleCombo(existenceInventaireCombo, collectionBotanique.getInventaire()); |
remplirSimpleCombo(auteurInventaireCombo, collectionBotanique.getInventaireAuteur()); |
formeInventaireCombo.peupler(collectionBotanique.getInventaireForme()); |
infoInventaireChp.setValue(collectionBotanique.getInventaireInfo()); |
digitalInventaireChp.peupler(collectionBotanique.getInventaireDigital()); |
80,9 → 83,10 |
public void collecter() { |
initialiserCollection(); |
if (etreAccede()) { |
collectionBotaniqueCollectee.setInventaire(existenceInventaireCombo.getValeur()); |
collectionBotaniqueCollectee.setInventaireAuteur(auteurInventaireCombo.getValeur()); |
collectionBotaniqueCollectee.setInventaire(existenceInventaireCombo.getValue().getCle()); |
collectionBotaniqueCollectee.setInventaireAuteur(auteurInventaireCombo.getValue().getCle()); |
collectionBotaniqueCollectee.setInventaireForme(formeInventaireCombo.getValeur()); |
collectionBotaniqueCollectee.setInventaireInfo(infoInventaireChp.getValue()); |
collectionBotaniqueCollectee.setInventaireDigital(digitalInventaireChp.getValeur()); |
107,4 → 111,24 |
Debug.log(Mediateur.i18nM.erreurRafraichir(nouvellesDonnees.getClass(), this.getClass())); |
} |
public void remplirSimpleCombo(ComboBox<SimpleModelData> simpleCombo, String valeur) { |
SimpleModelData selectionne = simpleCombo.getStore().findModel("cle", valeur); |
simpleCombo.setValue(selectionne); |
} |
public ComboBox<SimpleModelData> creerSimpleComboOuiNonPeutEtre(String label) { |
ListStore<SimpleModelData> listeOuiNonPeutEtre = OntologiesLocales.convertirVersListeStore(OntologiesLocales.getListeOuiNonPeutEtre()); |
ComboBox<SimpleModelData> combo = new ComboBox<SimpleModelData>(); |
combo.setForceSelection(true); |
combo.setTriggerAction(TriggerAction.ALL); |
combo.setFieldLabel(label); |
combo.setDisplayField("valeur"); |
combo.setValueField("cle"); |
listeOuiNonPeutEtre.sort("ordre", SortDir.ASC); |
combo.setStore(listeOuiNonPeutEtre); |
return combo; |
} |
} |
/trunk/src/org/tela_botanica/client/vues/collection/CollectionDetailVue.java |
---|
8,6 → 8,7 |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.interfaces.Rafraichissable; |
import org.tela_botanica.client.modeles.Information; |
import org.tela_botanica.client.modeles.OntologiesLocales; |
import org.tela_botanica.client.modeles.ValeurListe; |
import org.tela_botanica.client.modeles.collection.Collection; |
import org.tela_botanica.client.modeles.collection.CollectionACommentaire; |
17,7 → 18,6 |
import org.tela_botanica.client.modeles.collection.CollectionAPublication; |
import org.tela_botanica.client.modeles.collection.CollectionAPublicationListe; |
import org.tela_botanica.client.modeles.collection.CollectionBotanique; |
import org.tela_botanica.client.modeles.collection.UniteBase; |
import org.tela_botanica.client.modeles.collection.UniteRangement; |
import org.tela_botanica.client.modeles.commentaire.Commentaire; |
import org.tela_botanica.client.modeles.personne.Personne; |
299,7 → 299,8 |
" <span class='{css_label}'>{i18n_nbre_echantillon} :</span> {nbre_echantillon}<br />"+ |
" <span class='{css_label}'>{i18n_etat_unite_rangement} :</span> {etat_unite_rangement}<br />"+ |
" {tableau_unite_rangement}<br />"+ |
" {tableau_unite_base}<br />"+ |
" <span class='{css_label}'>{i18n_nb_planches_herbier} :</span> {nb_planches_herbier}<br />"+ |
" <span class='{css_label}'>{i18n_nb_especes} :</span> {nb_especes}<br />"+ |
" </div>"+ |
" <div>"+ |
" <h2>{i18n_titre_conservation}</h2>"+ |
791,11 → 792,16 |
CollectionBotanique collectionBotanique = collection.getBotanique(); |
String etatUniteRangement = construireTxtListeOntologie(collectionBotanique.getUniteRangementEtat()); |
String tableauUniteRangementHtml = construireTableauUniteRangement(); |
String tableauUniteBaseHtml = construireTableauUniteBase(); |
descriptionParams.set("tableau_unite_rangement", tableauUniteRangementHtml); |
descriptionParams.set("etat_unite_rangement", etatUniteRangement); |
descriptionParams.set("tableau_unite_base", tableauUniteBaseHtml); |
descriptionParams.set("i18n_nb_planches_herbier", i18nC.collectionNbPlanchesHerbier()); |
descriptionParams.set("i18n_nb_especes", i18nC.collectionNbEspeces()); |
descriptionParams.set("nb_planches_herbier", collectionBotanique.getNbPlanchesHerbiers()); |
descriptionParams.set("nb_especes", collectionBotanique.getNbEspeces()); |
String typePapier = construireTxtListeOntologie(collectionBotanique.getConservationPapierType()); |
String conservationMethode = construireTxtListeOntologie(collectionBotanique.getConservationMethode()); |
descriptionParams.set("type_papier", typePapier); |
872,52 → 878,6 |
return cHtml; |
} |
private String construireTableauUniteBase() { |
Params contenuParams = new Params(); |
contenuParams.set("i18n_unite_base", i18nC.collectionUniteBase()); |
contenuParams.set("i18n_part", i18nC.collectionUniteBasePart()); |
contenuParams.set("i18n_sp", i18nC.collectionUniteBaseSp()); |
contenuParams.set("i18n_type", i18nC.collectionUniteType()); |
contenuParams.set("i18n_nombre", i18nC.collectionUniteNbre()); |
contenuParams.set("i18n_precision", i18nC.collectionUnitePrecision()); |
contenuParams.set("i18n_format", i18nC.collectionUniteFormat()); |
CollectionBotanique collectionBotanique = collection.getBotanique(); |
HashMap<String,UniteBase> unites = CollectionFormDescription.parserValeurUniteBase(collectionBotanique.getUniteBase()); |
String lignesUnite = ""; |
Iterator<String> it = unites.keySet().iterator(); |
while (it.hasNext()) { |
String cle = it.next(); |
UniteBase unite = unites.get(cle); |
if (unite.getNombre() != 0 || unite.getNombrePart() != 0 || unite.getNombreSp() != 0) { |
Params ligneParams = new Params(); |
if (unite.getTypeAutre()) { |
ligneParams.set("type", unite.getType()); |
} else { |
ligneParams.set("type", construireTxtListeOntologie(unite.getId())); |
} |
ligneParams.set("nombre", UtilNombre.formaterEnEntier(unite.getNombre())); |
ligneParams.set("precision", unite.getPrecision()); |
ligneParams.set("format", unite.getFormat()); |
ligneParams.set("part_nombre", UtilNombre.formaterEnEntier(unite.getNombrePart())); |
ligneParams.set("part_precision", unite.getPrecisionPart()); |
ligneParams.set("sp_nombre", UtilNombre.formaterEnEntier(unite.getNombreSp())); |
ligneParams.set("sp_precision", unite.getPrecisionSp()); |
lignesUnite += Format.substitute(ligneUniteBaseTpl, ligneParams); |
} |
} |
String cHtml = i18nC.nonRenseigne(); |
if (!UtilString.isEmpty(lignesUnite)) { |
contenuParams.set("lignes", lignesUnite); |
cHtml = Format.substitute(tableauUniteBaseTpl, contenuParams); |
} |
return cHtml; |
} |
private void afficherContenu() { |
Params contenuParams = new Params(); |
contenuParams.set("i18n_titre_nature", i18nC.collectionNatureTitre()); |
1018,8 → 978,8 |
//DELETEME inventaireParams.set("i18n_type_donnee", i18nC.typeDonneeInventaireCollectionDetail()); |
CollectionBotanique collectionBotanique = collection.getBotanique(); |
String existence = construireTxtListeOntologie(collectionBotanique.getInventaire()); |
String participationAuteur = construireTxtListeOntologie(collectionBotanique.getInventaireAuteur()); |
String existence = OntologiesLocales.getValeurOntologie(OntologiesLocales.getListeOuiNonPeutEtre(), collectionBotanique.getInventaire()); |
String participationAuteur = OntologiesLocales.getValeurOntologie(OntologiesLocales.getListeOuiNonPeutEtre(), collectionBotanique.getInventaireAuteur()); |
String forme = construireTxtListeOntologie(collectionBotanique.getInventaireForme()); |
String digital = construireTxtListeOntologie(collectionBotanique.getInventaireDigital()); |
String digitalPourcent = collectionBotanique.getInventaireDigitalPourcent()+"%"; |
1031,7 → 991,6 |
inventaireParams.set("digital", digital); |
inventaireParams.set("digital_pourcent", digitalPourcent); |
inventaireParams.set("etat", etat); |
//DELETEME inventaireParams.set("type_donnee", collectionBotanique.getInventaireDonneesTypes()); |
afficherOnglet(inventaireTpl, inventaireParams, inventaireOnglet); |
} |
/trunk/src/org/tela_botanica/client/modeles/OntologiesLocales.java |
---|
New file |
0,0 → 1,50 |
package org.tela_botanica.client.modeles; |
import java.util.HashMap; |
import java.util.Iterator; |
import java.util.Map; |
import org.tela_botanica.client.Mediateur; |
import org.tela_botanica.client.i18n.Constantes; |
import org.tela_botanica.client.util.UtilString; |
import com.extjs.gxt.ui.client.store.ListStore; |
public class OntologiesLocales { |
public static Map<String,String[]> listeOuiNonPeutEtre; |
// TODO: mapper ça vers l'i18n |
public static Map<String, String[]> getListeOuiNonPeutEtre() { |
if(listeOuiNonPeutEtre == null) { |
Constantes i18n = Mediateur.i18nC; |
listeOuiNonPeutEtre = new HashMap<String, String[]>(); |
listeOuiNonPeutEtre.put("",new String[] {UtilString.mettrePremiereLettreEnMajuscule(i18n.neSaitPas()), "0"}); |
listeOuiNonPeutEtre.put("oui", new String[] {UtilString.mettrePremiereLettreEnMajuscule(i18n.oui()), "1"}); |
listeOuiNonPeutEtre.put("non", new String[] {UtilString.mettrePremiereLettreEnMajuscule(i18n.non()), "2"}); |
listeOuiNonPeutEtre.put("peut-etre", new String[] {UtilString.mettrePremiereLettreEnMajuscule(i18n.peutEtre()), "3"}); |
} |
return listeOuiNonPeutEtre; |
} |
public static String getValeurOntologie(Map<String, String[]> ontologie, String cle) { |
String retour = ""; |
if(ontologie.containsKey(cle)) { |
retour = ontologie.get(cle)[0]; |
} |
return retour; |
} |
public static ListStore<SimpleModelData> convertirVersListeStore(Map<String, String[]> aConvertir) { |
ListStore<SimpleModelData> listeConvertie = new ListStore<SimpleModelData>(); |
Iterator<String> it = aConvertir.keySet().iterator(); |
while (it.hasNext()) { |
String cle = it.next(); |
String[] valeurs = aConvertir.get(cle); |
listeConvertie.add(new SimpleModelData(cle, valeurs[0], valeurs[1])); |
} |
return listeConvertie; |
} |
} |
/trunk/src/org/tela_botanica/client/modeles/SimpleModelData.java |
---|
New file |
0,0 → 1,57 |
package org.tela_botanica.client.modeles; |
import java.util.Collection; |
import java.util.HashMap; |
import java.util.Map; |
import com.extjs.gxt.ui.client.data.ModelData; |
public class SimpleModelData implements ModelData { |
private Map<String, Object> modele = new HashMap<String, Object>(); |
public SimpleModelData(String cle, String valeur, String ordre) { |
this.set("cle", cle); |
this.set("valeur", valeur); |
this.set("ordre", ordre); |
} |
public String getValeur() { |
return (String)modele.get("valeur"); |
} |
public String getCle() { |
return (String)modele.get("cle"); |
} |
public String getOrdre() { |
return (String)modele.get("ordre"); |
} |
@Override |
public String get(String property) { |
return (String)modele.get(property); |
} |
@Override |
public Map<String, Object> getProperties() { |
return modele; |
} |
@Override |
public Collection<String> getPropertyNames() { |
return modele.keySet(); |
} |
@Override |
public String remove(String property) { |
return (String)modele.remove(property); |
} |
@Override |
public <Object> Object set(String property, Object value) { |
modele.put(property, value); |
return value; |
} |
} |
/trunk/src/org/tela_botanica/client/modeles/collection/CollectionBotanique.java |
---|
94,6 → 94,22 |
this.set("truk_unite_base", uniteBase); |
} |
// NB PLANCHES HERBIER |
public String getNbPlanchesHerbiers() { |
return renvoyerValeurCorrecte("nb_planches_herbiers"); |
} |
public void setNbPlanchesHerbiers(String nbPlanchesHerbiers) { |
this.set("nb_planches_herbiers", nbPlanchesHerbiers); |
} |
// NB ESPECES |
public String getNbEspeces() { |
return renvoyerValeurCorrecte("nb_especes"); |
} |
public void setNbEspeces(String nbEspeces) { |
this.set("nb_especes", nbEspeces); |
} |
// CONSERVATION PAPIER TYPE |
public String getConservationPapierType() { |
return renvoyerValeurCorrecte("truk_conservation_papier_type"); |