Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 202 Rev 208
1
package org.tela_botanica.client.modeles;
1
package org.tela_botanica.client.modeles;
2
 
2
 
3
import java.io.Serializable;
3
import java.io.Serializable;
4
import java.util.Iterator;
4
import java.util.Iterator;
5
import java.util.List;
5
import java.util.List;
6
import java.util.Set;
6
import java.util.Set;
7
 
7
 
8
import com.extjs.gxt.ui.client.data.BaseModelData;
8
import com.extjs.gxt.ui.client.data.BaseModelData;
9
import com.extjs.gxt.ui.client.widget.form.CheckBox;
9
import com.extjs.gxt.ui.client.widget.form.CheckBox;
10
 
10
 
11
/**
11
/**
12
 * @author jpm
12
 * @author jpm
13
 *
13
 *
14
 */
14
 */
15
public abstract class aDonnee extends BaseModelData implements Serializable {
15
public abstract class aDonnee extends BaseModelData implements Serializable {
16
 
16
 
17
	/**
17
	/**
18
	 * Identifiant pour sérialisé l'objet...
18
	 * Identifiant pour sérialisé l'objet...
19
	 */
19
	 */
20
	private static final long serialVersionUID = 3527760464061629791L;
20
	private static final long serialVersionUID = 3527760464061629791L;
21
 
21
 
22
	/**
22
	/**
23
	 * Pour éviter que l'on traite des valeurs nulles à l'affichage on passe par
23
	 * Pour éviter que l'on traite des valeurs nulles à l'affichage on passe par
24
	 * cette fonction qui retire les charactères nuls qui font planter
24
	 * cette fonction qui retire les charactères nuls qui font planter
25
	 * l'affichage, il ne faut pas utiliser get directement
25
	 * l'affichage, il ne faut pas utiliser get directement
26
	 * 
26
	 * 
27
	 * @param cle
27
	 * @param cle
28
	 * @return la valeur associée à la clé
28
	 * @return la valeur associée à la clé
29
	 */
29
	 */
30
	protected String renvoyerValeurCorrecte(String cle) {
30
	protected String renvoyerValeurCorrecte(String cle) {
31
		String sortie = "";
31
		String sortie = "";
32
		if (this.get(cle) != null) {
32
		if (this.get(cle) != null) {
33
			String valeur = this.get(cle);
33
			String valeur = this.get(cle);
34
			if (! valeur.equals("null")) {
34
			if (! valeur.equals("null")) {
35
				char nullChar = '\u0000';
35
				char nullChar = '\u0000';
36
				String sNull = "" + nullChar;
36
				String sNull = "" + nullChar;
37
				valeur = valeur.replaceAll(sNull, "");
37
				valeur = valeur.replaceAll(sNull, "");
38
				sortie =  valeur;
38
				sortie =  valeur;
39
			}
39
			}
40
		}
40
		}
41
		return sortie;
41
		return sortie;
42
	}
42
	}
43
	/**
43
	/**
44
	 * Permet de constuire correctement une chaine dénormalisée (champ de type "truk").
44
	 * Permet de constuire correctement une chaine dénormalisée (champ de type "truk").
45
	 * 
45
	 * 
46
	 * @param champ le nom du champ dénormalisé
46
	 * @param champ le nom du champ dénormalisé
47
	 * @param type le type de la valeur à ajouter
47
	 * @param type le type de la valeur à ajouter
48
	 * @param valeur la valeur à ajouter
48
	 * @param valeur la valeur à ajouter
49
	 */
49
	 */
50
	protected void setChaineDenormalise(String champ, String type, Object valeur) {
50
	protected void setChaineDenormalise(String champ, String type, Object valeur) {
51
		if (valeur instanceof String) {
51
		if (valeur instanceof String) {
52
			String chaineExistante = renvoyerValeurCorrecte(champ);
52
			String chaineExistante = renvoyerValeurCorrecte(champ);
53
			if (chaineExistante.equals("")) {
53
			if (chaineExistante.equals("")) {
54
				this.set(champ, type+"##"+valeur);
54
				this.set(champ, type+"##"+valeur);
55
			} else {
55
			} else {
56
				this.set(champ, chaineExistante+";;"+type+"##"+valeur);
56
				this.set(champ, chaineExistante+";;"+type+"##"+valeur);
57
			}
57
			}
58
		}
58
		}
59
	}
59
	}
-
 
60
	
-
 
61
	protected String getInfoDenormaliseParType(String chaineExistante, String type) {
-
 
62
		String sortie = "";
-
 
63
		if (!chaineExistante.equals("")) {
-
 
64
			String[] valeurs = chaineExistante.split(";;");
-
 
65
			for (int i = 0; i < valeurs.length; i++) {
-
 
66
				if (valeurs[i].startsWith(type+"##")) {
-
 
67
					sortie =  valeurs[i].replaceFirst("^"+type+"##", "");
-
 
68
				}
-
 
69
			}
-
 
70
		}
-
 
71
		return sortie;
-
 
72
	}
-
 
73
	
-
 
74
	protected String getInfoDenormaliseParPosition(String chaineExistante, int position) {
-
 
75
		String sortie = "";
-
 
76
		if (!chaineExistante.equals("")) {
-
 
77
			String[] valeurs = chaineExistante.split(";;");
-
 
78
			if (valeurs.length >= position) {
-
 
79
				for (int i = 0; i < valeurs.length; i++) {
-
 
80
					if (i == (position - 1)) {
-
 
81
						if (valeurs[i].contains("##")) {
-
 
82
							sortie =  valeurs[i].replaceFirst("^[^#]+##", "");
-
 
83
						} else {
-
 
84
							sortie =  valeurs[i];
-
 
85
						}
-
 
86
						break;
-
 
87
					}
-
 
88
				}
-
 
89
			}
-
 
90
		}
-
 
91
		return sortie;
-
 
92
	}
60
	
93
	
61
	public String getDateModification() {
94
	public String getDateModification() {
62
		return (String) renvoyerValeurCorrecte("cmhl_date_modification");
95
		return (String) renvoyerValeurCorrecte("cmhl_date_modification");
63
	}
96
	}
64
	
97
	
65
	public String getNotes() {
98
	public String getNotes() {
66
		return (String) renvoyerValeurCorrecte("cmhl_notes");
99
		return (String) renvoyerValeurCorrecte("cmhl_notes");
67
	}
100
	}
68
	
101
	
69
	public String getIdModifierPar() {
102
	public String getIdModifierPar() {
70
		return (String) renvoyerValeurCorrecte("cmhl_ce_modifier_par");
103
		return (String) renvoyerValeurCorrecte("cmhl_ce_modifier_par");
71
	}
104
	}
72
	
105
	
73
	public String getIdEtat() {
106
	public String getIdEtat() {
74
		return (String) renvoyerValeurCorrecte("cmhl_ce_etat");
107
		return (String) renvoyerValeurCorrecte("cmhl_ce_etat");
75
	}
108
	}
76
	
109
	
77
	public String getIp() {
110
	public String getIp() {
78
		return (String) renvoyerValeurCorrecte("cmhl_ip");
111
		return (String) renvoyerValeurCorrecte("cmhl_ip");
79
	}
112
	}
80
	
113
	
81
	/** (non-Javadoc)
114
	/** (non-Javadoc)
82
	 * @see java.lang.Object#toString()
115
	 * @see java.lang.Object#toString()
83
	 */
116
	 */
84
	public String toString() {
117
	public String toString() {
85
		String sortie = "";
118
		String sortie = "";
86
		
119
		
87
		// Champs du BaseModelData
120
		// Champs du BaseModelData
88
		Set<String> proprietes = this.getProperties().keySet();
121
		Set<String> proprietes = this.getProperties().keySet();
89
		for (Iterator<String> it = proprietes.iterator(); it.hasNext();) {
122
		for (Iterator<String> it = proprietes.iterator(); it.hasNext();) {
90
			String cle = it.next();
123
			String cle = it.next();
91
			if (!this.get(cle).equals("")) {
124
			if (!this.get(cle).equals("")) {
92
				sortie += cle+" : "+this.get(cle)+"\n";
125
				sortie += cle+" : "+this.get(cle)+"\n";
93
			}
126
			}
94
		}
127
		}
95
		
128
		
96
		return sortie;
129
		return sortie;
97
	}
130
	}
98
}
131
}