Rev 935 | Rev 989 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.client;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.Utilisateur;
import org.tela_botanica.client.modeles.UtilisateurAsyncDao;
import org.tela_botanica.client.modeles.ValeurListeAsyncDao;
import org.tela_botanica.client.modeles.collection.Collection;
import org.tela_botanica.client.modeles.collection.CollectionAPersonne;
import org.tela_botanica.client.modeles.collection.CollectionAPersonneAsyncDao;
import org.tela_botanica.client.modeles.collection.CollectionAPublication;
import org.tela_botanica.client.modeles.collection.CollectionAPublicationAsyncDao;
import org.tela_botanica.client.modeles.collection.CollectionAsyncDao;
import org.tela_botanica.client.modeles.personne.Personne;
import org.tela_botanica.client.modeles.personne.PersonneAsyncDao;
import org.tela_botanica.client.modeles.projet.Projet;
import org.tela_botanica.client.modeles.projet.ProjetAsyncDao;
import org.tela_botanica.client.modeles.publication.Publication;
import org.tela_botanica.client.modeles.publication.PublicationAPersonne;
import org.tela_botanica.client.modeles.publication.PublicationAPersonneAsyncDao;
import org.tela_botanica.client.modeles.publication.PublicationAsyncDao;
import org.tela_botanica.client.modeles.structure.Structure;
import org.tela_botanica.client.modeles.structure.StructureAPersonne;
import org.tela_botanica.client.modeles.structure.StructureAPersonneAsyncDao;
import org.tela_botanica.client.modeles.structure.StructureAsyncDao;
import org.tela_botanica.client.modeles.structure.StructureConservation;
import org.tela_botanica.client.modeles.structure.StructureValorisation;
import com.extjs.gxt.ui.client.Registry;
import com.google.gwt.core.client.GWT;
// TODO : le transformer en SINGLETON
public class Modele {
public Modele() {
Registry.register(RegistreId.MODELE, this);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES VALEURS ET LISTES
//+----------------------------------------------------------------------------------------------------------------+
public void obtenirListeValeurs(Rafraichissable vue, Integer id) {
ValeurListeAsyncDao lsDao = new ValeurListeAsyncDao(vue);
lsDao.obtenirListe(id);
}
public void obtenirListeRegion(Rafraichissable vue, Integer id, String region) {
ValeurListeAsyncDao lsDao = new ValeurListeAsyncDao(vue);
lsDao.selectionner("abv", id, region, null);
}
public void obtenirValeur(Rafraichissable vue, String type, Integer id, String identifiant) {
ValeurListeAsyncDao lsDao = new ValeurListeAsyncDao(vue);
lsDao.selectionner(type, id, null, identifiant);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES UTILISATEURS
//+----------------------------------------------------------------------------------------------------------------+
public void connecterUtilisateur(Rafraichissable vue, String login, String mdp) {
Utilisateur utilisateur = (Utilisateur) Registry.get(RegistreId.UTILISATEUR_COURANT);
utilisateur.setLogin(login);
utilisateur.setMotDePasse(mdp);
UtilisateurAsyncDao uDao = new UtilisateurAsyncDao(vue);
uDao.connecterUtilisateur();
}
public void deconnecterUtilisateur(Rafraichissable vue) {
UtilisateurAsyncDao uDao = new UtilisateurAsyncDao(vue);
uDao.deconnecterUtilisateur();
}
public void accepterLicence(Rafraichissable vue) {
UtilisateurAsyncDao uDao = new UtilisateurAsyncDao(vue);
uDao.accepterLicence();
}
public void modifierUtilisateur(Rafraichissable vueARafraichir, Utilisateur utilisateur) {
PersonneAsyncDao pAdao = new PersonneAsyncDao(vueARafraichir);
Personne personne = new Personne();
personne.setId(utilisateur.getId());
personne.setPrenom(utilisateur.getPrenom());
personne.setNom(utilisateur.getNom());
personne.setNomComplet(utilisateur.getNomComplet());
personne.setParametre(utilisateur.getParametre());
pAdao.modifier(personne);
}
public void mettreAJourPersonneAnnuaire(Rafraichissable vueARafraichir, Utilisateur utilisateur) {
PersonneAsyncDao pAdao = new PersonneAsyncDao(vueARafraichir);
HashMap<String, String> infosAnnuaire = utilisateur.getInfosAnnuaire();
Personne personne = new Personne();
personne.setId(utilisateur.getId());
personne.setNom(infosAnnuaire.get("nom"));
personne.setPrenom(infosAnnuaire.get("prenom"));
personne.setFmtNomComplet("", "");
personne.setCourriel(infosAnnuaire.get("courriel"));
personne.set("ce_annuaire_tela", infosAnnuaire.get("id"));
personne.set("mot_de_passe", infosAnnuaire.get("mot_de_passe"));
personne.set("code_postal", infosAnnuaire.get("code_postal"));
personne.set("ville", infosAnnuaire.get("ville"));
pAdao.modifier(personne);
/*
* "id":"11623","nom":"DUCHE","prenom":"Gr\u00e9goire","mot_de_passe":"9d146bd95317a64b83b5e06cf752da2d",
* "courriel":"gregoire@tela-botanica.org","code_postal":"34000","ville":"MONTPELLIER","departement":"34",
* "pays":"FR","date_inscription":"2009-05-11 00:00:00"
*
*/
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES PROJETS
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerProjet(Rafraichissable vueARafraichir, String projetId) {
ProjetAsyncDao pADAO = new ProjetAsyncDao(vueARafraichir);
pADAO.selectionner(projetId);
}
public void ajouterProjet(Rafraichissable vueARafraichir, Projet projetCollecte) {
ProjetAsyncDao pADAO = new ProjetAsyncDao(vueARafraichir);
pADAO.ajouter(projetCollecte);
}
public void modifierProjet(Rafraichissable vueARafraichir, Projet projetCollecte) {
ProjetAsyncDao pADAO = new ProjetAsyncDao(vueARafraichir);
pADAO.modifier(projetCollecte);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES STRUCTURES
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerStructure(Rafraichissable vueARafraichir, String projetId, String structureId) {
// Gestion des données des tables coel_structure, coel_structure_conservation et coel_structure_valorisation
StructureAsyncDao sDao = new StructureAsyncDao(vueARafraichir);
sDao.selectionner(projetId, structureId);
}
/** Lance la creation d'une Structure
* @param vueARafraichir la vue demandant a être rafraichie
* @param structure les données de la structure
*/
public void ajouterStructure(Rafraichissable vueARafraichir, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
StructureAsyncDao structureDao = new StructureAsyncDao(vueARafraichir);
structureDao.ajouter(structure, conservation, valorisation);
}
public void supprimerStructure(Rafraichissable vueARafraichir, String idStr) {
StructureAsyncDao structureDao = new StructureAsyncDao(vueARafraichir);
structureDao.supprimer(idStr);
}
public void modifierStructure(Rafraichissable vueARafraichir, String structureId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
StructureAsyncDao structureDao = new StructureAsyncDao(vueARafraichir);
structureDao.modifier(structureId, structure, conservation, valorisation);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION de la relation STRUCTURE A PERSONNE
public void selectionnerStructureAPersonne(Rafraichissable vueARafraichir, String structureId, String roleId) {
// Gestion des données de la table coel_structure_a_personne
if (structureId != null && roleId != null) {
StructureAPersonneAsyncDao sapDao = new StructureAPersonneAsyncDao(vueARafraichir);
sapDao.selectionner(structureId, roleId);
}
}
public void modifierStructureAPersonne(Rafraichissable vueARafraichir, StructureAPersonne personnel) {
StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao(vueARafraichir);
structureAPersonneDao.modifier(personnel);
}
public void ajouterStructureAPersonne(Rafraichissable vueARafraichir, String structureId, StructureAPersonne personnel) {
StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao(vueARafraichir);
structureAPersonneDao.ajouter(structureId, personnel);
}
public void supprimerStructureAPersonne(Rafraichissable vueARafraichir, String personnelId) {
StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao(vueARafraichir);
structureAPersonneDao.supprimer(personnelId);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES COLLECTIONS
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerCollection(Rafraichissable vueARafraichir, String projetId, String collectionId) {
CollectionAsyncDao cDao = new CollectionAsyncDao(vueARafraichir);
cDao.selectionner(projetId, collectionId);
}
public void ajouterCollection(Rafraichissable vueARafraichir, Collection collection) {
CollectionAsyncDao cDao = new CollectionAsyncDao(vueARafraichir);
cDao.ajouter(collection);
}
public void modifierCollection(Rafraichissable vueARafraichir, Collection collection) {
CollectionAsyncDao cDao = new CollectionAsyncDao(vueARafraichir);
cDao.modifier(collection);
}
public void supprimerCollection(Rafraichissable vueARafraichir, String identifiantsCollectionSepareParVirgule) {
CollectionAsyncDao cDao = new CollectionAsyncDao(vueARafraichir);
cDao.supprimer(identifiantsCollectionSepareParVirgule);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION de la relation COLLECTION A PERSONNE
public void selectionnerCollectionAPersonne(Rafraichissable vueARafraichir, String collectionId, String roleId) {
CollectionAPersonneAsyncDao sapDao = new CollectionAPersonneAsyncDao(vueARafraichir);
sapDao.selectionner(collectionId, roleId);
}
public void modifierCollectionAPersonne(Rafraichissable vueARafraichir, CollectionAPersonne collectionAPersonne) {
CollectionAPersonneAsyncDao collectionAPersonneDao = new CollectionAPersonneAsyncDao(vueARafraichir);
collectionAPersonneDao.modifier(collectionAPersonne);
}
public void ajouterCollectionAPersonne(Rafraichissable vueARafraichir, String collectionId, CollectionAPersonne collectionAPersonne) {
CollectionAPersonneAsyncDao collectionAPersonneDao = new CollectionAPersonneAsyncDao(vueARafraichir);
collectionAPersonneDao.ajouter(collectionId, collectionAPersonne);
}
public void supprimerCollectionAPersonne(Rafraichissable vueARafraichir, String collectionAPersonneId) {
CollectionAPersonneAsyncDao collectionAPersonneDao = new CollectionAPersonneAsyncDao(vueARafraichir);
collectionAPersonneDao.supprimer(collectionAPersonneId);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION de la relation COLLECTION A PUBLICATION
public void selectionnerCollectionAPublication(Rafraichissable vueARafraichir, String collectionId) {
CollectionAPublicationAsyncDao capDao = new CollectionAPublicationAsyncDao(vueARafraichir);
capDao.selectionner(collectionId);
}
public void modifierCollectionAPublication(Rafraichissable vueARafraichir, CollectionAPublication collectionAPublication) {
CollectionAPublicationAsyncDao collectionAPublicationDao = new CollectionAPublicationAsyncDao(vueARafraichir);
collectionAPublicationDao.modifier(collectionAPublication);
}
public void ajouterCollectionAPublication(Rafraichissable vueARafraichir, String collectionId, CollectionAPublication collectionAPublication) {
CollectionAPublicationAsyncDao collectionAPublicationDao = new CollectionAPublicationAsyncDao(vueARafraichir);
collectionAPublicationDao.ajouter(collectionId, collectionAPublication);
}
public void supprimerCollectionAPublication(Rafraichissable vueARafraichir, String collectionAPublicationId) {
CollectionAPublicationAsyncDao collectionAPublicationDao = new CollectionAPublicationAsyncDao(vueARafraichir);
collectionAPublicationDao.supprimer(collectionAPublicationId);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES PERSONNES
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerPersonne(Rafraichissable vueARafraichir, String personneId, String projetId, String nomComplet, int start, int nbElements) {
PersonneAsyncDao pDao = new PersonneAsyncDao(vueARafraichir);
pDao.selectionner(personneId, projetId, nomComplet, start, nbElements);
}
public void supprimerPersonne(Rafraichissable vueARafraichir, String idPersonneSepareParVirgule) {
PersonneAsyncDao personneDao = new PersonneAsyncDao(vueARafraichir);
personneDao.supprimer(idPersonneSepareParVirgule);
}
public void ajouterPersonne(Rafraichissable vue, Personne personne) {
PersonneAsyncDao personneDao = new PersonneAsyncDao(vue);
personneDao.ajouter(personne);
}
public void modifierPersonne(Rafraichissable vueARafraichir, Personne personne) {
PersonneAsyncDao personneDao = new PersonneAsyncDao(vueARafraichir);
personneDao.modifier(personne);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES PUBLICATIONS
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerPublication(Rafraichissable vueARafraichir, String publicationId, String projetId, String nomComplet) {
PublicationAsyncDao lsDao = new PublicationAsyncDao(vueARafraichir);
lsDao.selectionner(publicationId, projetId, nomComplet);
}
public void modifierPublication(Rafraichissable vueRafraichir, Publication publication) {
PublicationAsyncDao pDao = new PublicationAsyncDao(vueRafraichir);
pDao.modifier(publication);
}
public void ajouterPublication(Rafraichissable vueARafraichir, Publication publication) {
PublicationAsyncDao pDao = new PublicationAsyncDao(vueARafraichir);
pDao.ajouter(publication);
}
public void supprimerPublication(Rafraichissable vueARafraichir, String idPublicationSeparesParVirgule) {
PublicationAsyncDao pDao = new PublicationAsyncDao(vueARafraichir);
pDao.supprimer(idPublicationSeparesParVirgule);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION de la relation PUBLICATION A PERSONNE
public void selectionPublicationAPersonne(Rafraichissable vueARafraichir, String publicationId, String personnesId, String roleId) {
PublicationAPersonneAsyncDao paDao = new PublicationAPersonneAsyncDao(vueARafraichir);
paDao.selectionner(publicationId, personnesId, roleId);
}
public void ajouterPublicationAPersonne(Rafraichissable vueARafraichir, String publicationId, String personnesId, String roleId) {
PublicationAPersonneAsyncDao paDao = new PublicationAPersonneAsyncDao(vueARafraichir);
paDao.ajouter(publicationId, personnesId, roleId);
}
public void supprimerPublicationAPersonne(Rafraichissable vueARafraichir, String publicationsAPersonneId) {
PublicationAPersonneAsyncDao publicationAPersonneDao = new PublicationAPersonneAsyncDao(vueARafraichir);
publicationAPersonneDao.supprimer(publicationsAPersonneId);
}
public void supprimerProjet(Rafraichissable vueARafraichir,
List<Projet> projetListe) {
String projetsId = "";
for(Iterator<Projet> it = projetListe.iterator(); it.hasNext();) {
Projet proj = it.next();
projetsId += proj.getId();
if(it.hasNext()) {
projetsId += ",";
}
}
ProjetAsyncDao pADAO = new ProjetAsyncDao(vueARafraichir);
pADAO.supprimer(projetsId);
}
}