Rev 453 | Rev 552 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.client;
import java.util.Iterator;
import java.util.List;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.Collection;
import org.tela_botanica.client.modeles.CollectionAsyncDao;
import org.tela_botanica.client.modeles.Personne;
import org.tela_botanica.client.modeles.PersonneAsyncDao;
import org.tela_botanica.client.modeles.ProjetAsyncDao;
import org.tela_botanica.client.modeles.Publication;
import org.tela_botanica.client.modeles.PublicationAsyncDao;
import org.tela_botanica.client.modeles.Structure;
import org.tela_botanica.client.modeles.StructureAPersonne;
import org.tela_botanica.client.modeles.StructureAPersonneAsyncDao;
import org.tela_botanica.client.modeles.StructureAsyncDao;
import org.tela_botanica.client.modeles.StructureConservation;
import org.tela_botanica.client.modeles.StructureValorisation;
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.vues.ContenuVue;
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, null, region);
}
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();
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES PROJETS
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerProjets(Rafraichissable vue) {
ProjetAsyncDao projetsDao = new ProjetAsyncDao(vue);
projetsDao.selectionner();
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES STRUCTURES
//+----------------------------------------------------------------------------------------------------------------+
public void obtenirListeStructures(Rafraichissable vueARafraichir, String projetId) {
StructureAsyncDao sDao = new StructureAsyncDao();
sDao.selectionner(vueARafraichir, projetId, "");
}
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();
sDao.selectionner(vueARafraichir, 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, String idUtilisateur, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
StructureAsyncDao structureDao = new StructureAsyncDao();
structureDao.ajouter(vueARafraichir, idUtilisateur, structure, conservation, valorisation);
}
public void supprimerStructure(Rafraichissable vueARafraichir, String idUtilisateur, String idStr) {
StructureAsyncDao structureDao = new StructureAsyncDao();
structureDao.supprimer(vueARafraichir, idUtilisateur, idStr);
}
public void modifierStructure(Rafraichissable vueARafraichir, String utilisateurId, String structureId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
StructureAsyncDao structureDao = new StructureAsyncDao();
structureDao.modifier(vueARafraichir, utilisateurId, structureId, structure, conservation, valorisation);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION de la relation STRUCTURE A PERSONNE
public void selectionnerStructureAPersonne(Rafraichissable vueARafraichir, String idUtilisateur, String projetId, String structureId, String roleId) {
// Gestion des données de la table coel_structure_a_personne
if (structureId != null && roleId != null) {
StructureAPersonneAsyncDao sapDao = new StructureAPersonneAsyncDao();
sapDao.selectionner(vueARafraichir, idUtilisateur, structureId, roleId);
}
}
public void modifierStructureAPersonne(Rafraichissable vueARafraichir, String utilisateurId, StructureAPersonne personnel) {
StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
structureAPersonneDao.modifier(vueARafraichir, utilisateurId, personnel);
}
public void ajouterStructureAPersonne(Rafraichissable vueARafraichir, String utilisateurId, String structureId, StructureAPersonne personnel) {
StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
structureAPersonneDao.ajouter(vueARafraichir, utilisateurId, structureId, personnel);
}
public void supprimerStructureAPersonne(Rafraichissable vueARafraichir, String utilisateurId, String personnelId) {
StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
structureAPersonneDao.supprimer(vueARafraichir, utilisateurId, personnelId);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES COLLECTIONS
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerCollection(Rafraichissable vueARafraichir, String projetId, String collectionId) {
CollectionAsyncDao cDao = new CollectionAsyncDao();
cDao.selectionner(vueARafraichir, projetId, collectionId);
}
public void ajouterCollection(Rafraichissable vueARafraichir,
String utilisateurId, Collection collection) {
// TODO Auto-generated method stub
}
public void modifierCollection(Rafraichissable vueARafraichir,
String utilisateurId, Collection collection) {
// TODO Auto-generated method stub
}
public void supprimerCollection(Rafraichissable vueARafraichir,
String utilisateurId, String identifiantsCollectionSepareParVirgule) {
// TODO Auto-generated method stub
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES PERSONNES
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerPersonne(Rafraichissable vueARafraichir, String personneId, String projetId, String nomComplet) {
PersonneAsyncDao pDao = new PersonneAsyncDao(vueARafraichir);
pDao.selectionner(personneId, projetId, nomComplet);
}
public void supprimerPersonne(Rafraichissable vueARafraichir, String idStr) {
PersonneAsyncDao personneDao = new PersonneAsyncDao(vueARafraichir);
personneDao.supprimer(vueARafraichir, idStr);
}
public void ajouterPersonne(Rafraichissable vue, Personne personne) {
PersonneAsyncDao personneDao = new PersonneAsyncDao(vue);
personneDao.ajouter(vue, personne);
}
public void modifierPersonne(Rafraichissable vueARafraichir, Personne personne) {
PersonneAsyncDao personneDao = new PersonneAsyncDao(vueARafraichir);
personneDao.modifier(vueARafraichir, personne);
}
//+----------------------------------------------------------------------------------------------------------------+
// GESTION DES PUBLICATIONS
//+----------------------------------------------------------------------------------------------------------------+
public void selectionnerPublications(Rafraichissable vueARafraichir) {
PublicationAsyncDao lsDao = new PublicationAsyncDao(vueARafraichir);
lsDao.obtenirListePublication();
}
public void modifierPublication(Rafraichissable vueRafraichir, String utilisateurId, Publication publi) {
PublicationAsyncDao pDao = new PublicationAsyncDao(vueRafraichir);
pDao.modifierPublication(utilisateurId, publi);
}
public void ajouterPublication(Rafraichissable vueARafraichir, String utilisateurId, Publication publi) {
PublicationAsyncDao pDao = new PublicationAsyncDao(vueARafraichir);
pDao.ajouterPublication(utilisateurId, publi);
}
public void supprimerPublication(Rafraichissable vueARafraichir, String utilisateurId, List<Publication> publicationListe) {
String idPubs = "";
for(Iterator<Publication> it = publicationListe.iterator(); it.hasNext();) {
Publication pub = it.next();
idPubs += pub.getId();
if(it.hasNext()) {
idPubs += ",";
}
}
PublicationAsyncDao pDao = new PublicationAsyncDao(vueARafraichir);
pDao.supprimerPublication(utilisateurId, idPubs);
}
}