Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 2608 → Rev 2609

/trunk/src/org/tela_botanica/client/observation/ObservationModele.java
44,7 → 44,6
* Booleen indiquant si le médiateur est instancié (l'instance doit être unique donc le booleen est static)
*/
private static boolean estInstancie = false ;
private static ObservationModele thisModele = null ;
/**
55,32 → 54,20
/**
* Le médiateur associé au modèle
*/
private ObservationMediateur observationMediateur = null ;
/**
* La liste des mots clés en cours
*/
private HashMap<String, String> motsCles = new HashMap<String, String>(0);
private HashMap<String, String> motsCles = new HashMap<String, String>(0);
private Tree arbreMotsCles = new Tree() ;
/**
* La liste des observations affichées en cours (verifier utilité)
*/
private ListeObservation cacheObservation = new ListeObservation(0) ;
/**
* DAO dont le resultat peut etre mis en cache
*
*/
private ListeReferentielNomAsynchroneDAO nomDAO=null;
private ListeReferentielLocaliteAsynchroneDAO refDAO=null;
private ListeReferentielPersoAsynchroneDAO refPersoDAO=null;
 
/**
* Retourne une instance de manière unique
* @param im le médiateur à associer
* @return l'instance du modèle
167,54 → 154,7
loaDAO.obtenirListeObservation(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), criteres2);
}
 
/**
* Obtenir une liste de localites
* @param r
* @param critere
*/
public void obtenirListeReferentielLocalite(Rafraichissable r, String critere) {
if (refDAO==null) {
refDAO=new ListeReferentielLocaliteAsynchroneDAO(this);
}
refDAO.obtenirListeDonnees(r, critere);
}
/**
* Obtenir une liste de valeur vis à vis d'un champ donné pour un utilisateur
* @param r
* @param critere
*/
public void obtenirListeReferentielPerso(Rafraichissable r, TypesReferentiels referentiel, String critere) {
if (refPersoDAO==null) {
refPersoDAO=new ListeReferentielPersoAsynchroneDAO(this);
}
refPersoDAO.setRefDemande(referentiel);
refPersoDAO.obtenirListeDonnees(r,Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), critere);
}
/**
* Obtenir une liste de nom scientifique de plante
* @param r
* @param critere
*/
public void obtenirListeReferentielNom(Rafraichissable r, String referentiel, String critere) {
if (nomDAO==null) {
nomDAO=new ListeReferentielNomAsynchroneDAO(this);
}
nomDAO.obtenirListeDonnees(r, referentiel, critere);
}
/**
*
* Lance la creation d'une observation
* @param r : la vue demandeuse de donnee
221,11 → 161,9
* @param critere : les criteres de selection
*/
public void ajouterObservation(Rafraichissable r, Observation obs) {
public void ajouterObservation(Rafraichissable r, Observation obs) {
ObservationAsynchroneDAO obsDAO=new ObservationAsynchroneDAO(this);
obsDAO.ajouter(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), obs);
obsDAO.ajouter(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), obs);
}
 
/**
234,24 → 172,17
* @param r : la vue demandeuse de donnee
* @param critere : les criteres de selection
*/
public void modifierObservation(Rafraichissable r, Observation obs) {
public void modifierObservation(Rafraichissable r, Observation obs) {
ObservationAsynchroneDAO obsDAO=new ObservationAsynchroneDAO(this);
obsDAO.modifier(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), obs);
obsDAO.modifier(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), obs);
}
 
 
public void modifierObservationEnMasse(
Rafraichissable r, Observation obs) {
ListeObservationAsynchroneDAO liObsDAO=new ListeObservationAsynchroneDAO(this);
liObsDAO.modifierEnMasse(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), obs);
liObsDAO.modifierEnMasse(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), obs);
}
 
 
public void supprimerObservation(Rafraichissable r, String numeroOrdre) {
ObservationAsynchroneDAO obsDao = new ObservationAsynchroneDAO(this) ;
261,8 → 192,6
}
 
 
/**
* Accesseur pour la configuration en cours d'utilisation
*
269,10 → 198,8
* @return la configuration
*/
public Configuration getConfig() {
 
return config;
}
 
/**
* Obtenir des informations de repartition relative a un numero nomenclatural
279,8 → 206,6
* @param r
* @param numeroNomenclaturalSaisiObservation
*/
 
 
public void obtenirImageInformationRepartition(Rafraichissable r, String referentielTaxo, String numeroNomenclaturalSaisiObservation) {
ImageInformationRepartitionAsynchroneDAO repDAO= new ImageInformationRepartitionAsynchroneDAO(this);
294,13 → 219,9
* @param r
* @param numeroNomenclaturalSaisiObservation
*/
 
public void obtenirImageGenerique( Rafraichissable r, String referentielTaxo, String numeroNomenclaturalSaisiObservation) {
public void obtenirImageGenerique( Rafraichissable r, String referentielTaxo, String numeroNomenclaturalSaisiObservation) {
ImageGeneriqueVueAsynchroneDAO imgDAO= new ImageGeneriqueVueAsynchroneDAO(this);
imgDAO.obtenirURLImage(r, referentielTaxo, numeroNomenclaturalSaisiObservation);
imgDAO.obtenirURLImage(r, referentielTaxo, numeroNomenclaturalSaisiObservation);
}
 
 
308,12 → 229,9
* Obtenir la liste de l'ensemble des entites geographiques associes aux observation d'un utilisateur
* @param r
*/
 
public void obtenirListeEntiteGeographique(Rafraichissable r) {
 
ListeEntiteGeographiqueObservationAsynchroneDAO entDAO = new ListeEntiteGeographiqueObservationAsynchroneDAO(this);
entDAO.obtenirListeEntitesGeographiques(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte());
 
}
 
 
321,18 → 239,14
public void obtenirDatesObservation(
Rafraichissable r) {
ListeDateObservationAsynchroneDAO ldoDAO = new ListeDateObservationAsynchroneDAO(this);
ldoDAO.obtenirListeDate(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte());
ldoDAO.obtenirListeDate(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte());
}
 
 
 
public void obtenirLiaisonImage(Rafraichissable r,
String idObservation) {
public void obtenirLiaisonImage(Rafraichissable r, String idObservation) {
LienImageAsynchroneDAO liaDAO = new LienImageAsynchroneDAO(this) ;
liaDAO.obtenirLiaisonsObservationsImages(r, idObservation,Utilisateur.getInstance().getIdentifiantUtilisateurConsulte()) ;
}
 
 
365,32 → 279,24
 
 
 
public void supprimerLiaisonImages(String idImg, String idObs) {
public void supprimerLiaisonImages(String idImg, String idObs) {
LienImageAsynchroneDAO lienDAO = new LienImageAsynchroneDAO(this) ;
lienDAO.supprimerLienImageObservation(idImg, idObs) ;
lienDAO.supprimerLienImageObservation(idImg, idObs) ;
}
 
public void supprimerListeObservation(Rafraichissable r,
String numObs) {
public void supprimerListeObservation(Rafraichissable r, String numObs) {
ListeObservationAsynchroneDAO lioaDAO = new ListeObservationAsynchroneDAO(this);
lioaDAO.supprimerListeObservation(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), numObs);
lioaDAO.supprimerListeObservation(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), numObs);
}
 
public void transmettreListeObservation(
Rafraichissable r, String numObsapl, boolean publier) {
public void transmettreListeObservation(Rafraichissable r, String numObsapl, boolean publier) {
TransmissionObservationAsynchroneDAO toaDAO = new TransmissionObservationAsynchroneDAO(this);
toaDAO.transmettreObservations(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), numObsapl, publier);
toaDAO.transmettreObservations(r, Utilisateur.getInstance().getIdentifiantUtilisateurConsulte(), numObsapl, publier);
}
 
public void analyserHistorique(Rafraichissable r,String anum) {
public void analyserHistorique(Rafraichissable r,String anum) {
NomRetenuAsynchroneDAO nraDAO = new NomRetenuAsynchroneDAO(this);
nraDAO.obtenirNomRetenu(r, anum);
nraDAO.obtenirNomRetenu(r, anum);
}
 
 
397,24 → 303,19
 
public void importerObservations() {
ImportObservationAsynchroneDAO ioDAO = new ImportObservationAsynchroneDAO(this);
ioDAO.importerObservations();
ioDAO.importerObservations();
}
 
 
 
public void obtenirArbreMotsCles(Rafraichissable r) {
public void obtenirArbreMotsCles(Rafraichissable r) {
MotsClesAsynchroneDAO mcoDAO = new MotsClesAsynchroneDAO("obs");
mcoDAO.obtenirListeMotsCles(this);
mcoDAO.obtenirListeMotsCles(this);
}
 
@Override
public void rafraichir(Object nouvelleDonnees,
boolean repandreRaffraichissement) {
if(nouvelleDonnees instanceof JSONArray) {
public void rafraichir(Object nouvelleDonnees, boolean repandreRaffraichissement) {
if(nouvelleDonnees instanceof JSONArray) {
JSONArray donneesArbre = (JSONArray)nouvelleDonnees;
Object[] arbreEtCorrespondancesIds = MotsClesUtilitaire.construireArbre("Projets", "racine_obs", donneesArbre, false);
431,7 → 332,6
if(nouvelleDonnees instanceof Observation) {
observationMediateur.obtenirNombreObservation();
}
}
 
/**
/trunk/src/org/tela_botanica/client/observation/ObservationMediateur.java
1,12 → 1,7
package org.tela_botanica.client.observation;
 
 
 
// TODO : systematiser les onQuelquechose, appelle depuis les vues
import java.util.Map;
 
import org.tela_botanica.client.CarnetEnLigneMediateur;
import org.tela_botanica.client.cel2;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.dao.InformationLocaliteDAO;
import org.tela_botanica.client.modeles.objets.Configuration;
15,8 → 10,6
import org.tela_botanica.client.modeles.objets.ListeObservation;
import org.tela_botanica.client.modeles.objets.Observation;
import org.tela_botanica.client.modeles.objets.Utilisateur;
import org.tela_botanica.client.modeles.objets.ListeReferentielPerso.TypesReferentiels;
import org.tela_botanica.client.util.Util;
import org.tela_botanica.client.vues.observation.CartographieObservationVue;
import org.tela_botanica.client.vues.observation.FormulaireImportObservationVue;
import org.tela_botanica.client.vues.observation.FormulaireSaisieObservationVue;
31,7 → 24,6
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.History;
import com.google.gwt.user.client.Window;
import com.google.maps.gwt.client.LatLng;
import com.gwtext.client.core.EventObject;
import com.gwtext.client.core.Ext;
import com.gwtext.client.core.ExtElement;
51,7 → 43,6
import com.gwtext.client.widgets.layout.FitLayout;
import com.gwtext.client.widgets.layout.RowLayout;
import com.gwtext.client.widgets.layout.RowLayoutData;
import com.gwtext.client.widgets.map.LatLonPoint;
import com.gwtext.client.widgets.tree.TreeNode;
 
 
100,7 → 91,6
/**
* Saisie des Observations
*/
private FormulaireSaisieObservationVue formulaireSaisieObservationVue=null;
109,7 → 99,6
* Import des observations depuis un fichier
*
*/
private FormulaireImportObservationVue formImportObs=null;
466,13 → 455,13
}
}
public void obtenirImageInformationExternes(String referentielTaxo, String numeroNomenclaturalSaisiObservation) {
public void obtenirImageInformationExternes(String referentielTaxo, String numeroNomenclaturalSaisiObservation) {
if(details.isVisible()) {
if(GWT.isScript()) {
masquerChargementInfosObservations() ;
}
liExtVue.rafraichir(numeroNomenclaturalSaisiObservation, false);
String[] infosRefNom = {numeroNomenclaturalSaisiObservation, referentielTaxo};
liExtVue.rafraichir(infosRefNom, false);
observationModele.obtenirImageInformationRepartition(informationRepartitionVue, referentielTaxo, numeroNomenclaturalSaisiObservation) ;
observationModele.obtenirImageGenerique(imageGeneriqueVue, referentielTaxo, numeroNomenclaturalSaisiObservation) ;
}
611,46 → 600,7
return listeObservation.getStore().getCount() > 0;
}
// Assistants de saisie
/**
*
* Lance un appel de recherche d'une liste de localite correspondant aux criteres de selection
* @param r : la vue demandeuse de donnee
* @param critere : les criteres de selection
*/
public void obtenirListeReferentielLocalite(Rafraichissable r, String critere) {
observationModele.obtenirListeReferentielLocalite(r,critere) ;
}
// Assistants de saisie
/**
*
* Lance un appel de recherche d'une liste de résultats
* correspondant aux criteres de selections pour un référentiel donné
* @param r : la vue demandeuse de donnee
* @param referentiel : le référentiel demandé
* @param critere : les criteres de selection
*/
public void obtenirListeReferentielPerso(Rafraichissable r, TypesReferentiels referentiel, String critere) {
observationModele.obtenirListeReferentielPerso(r, referentiel, critere) ;
}
/**
*
* Lance un appel de recherche d'une liste de nom scientifique correspondant aux criteres de selectionne
* @param r : la vue demandeuse de donnee
* @param critere : les criteres de selection
*/
public void obtenirListeReferentielNom(Rafraichissable r,String referentiel, String critere) {
 
observationModele.obtenirListeReferentielNom(r, referentiel, critere) ;
}
// Etat du syteme
/**
* C'est dans cette fonction que doivent être renvoyé les valeurs des filtres
* sous forme de tableau [nom, valeur]