Subversion Repositories eFlore/Applications.coel

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
60 jpm 1
package org.tela_botanica.client.modeles;
2
 
156 jp_milcent 3
import java.util.Date;
60 jpm 4
import java.util.Iterator;
5
import java.util.Set;
6
 
166 jp_milcent 7
import com.extjs.gxt.ui.client.data.BaseModelData;
156 jp_milcent 8
import com.google.gwt.i18n.client.DateTimeFormat;
60 jpm 9
import com.google.gwt.json.client.JSONObject;
10
 
69 jpm 11
public class Structure extends aDonnee {
119 jpm 12
 
748 jpm 13
	private static final long serialVersionUID = -5623886668593288218L;
14
 
119 jpm 15
	public static final String PREFIXE = "cs";
177 jp_milcent 16
	public static final String URL_SITE = "WEB";
17
	public static final String URL_LOGO = "LOGO";
748 jpm 18
 
166 jp_milcent 19
	private BaseModelData urls = null;
382 jp_milcent 20
	private StructureAPersonneListe personnel = null;
21
	private StructureValorisation valorisation = null;
22
	private StructureConservation conservation = null;
23
 
60 jpm 24
	public Structure() {
177 jp_milcent 25
		// Constructions du tableau des urls interne
26
		urls = new BaseModelData();
60 jpm 27
	}
28
 
29
	public Structure(JSONObject institution) {
177 jp_milcent 30
		// Constructions du tableau des urls interne
31
		urls = new BaseModelData();
32
 
60 jpm 33
		// l'objet JSON est une table de hachage
34
		Set<String> im = institution.keySet();
35
 
36
		// Parcourt pour chaque clé
37
		for (Iterator<String> it = im.iterator(); it.hasNext();) {
38
			// Si elle est associée à une valeur, nous l'ajoutons
39
			String cle = it.next();
203 jp_milcent 40
			if (cle.startsWith(PREFIXE+"_")) {
41
				// Suppression de l'abréviation du champ. Inutile dans le contexte d'un objet
42
				String cleObjet = cle.replaceFirst("^"+PREFIXE+"_", "");
43
				// Sinon, nous ajoutons la clé avec une valeur vide
44
				String valeur = "";
45
				if (institution.get(cle).isString() != null) {
46
					valeur = institution.get(cle).isString().stringValue();
47
				}
48
				if (cleObjet.equals("truk_url")) {
49
					this.setUrl(valeur);
50
				} else {
51
					this.set(cleObjet, valeur);
52
				}
166 jp_milcent 53
			}
60 jpm 54
		}
55
	}
56
 
748 jpm 57
	@Override
58
	protected String getPrefixe() {
59
		return PREFIXE;
60
	}
61
 
60 jpm 62
	public String getId() {
602 jp_milcent 63
		return renvoyerValeurCorrecte("id_structure");
60 jpm 64
	}
119 jpm 65
	public void setId(String idStructure) {
66
		this.set("id_structure", idStructure);
67
	}
60 jpm 68
 
119 jpm 69
	public String getIdProjet() {
602 jp_milcent 70
		return renvoyerValeurCorrecte("ce_projet");
119 jpm 71
	}
72
	public void setIdProjet(String idProjet) {
73
		this.set("ce_projet", idProjet);
74
	}
75
 
76
	public String getIdMere() {
602 jp_milcent 77
		return renvoyerValeurCorrecte("ce_mere");
119 jpm 78
	}
79
	public void setIdMere(String idMere) {
80
		this.set("ce_mere", idMere);
81
	}
82
 
83
	public String getGuid() {
602 jp_milcent 84
		return renvoyerValeurCorrecte("guid");
119 jpm 85
	}
86
	public void setGuid(String guid) {
87
		this.set("guid", guid);
88
	}
89
 
90
	public String getIdAlternatif() {
602 jp_milcent 91
		return renvoyerValeurCorrecte("truk_identifiant_alternatif");
119 jpm 92
	}
93
	public void setIdAlternatif(String idAlter) {
94
		this.set("truk_identifiant_alternatif", idAlter);
95
	}
96
 
60 jpm 97
	public String getNom() {
602 jp_milcent 98
		return renvoyerValeurCorrecte("nom");
60 jpm 99
	}
119 jpm 100
	public void setNom(String nom) {
101
		this.set("nom", nom);
102
	}
60 jpm 103
 
119 jpm 104
	public String getNomAlternatif() {
602 jp_milcent 105
		return renvoyerValeurCorrecte("truk_nom_alternatif");
119 jpm 106
	}
107
 
60 jpm 108
	public String getDescription() {
602 jp_milcent 109
		return renvoyerValeurCorrecte("description");
60 jpm 110
	}
111
 
119 jpm 112
	public String getType() {
602 jp_milcent 113
		return renvoyerValeurCorrecte("ce_type");
119 jpm 114
	}
115
	public void setType(String type) {
116
		this.set("ce_type", type);
117
	}
118
 
119
	public String getTypePrive() {
602 jp_milcent 120
		return renvoyerValeurCorrecte("ce_truk_type_prive");
119 jpm 121
	}
122
	public void setTypePrive(String typePrive) {
123
		this.set("ce_truk_type_prive", typePrive);
124
	}
125
 
126
	public String getTypePublic() {
602 jp_milcent 127
		return renvoyerValeurCorrecte("ce_truk_type_public");
119 jpm 128
	}
129
	public void setTypePublic(String typePublic) {
130
		this.set("ce_truk_type_public", typePublic);
131
	}
132
 
133
	public String getAdresse() {
60 jpm 134
		return (String) renvoyerValeurCorrecte("adresse_01");
135
	}
119 jpm 136
	public void setAdresse(String adr) {
137
		this.set("adresse_01", adr);
138
	}
139
 
140
	public String getAdresseComplement() {
602 jp_milcent 141
		return renvoyerValeurCorrecte("adresse_02");
119 jpm 142
	}
60 jpm 143
 
169 jp_milcent 144
	public String getDateFondationFormatMysql() {
602 jp_milcent 145
		return renvoyerValeurCorrecte("date_fondation");
169 jp_milcent 146
	}
392 jp_milcent 147
	public String getDateFondationFormatLong() {
148
		String dateFormatee = "";
149
		Date dateFondation = getDateFondation();
150
		if (dateFondation != null) {
151
			dateFormatee = DateTimeFormat.getLongDateFormat().format(dateFondation);
152
		}
153
		return dateFormatee;
154
	}
156 jp_milcent 155
	public Date getDateFondation() {
166 jp_milcent 156
		Date fondationDate = null;
602 jp_milcent 157
		String fondationChaine = renvoyerValeurCorrecte("date_fondation");
177 jp_milcent 158
		if (!fondationChaine.isEmpty() && !fondationChaine.equals("0000-00-00")) {
159
			fondationDate = DateTimeFormat.getFormat("yyyy-MM-dd").parseStrict(fondationChaine);
166 jp_milcent 160
		}
161
		return fondationDate;
119 jpm 162
	}
156 jp_milcent 163
	public void setDateFondation(Date dateFondation) {
164
		if (dateFondation != null) {
177 jp_milcent 165
			this.set("date_fondation", DateTimeFormat.getFormat("yyyy-MM-dd").format(dateFondation));
156 jp_milcent 166
		}
167
	}
119 jpm 168
	public void setDateFondation(String dateFondation) {
156 jp_milcent 169
		if (dateFondation != null) {
170
			this.set("date_fondation", dateFondation);
171
		}
119 jpm 172
	}
156 jp_milcent 173
 
60 jpm 174
	public String getCodePostal() {
602 jp_milcent 175
		return renvoyerValeurCorrecte("code_postal");
60 jpm 176
	}
119 jpm 177
	public void setCodePostal(String codePostal) {
178
		this.set("code_postal", codePostal);
179
	}
180
 
60 jpm 181
	public String getVille() {
602 jp_milcent 182
		return renvoyerValeurCorrecte("ville");
60 jpm 183
	}
119 jpm 184
	public void setVille(String ville) {
185
		this.set("ville", ville);
186
	}
187
 
60 jpm 188
	public String getRegion() {
602 jp_milcent 189
		return getChaineDenormaliseUnique("ce_truk_region");
60 jpm 190
	}
119 jpm 191
	public void setRegion(String region) {
602 jp_milcent 192
		this.set("ce_truk_region", region);
119 jpm 193
	}
194
 
60 jpm 195
	public String getPays() {
602 jp_milcent 196
		return getChaineDenormaliseUnique("ce_truk_pays");
60 jpm 197
	}
119 jpm 198
	public void setPays(String pays) {
602 jp_milcent 199
		this.set("ce_truk_pays", pays);
119 jpm 200
	}
60 jpm 201
 
119 jpm 202
	public String getLatitude() {
602 jp_milcent 203
		return renvoyerValeurCorrecte("latitude");
119 jpm 204
	}
205
 
206
	public String getLongitude() {
602 jp_milcent 207
		return renvoyerValeurCorrecte("longitude");
119 jpm 208
	}
209
 
602 jp_milcent 210
	// TELEPHONE
60 jpm 211
	public String getTelephone() {
602 jp_milcent 212
		return renvoyerValeurCorrecte("truk_telephone");
60 jpm 213
	}
119 jpm 214
	public void setTelephone(String tel) {
602 jp_milcent 215
		this.set("truk_telephone", tel);
119 jpm 216
	}
60 jpm 217
 
602 jp_milcent 218
	// TELEPHONE FIXE
219
	public String getTelephoneFixe() {
220
		return getInfoDenormaliseParType(renvoyerValeurCorrecte("truk_telephone"), Personne.TELEPHONE_FIXE);
221
	}
222
	public void setTelephoneFixe(String fixe) {
223
		modifierChaineDenormaliseParType("truk_telephone", Personne.TELEPHONE_FIXE, fixe);
224
	}
225
 
226
	//TELEPHONE FAX
60 jpm 227
	public String getFax() {
602 jp_milcent 228
		return getInfoDenormaliseParType(renvoyerValeurCorrecte("truk_telephone"), Personne.TELEPHONE_FAX);
60 jpm 229
	}
119 jpm 230
	public void setFax(String fax) {
602 jp_milcent 231
		modifierChaineDenormaliseParType("truk_telephone", Personne.TELEPHONE_FAX, fax);
119 jpm 232
	}
60 jpm 233
 
602 jp_milcent 234
	// COURRIEL
60 jpm 235
	public String getCourriel() {
602 jp_milcent 236
		return renvoyerValeurCorrecte("courriel");
60 jpm 237
	}
119 jpm 238
	public void setCourriel(String courriel) {
239
		this.set("courriel", courriel);
240
	}
60 jpm 241
 
602 jp_milcent 242
	// URL
166 jp_milcent 243
	public String getUrl(String type) {
244
		return urls.get(type);
245
	}
119 jpm 246
	public String getUrl() {
166 jp_milcent 247
		String urlsDenormalise = "";
248
		Set<String> proprietes = urls.getProperties().keySet();
249
		for (Iterator<String> it = proprietes.iterator(); it.hasNext();) {
250
			String cle = it.next();
251
			urlsDenormalise += cle+"##"+urls.get(cle)+";;";
252
		}
253
		urlsDenormalise.replaceFirst(";;$", "");
254
		return urlsDenormalise;
119 jpm 255
	}
166 jp_milcent 256
	public void setUrl(String urlsDenormalise) {
257
		if (urlsDenormalise != null && !urlsDenormalise.equals("")) {
258
			//GWT.log(urlsDenormalise, null);
259
			String[] tableauUrls = urlsDenormalise.split(";;");
260
			for (int i = 0; i < tableauUrls.length; i++) {
261
				String url = tableauUrls[i];
262
				//GWT.log("\t"+url, null);
263
				String[] tableauUrl = url.split("##");
264
				if (tableauUrl.length == 2) {
265
					//GWT.log("\t\t"+tableauUrl[0]+"-"+tableauUrl[1], null);
266
					urls.set(tableauUrl[0], tableauUrl[1]);
267
				}
268
			}
269
		}
119 jpm 270
	}
166 jp_milcent 271
	public void setUrl(String type, String url) {
177 jp_milcent 272
		if (url != null) {
273
			urls.set(type, url);
274
		}
166 jp_milcent 275
	}
119 jpm 276
 
208 jp_milcent 277
	public int getNbrePersonne() {
278
		if (renvoyerValeurCorrecte("nbre_personne").equals("")) {
279
			return 0;
280
		} else {
281
			return Integer.parseInt(renvoyerValeurCorrecte("nbre_personne"));
282
		}
119 jpm 283
	}
208 jp_milcent 284
	public void setNbrePersonne(int nbrePersonne) {
285
		this.set("nbre_personne", Integer.toString(nbrePersonne));
119 jpm 286
	}
287
 
60 jpm 288
	public String getConditionAcces() {
602 jp_milcent 289
		return renvoyerValeurCorrecte("condition_acces");
60 jpm 290
	}
119 jpm 291
 
292
	public String getConditionUsage() {
602 jp_milcent 293
		return renvoyerValeurCorrecte("condition_usage");
119 jpm 294
	}
295
 
382 jp_milcent 296
	public StructureAPersonneListe getPersonnel() {
297
		return personnel;
298
	}
299
	public void setPersonnel(StructureAPersonneListe personnelAStocker) {
300
		personnel = personnelAStocker;
301
	}
302
 
303
	public StructureValorisation getValorisation() {
304
		return valorisation;
305
	}
306
	public void setValorisation(StructureValorisation valorisationAStocker) {
307
		valorisation = valorisationAStocker;
308
	}
309
 
310
	public StructureConservation getConservation() {
311
		return conservation;
312
	}
313
	public void setConservation(StructureConservation conservationAStocker) {
314
		conservation = conservationAStocker;
315
	}
316
 
166 jp_milcent 317
	public String toString() {
318
		String sortie = "";
177 jp_milcent 319
 
320
		// Champs du BaseModelData
166 jp_milcent 321
		Set<String> proprietes = this.getProperties().keySet();
322
		for (Iterator<String> it = proprietes.iterator(); it.hasNext();) {
323
			String cle = it.next();
324
			sortie += cle+" : "+this.get(cle)+"\n";
325
		}
177 jp_milcent 326
 
327
		// Champs spéciaux
328
		sortie += getUrl();
329
 
166 jp_milcent 330
		return sortie;
331
	}
332
 
60 jpm 333
}