Subversion Repositories eFlore/Applications.coel

Rev

Rev 231 | Rev 244 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 231 Rev 237
1
package org.tela_botanica.client;
1
package org.tela_botanica.client;
-
 
2
 
-
 
3
import java.util.Iterator;
-
 
4
import java.util.List;
2
 
5
 
3
import org.tela_botanica.client.interfaces.Rafraichissable;
6
import org.tela_botanica.client.interfaces.Rafraichissable;
4
import org.tela_botanica.client.modeles.PersonneListe;
7
import org.tela_botanica.client.modeles.PersonneListe;
5
import org.tela_botanica.client.modeles.PersonnesAsyncDao;
8
import org.tela_botanica.client.modeles.PersonnesAsyncDao;
6
import org.tela_botanica.client.modeles.ProjetsListe;
9
import org.tela_botanica.client.modeles.ProjetsListe;
7
import org.tela_botanica.client.modeles.ProjetsListeAsyncDao;
10
import org.tela_botanica.client.modeles.ProjetsListeAsyncDao;
8
import org.tela_botanica.client.modeles.Publication;
11
import org.tela_botanica.client.modeles.Publication;
9
import org.tela_botanica.client.modeles.PublicationListe;
12
import org.tela_botanica.client.modeles.PublicationListe;
10
import org.tela_botanica.client.modeles.PublicationListeAsyncDao;
13
import org.tela_botanica.client.modeles.PublicationListeAsyncDao;
11
import org.tela_botanica.client.modeles.Structure;
14
import org.tela_botanica.client.modeles.Structure;
12
import org.tela_botanica.client.modeles.StructureAPersonne;
15
import org.tela_botanica.client.modeles.StructureAPersonne;
13
import org.tela_botanica.client.modeles.StructureAPersonneAsyncDao;
16
import org.tela_botanica.client.modeles.StructureAPersonneAsyncDao;
14
import org.tela_botanica.client.modeles.StructureAPersonneListe;
17
import org.tela_botanica.client.modeles.StructureAPersonneListe;
15
import org.tela_botanica.client.modeles.StructureAsyncDao;
18
import org.tela_botanica.client.modeles.StructureAsyncDao;
16
import org.tela_botanica.client.modeles.StructureConservation;
19
import org.tela_botanica.client.modeles.StructureConservation;
17
import org.tela_botanica.client.modeles.StructureListe;
20
import org.tela_botanica.client.modeles.StructureListe;
18
import org.tela_botanica.client.modeles.StructureValorisation;
21
import org.tela_botanica.client.modeles.StructureValorisation;
19
import org.tela_botanica.client.modeles.Utilisateur;
22
import org.tela_botanica.client.modeles.Utilisateur;
20
import org.tela_botanica.client.modeles.UtilisateurAsyncDao;
23
import org.tela_botanica.client.modeles.UtilisateurAsyncDao;
21
import org.tela_botanica.client.modeles.ValeurListe;
24
import org.tela_botanica.client.modeles.ValeurListe;
22
import org.tela_botanica.client.modeles.ValeurListeAsyncDao;
25
import org.tela_botanica.client.modeles.ValeurListeAsyncDao;
23
 
26
 
24
import com.extjs.gxt.ui.client.Registry;
27
import com.extjs.gxt.ui.client.Registry;
25
import com.google.gwt.core.client.GWT;
28
import com.google.gwt.core.client.GWT;
26
import com.google.gwt.user.client.Window;
29
import com.google.gwt.user.client.Window;
27
 
30
 
28
// TODO : le transformer en SINGLETON
31
// TODO : le transformer en SINGLETON
29
public class Modele implements Rafraichissable {
32
public class Modele implements Rafraichissable {
30
 
33
 
31
	public Modele() {
34
	public Modele() {
32
		Registry.register(RegistreId.MODELE, this);
35
		Registry.register(RegistreId.MODELE, this);
33
	}
36
	}
34
 
37
 
35
	public void rafraichir(Object nouvelleDonnees) {
38
	public void rafraichir(Object nouvelleDonnees) {
36
		if (nouvelleDonnees instanceof StructureListe) {
39
		if (nouvelleDonnees instanceof StructureListe) {
37
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListeStructures((StructureListe) nouvelleDonnees);
40
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListeStructures((StructureListe) nouvelleDonnees);
38
		} else if (nouvelleDonnees instanceof Utilisateur) {
41
		} else if (nouvelleDonnees instanceof Utilisateur) {
39
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).mettreAJourEtatIdentification((Utilisateur) nouvelleDonnees);
42
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).mettreAJourEtatIdentification((Utilisateur) nouvelleDonnees);
40
		} else if (nouvelleDonnees instanceof ValeurListe) {
43
		} else if (nouvelleDonnees instanceof ValeurListe) {
41
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListeValeurs((ValeurListe) nouvelleDonnees);
44
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListeValeurs((ValeurListe) nouvelleDonnees);
42
		} else if (nouvelleDonnees instanceof PublicationListe) {
45
		} else if (nouvelleDonnees instanceof PublicationListe) {
43
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListePublication((PublicationListe) nouvelleDonnees);
46
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListePublication((PublicationListe) nouvelleDonnees);
44
		} else if (nouvelleDonnees instanceof PersonneListe) {
47
		} else if (nouvelleDonnees instanceof PersonneListe) {
45
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListePersonnes((PersonneListe) nouvelleDonnees);
48
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListePersonnes((PersonneListe) nouvelleDonnees);
46
		} else if (nouvelleDonnees instanceof ProjetsListe)	{
49
		} else if (nouvelleDonnees instanceof ProjetsListe)	{
47
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListeProjets((ProjetsListe) nouvelleDonnees);			
50
			((Mediateur) Registry.get(RegistreId.MEDIATEUR)).afficherListeProjets((ProjetsListe) nouvelleDonnees);			
48
		}
51
		}
49
	}
52
	}
50
	
53
	
51
	//+----------------------------------------------------------------------------------------------------------------+
54
	//+----------------------------------------------------------------------------------------------------------------+
52
	//												GESTION DES VALEURS ET LISTES
55
	//												GESTION DES VALEURS ET LISTES
53
	//+----------------------------------------------------------------------------------------------------------------+
56
	//+----------------------------------------------------------------------------------------------------------------+
54
	
57
	
55
	public void obtenirListeValeurs(Integer id) {
58
	public void obtenirListeValeurs(Integer id) {
56
		ValeurListeAsyncDao lsDao = new ValeurListeAsyncDao(this);
59
		ValeurListeAsyncDao lsDao = new ValeurListeAsyncDao(this);
57
		lsDao.obtenirListe(id);
60
		lsDao.obtenirListe(id);
58
	}
61
	}
59
	
62
	
60
	//+----------------------------------------------------------------------------------------------------------------+
63
	//+----------------------------------------------------------------------------------------------------------------+
61
	//												GESTION DES UTILISATEURS
64
	//												GESTION DES UTILISATEURS
62
	//+----------------------------------------------------------------------------------------------------------------+
65
	//+----------------------------------------------------------------------------------------------------------------+
-
 
66
	
-
 
67
	// pour obtenir la liste de personne et la fournir à des éléments spécifiques
-
 
68
	public void obtenirListePersonnes(Rafraichissable r) {
-
 
69
		// Lance le service JREST associé au personne via la class PersonneListeAsyncDAO
-
 
70
		PersonnesAsyncDao plDao = new PersonnesAsyncDao(r);
-
 
71
		plDao.obtenirListePersonnes();
-
 
72
	}
63
 
73
 
64
	public void connecterUtilisateur(String login, String mdp) {
74
	public void connecterUtilisateur(String login, String mdp) {
65
		Utilisateur utilisateur = (Utilisateur) Registry.get(RegistreId.UTILISATEUR);
75
		Utilisateur utilisateur = (Utilisateur) Registry.get(RegistreId.UTILISATEUR);
66
		utilisateur.setLogin(login);
76
		utilisateur.setLogin(login);
67
		utilisateur.setMotDePasse(mdp);
77
		utilisateur.setMotDePasse(mdp);
68
		UtilisateurAsyncDao uDao = new UtilisateurAsyncDao(this);
78
		UtilisateurAsyncDao uDao = new UtilisateurAsyncDao(this);
69
		uDao.connecterUtilisateur();		
79
		uDao.connecterUtilisateur();		
70
	}
80
	}
71
	
81
	
72
	public void deconnecterUtilisateur() {
82
	public void deconnecterUtilisateur() {
73
		UtilisateurAsyncDao uDao = new UtilisateurAsyncDao(this);
83
		UtilisateurAsyncDao uDao = new UtilisateurAsyncDao(this);
74
		uDao.deconnecterUtilisateur();		
84
		uDao.deconnecterUtilisateur();		
75
	}
85
	}
76
	
86
	
77
	//+----------------------------------------------------------------------------------------------------------------+
87
	//+----------------------------------------------------------------------------------------------------------------+
78
	//												GESTION DES STRUCTURES
88
	//												GESTION DES STRUCTURES
79
	//+----------------------------------------------------------------------------------------------------------------+
89
	//+----------------------------------------------------------------------------------------------------------------+
80
 
90
 
81
	public void obtenirListeStructures(Rafraichissable r, String utilisateurId) {
91
	public void obtenirListeStructures(Rafraichissable r, String utilisateurId) {
82
		StructureAsyncDao sDao = new StructureAsyncDao();
92
		StructureAsyncDao sDao = new StructureAsyncDao();
83
		sDao.selectionner(r, utilisateurId, "");
93
		sDao.selectionner(r, utilisateurId, "");
84
	}
94
	}
85
	
95
	
86
	public void selectionnerStructure(Rafraichissable r, String idUtilisateur, String idStr, String idRole) {
96
	public void selectionnerStructure(Rafraichissable r, String idUtilisateur, String idStr, String idRole) {
87
		// Gestion des données des tables coel_structure, coel_structure_conservation et coel_structure_valorisation 
97
		// Gestion des données des tables coel_structure, coel_structure_conservation et coel_structure_valorisation 
88
		StructureAsyncDao sDao = new StructureAsyncDao();
98
		StructureAsyncDao sDao = new StructureAsyncDao();
89
		sDao.selectionner(r, idUtilisateur, idStr);
99
		sDao.selectionner(r, idUtilisateur, idStr);
90
		// Gestion des données de la table coel_structure_a_personne
100
		// Gestion des données de la table coel_structure_a_personne
91
		if (idStr != null && idRole != null) {
101
		if (idStr != null && idRole != null) {
92
			StructureAPersonneAsyncDao sapDao = new StructureAPersonneAsyncDao();
102
			StructureAPersonneAsyncDao sapDao = new StructureAPersonneAsyncDao();
93
			sapDao.selectionner(r, idUtilisateur, idStr, idRole);
103
			sapDao.selectionner(r, idUtilisateur, idStr, idRole);
94
		}
104
		}
95
	}
105
	}
96
	
106
	
97
	public void selectionnerStructures(String idUtilisateur) {
107
	public void selectionnerStructures(String idUtilisateur) {
98
		Rafraichissable r = this;
108
		Rafraichissable r = this;
99
		String idStr = null;
109
		String idStr = null;
100
		String idRole = null;
110
		String idRole = null;
101
		selectionnerStructure(r, idUtilisateur, idStr, idRole);
111
		selectionnerStructure(r, idUtilisateur, idStr, idRole);
102
	}
112
	}
103
	
113
	
104
	/** Lance la creation d'une Structure
114
	/** Lance la creation d'une Structure
105
	 * @param vue la vue demandant a être rafraichie
115
	 * @param vue la vue demandant a être rafraichie
106
	 * @param structure les données de la structure
116
	 * @param structure les données de la structure
107
	 */
117
	 */
108
	public void ajouterStructure(Rafraichissable vue, String idUtilisateur, Structure structure) {
118
	public void ajouterStructure(Rafraichissable vue, String idUtilisateur, Structure structure) {
109
		StructureAsyncDao structureDao = new StructureAsyncDao();
119
		StructureAsyncDao structureDao = new StructureAsyncDao();
110
		structureDao.ajouter(vue, idUtilisateur, structure);
120
		structureDao.ajouter(vue, idUtilisateur, structure);
111
	}
121
	}
112
 
122
 
113
	public void supprimerStructure(Rafraichissable vue, String idUtilisateur, String idStr) {
123
	public void supprimerStructure(Rafraichissable vue, String idUtilisateur, String idStr) {
114
		StructureAsyncDao structureDao = new StructureAsyncDao();
124
		StructureAsyncDao structureDao = new StructureAsyncDao();
115
		structureDao.supprimer(vue, idUtilisateur, idStr);
125
		structureDao.supprimer(vue, idUtilisateur, idStr);
116
	}
126
	}
117
	
127
	
118
	public void modifierStructure(Rafraichissable vue, String utilisateurId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
128
	public void modifierStructure(Rafraichissable vue, String utilisateurId, Structure structure, StructureConservation conservation, StructureValorisation valorisation) {
119
		StructureAsyncDao structureDao = new StructureAsyncDao();
129
		StructureAsyncDao structureDao = new StructureAsyncDao();
120
		structureDao.modifier(vue, utilisateurId, structure, conservation, valorisation);
130
		structureDao.modifier(vue, utilisateurId, structure, conservation, valorisation);
121
	}
131
	}
122
 
132
 
123
	public void modifierStructureAPersonne(Rafraichissable vue, String utilisateurId, StructureAPersonne personnel) {
133
	public void modifierStructureAPersonne(Rafraichissable vue, String utilisateurId, StructureAPersonne personnel) {
124
		StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
134
		StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
125
		structureAPersonneDao.modifier(vue, utilisateurId, personnel);
135
		structureAPersonneDao.modifier(vue, utilisateurId, personnel);
126
	}
136
	}
127
	
137
	
128
	public void ajouterStructureAPersonne(Rafraichissable vue, String utilisateurId, String structureId, StructureAPersonne personnel) {
138
	public void ajouterStructureAPersonne(Rafraichissable vue, String utilisateurId, String structureId, StructureAPersonne personnel) {
129
		StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
139
		StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
130
		structureAPersonneDao.ajouter(vue, utilisateurId, structureId, personnel);	
140
		structureAPersonneDao.ajouter(vue, utilisateurId, structureId, personnel);	
131
	}
141
	}
132
	
142
	
133
	public void supprimerStructureAPersonne(Rafraichissable vue, String utilisateurId, String personnel) {
143
	public void supprimerStructureAPersonne(Rafraichissable vue, String utilisateurId, String personnel) {
134
		StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
144
		StructureAPersonneAsyncDao structureAPersonneDao = new StructureAPersonneAsyncDao();
135
		structureAPersonneDao.supprimer(vue, utilisateurId, personnel);
145
		structureAPersonneDao.supprimer(vue, utilisateurId, personnel);
136
	}
146
	}
137
	
147
	
138
	//+----------------------------------------------------------------------------------------------------------------+
148
	//+----------------------------------------------------------------------------------------------------------------+
139
	//												GESTION DES PROJETS
149
	//												GESTION DES PROJETS
140
	//+----------------------------------------------------------------------------------------------------------------+
150
	//+----------------------------------------------------------------------------------------------------------------+
141
	
151
	
142
	public void obtenirListeProjets ()	{
152
	public void obtenirListeProjets ()	{
143
		ProjetsListeAsyncDao projetsDao = new ProjetsListeAsyncDao(this);
153
		ProjetsListeAsyncDao projetsDao = new ProjetsListeAsyncDao(this);
144
		projetsDao.obtenirListeProjets();
154
		projetsDao.obtenirListeProjets();
145
		
155
		
146
	}
156
	}
147
 
157
 
148
	public void supprimerPersonne(Rafraichissable vue, String utilisateurId,
158
	public void supprimerPersonne(Rafraichissable vue, String utilisateurId,
149
			String idStr) {
159
			String idStr) {
150
		PersonnesAsyncDao personneDao = new PersonnesAsyncDao(vue);
160
		PersonnesAsyncDao personneDao = new PersonnesAsyncDao(vue);
151
		personneDao.supprimer(vue, utilisateurId, idStr);
161
		personneDao.supprimer(vue, utilisateurId, idStr);
152
		
162
		
153
	}
163
	}
154
 
164
 
155
	//+----------------------------------------------------------------------------------------------------------------+
165
	//+----------------------------------------------------------------------------------------------------------------+
156
	//												GESTION DES PERSONNES
166
	//												GESTION DES PERSONNES
157
	//+----------------------------------------------------------------------------------------------------------------+
167
	//+----------------------------------------------------------------------------------------------------------------+
158
	
168
	
159
	public void obtenirListePersonnes() {
169
	public void obtenirListePersonnes() {
160
		// Lance le service JREST associé au personne via la class PersonneListeAsyncDAO
170
		// Lance le service JREST associé au personne via la class PersonneListeAsyncDAO
161
		PersonnesAsyncDao plDao = new PersonnesAsyncDao(this);
171
		PersonnesAsyncDao plDao = new PersonnesAsyncDao(this);
162
		plDao.obtenirListePersonnes();
172
		plDao.obtenirListePersonnes();
163
	}
173
	}
164
	
174
	
165
	//+----------------------------------------------------------------------------------------------------------------+
175
	//+----------------------------------------------------------------------------------------------------------------+
166
	//												GESTION DES PUBLICATIONS
176
	//												GESTION DES PUBLICATIONS
167
	//+----------------------------------------------------------------------------------------------------------------+
177
	//+----------------------------------------------------------------------------------------------------------------+
168
	
178
	
169
	public void obtenirListePublications() {		
179
	public void obtenirListePublications() {		
170
		PublicationListeAsyncDao lsDao = new PublicationListeAsyncDao(this);
180
		PublicationListeAsyncDao lsDao = new PublicationListeAsyncDao(this);
171
		lsDao.obtenirListePublication();
181
		lsDao.obtenirListePublication();
172
	}
182
	}
173
	
183
	
174
	public void modifierPublication(String utilisateurId, Publication publi) {
184
	public void modifierPublication(String utilisateurId, Publication publi) {
175
		PublicationListeAsyncDao pDao = new PublicationListeAsyncDao(this);
185
		PublicationListeAsyncDao pDao = new PublicationListeAsyncDao(this);
176
		pDao.modifierPublication(this, utilisateurId, publi);
186
		pDao.modifierPublication(this, utilisateurId, publi);
177
	}
187
	}
178
 
188
 
179
	public void ajouterPublication(String utilisateurId, Publication publi) {
189
	public void ajouterPublication(String utilisateurId, Publication publi) {
180
		PublicationListeAsyncDao pDao = new PublicationListeAsyncDao(this);
190
		PublicationListeAsyncDao pDao = new PublicationListeAsyncDao(this);
181
		pDao.ajouterPublication(this, utilisateurId, publi);
191
		pDao.ajouterPublication(this, utilisateurId, publi);
182
	}
192
	}
-
 
193
 
-
 
194
	public void supprimerPublication(String utilisateurId,
-
 
195
			List<Publication> publicationListe) {
-
 
196
		String idPubs = "";
-
 
197
		for(Iterator<Publication> it = publicationListe.iterator(); it.hasNext();) {
-
 
198
			Publication pub = it.next();
-
 
199
			idPubs += pub.getId();
-
 
200
			if(it.hasNext()) {
-
 
201
				idPubs += ",";
-
 
202
			}
-
 
203
		}
-
 
204
		PublicationListeAsyncDao pDao = new PublicationListeAsyncDao(this);
183
 
205
		pDao.supprimerPublication(this, utilisateurId, idPubs);	
184
 
206
	}
185
}
207
}