Subversion Repositories eFlore/Applications.coel

Rev

Rev 935 | Rev 1150 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

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