Subversion Repositories eFlore/Applications.coel

Rev

Rev 208 | Rev 245 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 208 Rev 231
Line 9... Line 9...
9
import com.google.gwt.http.client.Request;
9
import com.google.gwt.http.client.Request;
10
import com.google.gwt.http.client.RequestBuilder;
10
import com.google.gwt.http.client.RequestBuilder;
11
import com.google.gwt.http.client.RequestCallback;
11
import com.google.gwt.http.client.RequestCallback;
12
import com.google.gwt.http.client.RequestException;
12
import com.google.gwt.http.client.RequestException;
13
import com.google.gwt.http.client.Response;
13
import com.google.gwt.http.client.Response;
-
 
14
import com.google.gwt.http.client.URL;
14
import com.google.gwt.json.client.JSONArray;
15
import com.google.gwt.json.client.JSONArray;
15
import com.google.gwt.json.client.JSONObject;
-
 
16
import com.google.gwt.json.client.JSONParser;
16
import com.google.gwt.json.client.JSONParser;
17
import com.google.gwt.json.client.JSONValue;
17
import com.google.gwt.json.client.JSONValue;
Line 18... Line 18...
18
 
18
 
-
 
19
public class StructureAPersonneAsyncDao {
19
public class StructureAPersonneAsyncDao {
20
	private static final String SERVICE_NOM = "CoelStructureAPersonne";
20
 
21
	
21
	public void selectionner(final Rafraichissable r, String idUtilisateur, final String idStructure, final String idRole) {
22
	public void selectionner(final Rafraichissable r, String idUtilisateur, final String idStructure, final String idRole) {
22
		// Ajout des paramètres et données à selectionner dans l'URL
23
		// Ajout des paramètres et données à selectionner dans l'URL
23
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
24
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
24
			"CoelStructureAPersonne" +
25
			SERVICE_NOM +
25
			(idStructure == null ? "" : "/"+idStructure) +
26
			(idStructure == null ? "" : "/"+idStructure) +
26
			(idRole == null ? "" : "/"+idRole) +
27
			(idRole == null ? "" : "/"+idRole) +
Line 27... Line 28...
27
			"";
28
			"";
28
		
29
		
29
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, url);
30
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, url);
Line 30... Line 31...
30
		try {
31
		try {
31
			rb.sendRequest(null, new RequestCallback() {
32
			rb.sendRequest(null, new RequestCallback() {
32
 
33
 
33
				public void onError(Request request, Throwable exception) {
34
				public void onError(Request request, Throwable exception) {
34
					// Gestion des exceptions déclenchées par l'exécution de la requête 
35
					// Gestion des exceptions déclenchées par l'exécution de la requête 
Line 35... Line 36...
35
					GWT.log("Erreur à l'exécution du service CoelStructureAPersonne (selection)", exception);
36
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (selection)", exception);
36
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
37
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
Line 81... Line 82...
81
						}
82
						}
82
					}
83
					}
83
				}
84
				}
84
			});
85
			});
85
		} catch (RequestException e) {
86
		} catch (RequestException e) {
-
 
87
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
86
			e.printStackTrace();
88
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (selection)", e);
-
 
89
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
87
		}
90
		}
88
	}
91
	}
-
 
92
 
-
 
93
	public void ajouter(final Rafraichissable vue, String utilisateurId, String structureId, StructureAPersonne personnel) {
-
 
94
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
-
 
95
		SERVICE_NOM + "/";
-
 
96
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
-
 
97
		
-
 
98
		String postDonnees = "cmhl_ce_modifier_par=" + utilisateurId +
-
 
99
			"&csap_id_structure=" + structureId +
-
 
100
			"&csap_id_personne=" + URL.encodeComponent(personnel.getIdPersonne()) +
-
 
101
			"&csap_id_role=" + URL.encodeComponent(personnel.getIdRole()) +
-
 
102
			"&csap_ce_truk_fonction=" + URL.encodeComponent(personnel.getFonction()) +
-
 
103
			"&csap_service=" + URL.encodeComponent(personnel.getService()) +
-
 
104
			"&csap_ce_truk_statut=" + URL.encodeComponent(personnel.getStatut()) +
-
 
105
			"&csap_mark_contact=" + URL.encodeComponent(personnel.getContact()) +
-
 
106
			"&csap_bota_travail_hebdo_tps=" + URL.encodeComponent(personnel.getBotaTravailHebdoTps()) +
-
 
107
			"&cp_prenom=" + URL.encodeComponent(personnel.getPrenom()) +
-
 
108
			"&cp_nom=" + URL.encodeComponent(personnel.getNom()) +
-
 
109
			"&cp_truk_telephone=" + URL.encodeComponent(personnel.getTelephone()) +
-
 
110
			"&cp_truk_fax=" + URL.encodeComponent(personnel.getFax()) +
-
 
111
			"&cp_truk_courriel=" + URL.encodeComponent(personnel.getCourriel()) +
-
 
112
			"&cp_ce_truk_specialite=" + URL.encodeComponent(personnel.getSpecialite()) +
-
 
113
			"";
-
 
114
	
-
 
115
		try {
-
 
116
			rb.sendRequest(postDonnees, new RequestCallback() {
-
 
117
	
-
 
118
				public void onError(Request request, Throwable exception) {
-
 
119
					// Gestion des exceptions déclenchées par l'exécution de la requête 
-
 
120
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (ajout)", exception);
-
 
121
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
-
 
122
				}
-
 
123
				
-
 
124
				public void onErrorHTTP(Request request, Response reponse) {
-
 
125
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
-
 
126
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
-
 
127
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
-
 
128
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
-
 
129
				}
-
 
130
	
-
 
131
				public void onResponseReceived(Request request, Response response) {
-
 
132
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
-
 
133
					if (response.getStatusCode() != 200) {
-
 
134
						onErrorHTTP(request, response);
-
 
135
					} else {
-
 
136
						if (response.getText().length() != 0 && response.getText() != null) {
-
 
137
							final JSONValue responseValue = JSONParser.parse(response.getText());
-
 
138
							
-
 
139
							// Si la requête est un succès, reception d'une chaine
-
 
140
							if (responseValue.isString() != null) {
-
 
141
								Information info = new Information("ajout_structure_a_personne", responseValue.isString().stringValue());
-
 
142
								vue.rafraichir(info);
-
 
143
							} else {
-
 
144
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
-
 
145
							}
-
 
146
						} else {
-
 
147
							GWT.log(url, null);
-
 
148
							if (response.getText().length() == 0) {
-
 
149
								GWT.log("\tLa réponse a une taille de 0", null);
-
 
150
							}
-
 
151
							if (response.getText() == null) {
-
 
152
								GWT.log("\tLa réponse vaul null", null);
-
 
153
							}
-
 
154
						}
-
 
155
					}
-
 
156
				}
-
 
157
				
-
 
158
			}) ;
-
 
159
		} catch (RequestException e) {
-
 
160
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
-
 
161
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (ajout)", e);
-
 
162
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
-
 
163
		}
-
 
164
	}
-
 
165
	
-
 
166
	public void modifier(final Rafraichissable vue, String utilisateurId, StructureAPersonne personnel) {
-
 
167
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
-
 
168
		SERVICE_NOM + "/" +
-
 
169
		personnel.getIdStructure() + "/" +
-
 
170
		personnel.getIdPersonne() + "/" +
-
 
171
		personnel.getIdRole()
-
 
172
		;
-
 
173
	
-
 
174
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
-
 
175
		
-
 
176
		String postDonnees = 	"cmhl_ce_modifier_par=" + utilisateurId +
-
 
177
			"&csap_id_structure=" + URL.encodeComponent(personnel.getIdStructure()) +
-
 
178
			"&csap_id_personne=" + URL.encodeComponent(personnel.getIdPersonne()) +
-
 
179
			"&csap_id_role=" + URL.encodeComponent(personnel.getIdRole()) +
-
 
180
			"&csap_ce_truk_fonction=" + URL.encodeComponent(personnel.getFonction()) +
-
 
181
			"&csap_service=" + URL.encodeComponent(personnel.getService()) +
-
 
182
			"&csap_ce_truk_statut=" + URL.encodeComponent(personnel.getStatut()) +
-
 
183
			"&csap_mark_contact=" + URL.encodeComponent(personnel.getContact()) +
-
 
184
			"&csap_bota_travail_hebdo_tps=" + URL.encodeComponent(personnel.getBotaTravailHebdoTps()) +
-
 
185
			"&cp_prenom=" + URL.encodeComponent(personnel.getPrenom()) +
-
 
186
			"&cp_nom=" + URL.encodeComponent(personnel.getNom()) +
-
 
187
			"&cp_truk_telephone=" + URL.encodeComponent(personnel.getTelephone()) +
-
 
188
			"&cp_truk_fax=" + URL.encodeComponent(personnel.getFax()) +
-
 
189
			"&cp_truk_courriel=" + URL.encodeComponent(personnel.getCourriel()) +
-
 
190
			"&cp_ce_truk_specialite=" + URL.encodeComponent(personnel.getSpecialite()) +
-
 
191
			"";
-
 
192
	
-
 
193
		try {
-
 
194
			rb.sendRequest(postDonnees, new RequestCallback() {
-
 
195
	
-
 
196
				public void onError(Request request, Throwable exception) {
-
 
197
					// Gestion des exceptions déclenchées par l'exécution de la requête 
-
 
198
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (modif)", exception);
-
 
199
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
-
 
200
				}
-
 
201
				
-
 
202
				public void onErrorHTTP(Request request, Response reponse) {
-
 
203
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
-
 
204
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
-
 
205
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
-
 
206
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
-
 
207
				}
-
 
208
	
-
 
209
				public void onResponseReceived(Request request, Response response) {
-
 
210
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
-
 
211
					if (response.getStatusCode() != 200) {
-
 
212
						onErrorHTTP(request, response);
-
 
213
					} else {
-
 
214
						if (response.getText().length() != 0 && response.getText() != null) {
-
 
215
							final JSONValue responseValue = JSONParser.parse(response.getText());
-
 
216
							
-
 
217
							// Si la requête est un succès, reception d'une chaine
-
 
218
							if (responseValue.isString() != null) {
-
 
219
								Information info = new Information("modif_structure_a_personne", responseValue.isString().stringValue());
-
 
220
								vue.rafraichir(info);
-
 
221
							} else {
-
 
222
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
-
 
223
							}
-
 
224
						} else {
-
 
225
							GWT.log(url, null);
-
 
226
							if (response.getText().length() == 0) {
-
 
227
								GWT.log("\tLa réponse a une taille de 0", null);
-
 
228
							}
-
 
229
							if (response.getText() == null) {
-
 
230
								GWT.log("\tLa réponse vaul null", null);
-
 
231
							}
-
 
232
						}
-
 
233
					}
-
 
234
				}
-
 
235
				
-
 
236
			}) ;
-
 
237
		} catch (RequestException e) {
-
 
238
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
-
 
239
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (modif)", e);
-
 
240
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
-
 
241
		}
-
 
242
	}
-
 
243
	
-
 
244
	public void supprimer(final Rafraichissable vue, String utilisateurId, String idStrAPer) {
-
 
245
		// Ajout des paramètres et données à supprimer dans l'URL
-
 
246
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
-
 
247
			SERVICE_NOM + "/" +
-
 
248
			utilisateurId + "/" +
-
 
249
			idStrAPer +
-
 
250
			"";
-
 
251
		
-
 
252
		// DELETE n'étant pas disponible comme méthode HTTP, nous utilisons POST avec le paramètre action=DELETE
-
 
253
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
-
 
254
		String postDonnees = "action=DELETE";
-
 
255
		
-
 
256
		try {
-
 
257
			rb.sendRequest(postDonnees, new RequestCallback() {
-
 
258
 
-
 
259
				public void onError(Request request, Throwable exception) {
-
 
260
					// Gestion des exceptions déclenchées par l'exécution de la requête 
-
 
261
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (suppression)", exception);
-
 
262
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
-
 
263
				}
-
 
264
 
-
 
265
				public void onErrorHTTP(Request request, Response reponse) {
-
 
266
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
-
 
267
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
-
 
268
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
-
 
269
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
-
 
270
				}
-
 
271
				
-
 
272
				public void onResponseReceived(Request request, Response response) {
-
 
273
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
-
 
274
					if (response.getStatusCode() != 200) {
-
 
275
						onErrorHTTP(request, response);
-
 
276
					} else {
-
 
277
						if (response.getText().length() != 0 && response.getText() != null) {
-
 
278
							final JSONValue responseValue = JSONParser.parse(response.getText());
-
 
279
							
-
 
280
							// Si la requête est un succès, reception d'une chaine
-
 
281
							if (responseValue.isString() != null) {
-
 
282
								Information info = new Information("suppression_structure_a_personne", responseValue.isString().stringValue());
-
 
283
								vue.rafraichir(info);
-
 
284
							} else {
-
 
285
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
-
 
286
							}
-
 
287
						} else {
-
 
288
							GWT.log(url, null);
-
 
289
							if (response.getText().length() == 0) {
-
 
290
								GWT.log("\tLa réponse a une taille de 0", null);
-
 
291
							}
-
 
292
							if (response.getText() == null) {
-
 
293
								GWT.log("\tLa réponse vaul null", null);
-
 
294
							}
-
 
295
						}
-
 
296
					}
-
 
297
				}
-
 
298
				
-
 
299
			}) ;
-
 
300
		} catch (RequestException e) {
-
 
301
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
-
 
302
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (suppression)", e);
-
 
303
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
-
 
304
		}
-
 
305
		
-
 
306
	}
89
}
307
}