Subversion Repositories eFlore/Applications.coel

Rev

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

Rev Author Line No. Line
102 jpm 1
package org.tela_botanica.client.modeles;
2
 
350 gduche 3
import java.util.Date;
102 jpm 4
import java.util.Iterator;
5
import java.util.Set;
6
 
350 gduche 7
import com.google.gwt.core.client.GWT;
8
import com.google.gwt.i18n.client.DateTimeFormat;
102 jpm 9
import com.google.gwt.json.client.JSONObject;
10
 
11
public class Personne extends aDonnee {
208 jp_milcent 12
 
13
	public static final String PREFIXE = "cp";
245 jp_milcent 14
	public static final String TELEPHONE_FIXE = "FIX";
15
	public static final String TELEPHONE_GSM = "GSM";
208 jp_milcent 16
 
102 jpm 17
	/**
103 jpm 18
	 * Constructeur vide
19
	 */
20
	public Personne() {
208 jp_milcent 21
 
103 jpm 22
	}
23
 
24
	/**
102 jpm 25
	 * Constructeur avec un objet JSON
26
	 *
27
	 * @param image
28
	 */
29
	public Personne(JSONObject liste) {
30
		// l'objet JSON est une table de hachage
31
		Set<String> im = liste.keySet();
32
 
33
		// Parcourt pour chaque clé
34
		for (Iterator<String> it = im.iterator(); it.hasNext();) {
35
			// Si elle est associée à une valeur, nous l'ajoutons
36
			String cle = it.next();
37
			// Suppression de l'abréviation du champ. Inutile dans le contexte d'un objet
38
			String cleObjet = cle.replaceFirst("^cp_", "");
39
			if (liste.get(cle).isString() != null) {
40
				String valeur = liste.get(cle).isString().stringValue();
41
				this.set(cleObjet, valeur);
42
			} else {
43
				// Sinon, nous ajoutons la clé avec une valeur vide
44
				String valeur = " ";
45
				this.set(cleObjet, valeur);
46
			}
47
		}
261 gduche 48
 
49
		//Ajout du champ courriel principal
50
		this.set("courriel_princ", this.getInfoDenormaliseParPosition(this.renvoyerValeurCorrecte("truk_courriel"), 1));
102 jpm 51
	}
52
 
240 jp_milcent 53
	// ID PERSONNE
102 jpm 54
	public String getId() {
240 jp_milcent 55
		return renvoyerValeurCorrecte("id_personne");
102 jpm 56
	}
57
 
240 jp_milcent 58
	// NOM COMPLET
59
	public String getNomComplet() {
60
		return renvoyerValeurCorrecte("fmt_nom_complet");
181 gduche 61
	}
62
 
240 jp_milcent 63
	// NOM
64
	public String getNom() {
65
		return renvoyerValeurCorrecte("nom");
181 gduche 66
	}
67
 
240 jp_milcent 68
	// PRÉNOM
69
	public String getPrenom() {
70
		return renvoyerValeurCorrecte("prenom");
238 aurelien 71
	}
72
 
350 gduche 73
	public Date getDate(String nomChamp)	{
74
 
75
		String strDate = renvoyerValeurCorrecte(nomChamp);
76
 
77
		Date dateRetour = null;
78
		try
79
		{
80
			if ((strDate != null) && (!strDate.equals("0000-00-00"))) {
81
				dateRetour = DateTimeFormat.getFormat("yyyy-MM-dd").parseStrict(strDate);
82
			}
83
		} catch (StringIndexOutOfBoundsException e)	{
84
			GWT.log("Impossible de parser la date " + strDate, e);
85
		}
86
		return dateRetour;
87
	}
88
 
240 jp_milcent 89
	// TÉLÉPHONE
90
	public String getTelephone() {
91
		return renvoyerValeurCorrecte("truk_telephone");
92
	}
93
	public void setTelephone(String t) {
94
		this.set("truk_telephone", t);
95
	}
245 jp_milcent 96
	public void ajouterTelephone(String type, Object valeur) {
240 jp_milcent 97
		ajouterChaineDenormaliseAvecType("truk_telephone", type, valeur);
98
	}
245 jp_milcent 99
	public String selectionnerTelephone(String type) {
100
		return getInfoDenormaliseParType(renvoyerValeurCorrecte("truk_telephone"), type);
101
	}
240 jp_milcent 102
 
103
	// FAX
104
	public String getFax() {
105
		return renvoyerValeurCorrecte("truk_fax");
106
	}
107
	public void setFax(String f) {
108
		this.set("truk_fax", f);
109
	}
245 jp_milcent 110
	public void ajouterFax(Object valeur) {
240 jp_milcent 111
		ajouterChaineDenormalise("truk_fax", valeur);
112
	}
245 jp_milcent 113
	public String selectionnerFax(int position) {
114
		return getInfoDenormaliseParPosition(renvoyerValeurCorrecte("truk_fax"), position);
115
	}
240 jp_milcent 116
 
117
	// COURRIEL
118
	public String getCourriel() {
119
		return renvoyerValeurCorrecte("truk_courriel");
120
	}
121
	public void setCourriel(String c) {
122
		this.set("truk_courriel", c);
123
	}
245 jp_milcent 124
	public void ajouterCourriel(String c) {
240 jp_milcent 125
		ajouterChaineDenormalise("truk_courriel", c);
126
	}
245 jp_milcent 127
	public String selectionnerCourriel(int position) {
128
		return getInfoDenormaliseParPosition(renvoyerValeurCorrecte("truk_courriel"), position);
129
	}
240 jp_milcent 130
 
131
	// SPÉCIALITÉ
132
	public String getSpecialite() {
133
		return renvoyerValeurCorrecte("ce_truk_specialite");
134
	}
135
	public void setSpecialite(String s) {
136
		// Pas de liste pour l'instant, donc tout passe dans "Autre".
137
		setChaineDenormaliseUnique("ce_truk_specialite", "AUTRE", s);
138
	}
245 jp_milcent 139
	public String afficherSpecialite() {
140
		return getChaineDenormaliseUnique("ce_truk_specialite");
141
	}
240 jp_milcent 142
 
181 gduche 143
	public Object obtenirValeurChamp(String nomChamp)	{
144
		return renvoyerValeurCorrecte(nomChamp);
145
	}
146
 
102 jpm 147
}