Subversion Repositories eFlore/Applications.coel

Rev

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

Rev 1513 Rev 1561
Line 3... Line 3...
3
import java.util.Iterator;
3
import java.util.Iterator;
4
import java.util.Map;
4
import java.util.Map;
5
import java.util.Set;
5
import java.util.Set;
Line 6... Line 6...
6
 
6
 
7
import org.tela_botanica.client.modeles.aDonnee;
-
 
8
import org.tela_botanica.client.modeles.collection.CollectionAPublication;
7
import org.tela_botanica.client.modeles.aDonnee;
9
import org.tela_botanica.client.modeles.personne.Personne;
8
import org.tela_botanica.client.modeles.personne.Personne;
Line 10... Line 9...
10
import org.tela_botanica.client.util.Debug;
9
import org.tela_botanica.client.util.Log;
11
 
10
 
Line 12... Line 11...
12
import com.extjs.gxt.ui.client.data.ModelData;
11
import com.extjs.gxt.ui.client.data.ModelData;
Line 13... Line 12...
13
import com.google.gwt.json.client.JSONObject;
12
import com.google.gwt.json.client.JSONObject;
Line 14... Line 13...
14
 
13
 
15
public class PublicationAPersonne extends aDonnee {
-
 
16
 
14
public class PublicationAPersonne extends aDonnee {
17
	private static final long serialVersionUID = 7769105365939978129L;
15
 
18
	
16
	private static final long serialVersionUID = 7769105365939978129L;
Line 19... Line 17...
19
	public static final String PREFIXE = "cpuap";
17
	
Line 46... Line 44...
46
		// Parcourt pour chaque clé
44
		// Parcourt pour chaque clé
47
		for (Iterator<String> it = im.iterator(); it.hasNext();) {
45
		for (Iterator<String> it = im.iterator(); it.hasNext();) {
48
			// Si elle est associée à une valeur, nous l'ajoutons
46
			// Si elle est associée à une valeur, nous l'ajoutons
49
			String cle = it.next();
47
			String cle = it.next();
50
			String cleObjet = "";
48
			String cleObjet = "";
-
 
49
			if (removePrefix) {
51
			if (removePrefix) cleObjet = cle.replaceFirst("^"+getPrefixe()+"_", "");
50
				cleObjet = cle.replaceFirst("^"+getPrefixe()+"_", "");
-
 
51
			} else {
52
			else cleObjet=cle;
52
				cleObjet = cle;
-
 
53
			}
53
			// Valeur vide par défaut
54
			// Valeur vide par défaut
54
			String valeur = "";
55
			String valeur = "";
55
			if (pubAPersListe.get(cle).isString() != null) {
56
			if (pubAPersListe.get(cle).isString() != null) {
56
				valeur = pubAPersListe.get(cle).isString().stringValue();
57
				valeur = pubAPersListe.get(cle).isString().stringValue();
57
			}			
58
			}			
Line 59... Line 60...
59
		}
60
		}
Line 60... Line 61...
60
		
61
		
61
		initialiserChampsPourGrille();
62
		initialiserChampsPourGrille();
Line 62... Line 63...
62
	}
63
	}
63
	
-
 
64
	public PublicationAPersonne(ModelData model, boolean removePrefix)
64
	
65
	{
-
 
-
 
65
	public PublicationAPersonne(ModelData modele, boolean removePrefix) {
66
		this.removePrefix = removePrefix;
66
		this.removePrefix = removePrefix;
67
		
67
		if (modele != null) {
68
		Map<String, Object> a = model.getProperties();
68
			Map<String, Object> modeleProprietes = modele.getProperties();
69
		
69
			
70
		Set<String> cles = a.keySet();
70
			Set<String> cles = modeleProprietes.keySet();
71
		Iterator<String> it = cles.iterator();
71
			Iterator<String> it = cles.iterator();
72
		while (it.hasNext()) {
72
			while (it.hasNext()) {
73
			String cle = it.next();
73
				String cle = it.next();
74
			if (a.get(cle) != null) {
74
				if (modeleProprietes.get(cle) != null) {
75
				String cleObjet = "";
75
					String cleObjet = "";
76
				if (removePrefix) {
76
					if (removePrefix) {
77
					cleObjet = cle.replaceFirst("^"+Personne.PREFIXE+"_", "");
77
						cleObjet = cle.replaceFirst("^"+Personne.PREFIXE+"_", "");
78
					cleObjet = cle.replaceFirst("^"+Publication.PREFIXE+"_", "");
-
 
79
					cleObjet = cleObjet.replaceFirst("^"+PREFIXE+"_", "");
78
						cleObjet = cle.replaceFirst("^"+Publication.PREFIXE+"_", "");
80
				}
79
						cleObjet = cleObjet.replaceFirst("^"+PREFIXE+"_", "");
-
 
80
					} else {
-
 
81
						cleObjet = cle;
81
				else {
82
					}
82
					cleObjet = cle;
-
 
83
				}
83
					this.set(cleObjet, modeleProprietes.get(cle));
-
 
84
				}
-
 
85
			}
-
 
86
	
-
 
87
			setPersonne(new Personne(modele, removePrefix));
-
 
88
			setPublicationLiee(new Publication(modele, removePrefix));
-
 
89
			this.set("_role_", modeleProprietes.get("_role_"));
-
 
90
			this.set("_etat_", modeleProprietes.get("_etat_"));
84
				this.set(cleObjet, a.get(cle));
91
		} else {
85
			}
-
 
86
		}
-
 
87
 
-
 
88
		setPersonne(new Personne(model, removePrefix));
-
 
89
		setPublicationLiee(new Publication(model, removePrefix));
-
 
90
		this.set("_role_", a.get("_role_"));
92
			Log.debug("Le modèle passé en paramètre ne doit pas être vide");
Line 91... Line 93...
91
		this.set("_etat_", a.get("_etat_"));
93
		}
92
	}
94
	}
93
	
95
	
Line 100... Line 102...
100
			set("_annee_", "");
102
			set("_annee_", "");
101
			set("indication_nvt", publicationLiee.getIndicationNvt());
103
			set("indication_nvt", publicationLiee.getIndicationNvt());
102
			set("fascicule", publicationLiee.getFascicule());
104
			set("fascicule", publicationLiee.getFascicule());
103
			set("truk_pages", publicationLiee.getPages());
105
			set("truk_pages", publicationLiee.getPages());
104
			set("_etat_", "");
106
			set("_etat_", "");
105
			set("_role_", this.get("id_role"));
107
			set("_role_", this.getIdRole());
106
		} else {
108
		} else {
107
			set("cpu_fmt_auteur", publicationLiee.getAuteur());
109
			set("cpu_fmt_auteur", publicationLiee.getAuteur());
108
			set("cpu_titre", publicationLiee.getTitre());
110
			set("cpu_titre", publicationLiee.getTitre());
109
			set("cpu_collection", publicationLiee.getCollection());
111
			set("cpu_collection", publicationLiee.getCollection());
110
			set("_editeur_", "");
112
			set("_editeur_", "");
111
			set("_annee_", "");
113
			set("_annee_", "");
112
			set("cpu_indication_nvt", publicationLiee.getIndicationNvt());
114
			set("cpu_indication_nvt", publicationLiee.getIndicationNvt());
113
			set("cpu_fascicule", publicationLiee.getFascicule());
115
			set("cpu_fascicule", publicationLiee.getFascicule());
114
			set("cpu_truk_pages", publicationLiee.getPages());
116
			set("cpu_truk_pages", publicationLiee.getPages());
115
			set("_etat_", "");
117
			set("_etat_", "");
116
			set("_role_", this.get("id_role"));
118
			set("_role_", this.getIdRole());
117
		}
119
		}
118
	}
120
	}
Line 119... Line -...
119
	
-
 
120
	
121
	
121
	@Override
122
	@Override
122
	protected String getPrefixe() {
123
	protected String getPrefixe() {
123
		return PREFIXE;
124
		return PREFIXE;
Line 174... Line 175...
174
		}
175
		}
175
	}
176
	}
Line 176... Line 177...
176
	
177
	
177
	// ID PUBLICATION
178
	// ID PUBLICATION
178
	public String getIdPublication() {
-
 
179
		if (removePrefix) return renvoyerValeurCorrecte("id_publication");
179
	public String getIdPublication() {
180
		else return renvoyerValeurCorrecte("cpuap_id_publication");
180
		return renvoyerValeurCorrecte("id_publication");
181
	}
181
	}
182
	public void setIdPublication(String id) {
182
	public void setIdPublication(String id) {
183
		if (removePrefix) set("id_publication", id);
-
 
184
		else set("cpuap_id_publication", id);
183
		setValeurCorrecte("id_publication", id);
Line 185... Line 184...
185
	}
184
	}
186
	
185
	
187
	// PUBLICATION LIEE
186
	// PUBLICATION LIEE
188
	public Publication getPublicationLiee()	{
187
	public Publication getPublicationLiee() {
Line 189... Line 188...
189
		return this.publicationLiee;
188
		return this.publicationLiee;
190
	}
189
	}
191
	
190
	
192
	// LIER PUBLICATION
191
	// LIER PUBLICATION
193
	public void setPublicationLiee(Publication publication)	{
192
	public void setPublicationLiee(Publication publication)	{
Line 194... Line -...
194
		this.publicationLiee = publication;
-
 
195
		initialiserChampsPourGrille();
-
 
196
	}
-
 
197
	
-
 
198
	// ROLE
-
 
199
	public String getRole() {
-
 
200
		String role = this.get("_role_");
-
 
201
		if (role != null)	{
-
 
202
			return role;
-
 
203
		} else 	{
-
 
204
			return "";
193
		this.publicationLiee = publication;
205
		}
194
		initialiserChampsPourGrille();
206
	}
-
 
207
	
195
	}
208
	// ID PERSONNE
196
	
209
	public String getIdPersonne() {
197
	// ID PERSONNE
210
		if (removePrefix) return renvoyerValeurCorrecte("id_personne");
198
	public String getIdPersonne() {
211
		else return renvoyerValeurCorrecte("cpuap_id_personne");
-
 
212
	}
199
		return renvoyerValeurCorrecte("id_personne");
Line 213... Line 200...
213
	public void setIdPersonne(String id) {
200
	}
214
		if (removePrefix) set("id_personne", id);
201
	public void setIdPersonne(String id) {
215
		else set(PREFIXE+"_id_personne", id);
202
		setValeurCorrecte("id_personne", id);
216
	}
203
	}
217
	
204
	
-
 
205
	// ID RôLE
218
	// ID RôLE
206
	public String getIdRole() {
-
 
207
		return renvoyerValeurCorrecte("id_role");
-
 
208
	}
-
 
209
	public void setIdRole(String id) {
-
 
210
		setValeurCorrecte("id_role", id);
-
 
211
		this.set("_role_", id);
-
 
212
	}
-
 
213
	
-
 
214
	// ROLE
-
 
215
	public String getRole() {
-
 
216
		String role = this.get("_role_");
219
	public String getIdRole() {
217
		if (role != null)	{
Line 220... Line 218...
220
		return renvoyerValeurCorrecte("id_role");
218
			return role;
221
	}
219
		} else 	{
222
	public void setIdRole(String id) {
220
			return "";
223
		set("id_role", id);
221
		}
224
	}
222
	}
225
		
223
		
226
	// TYPE
224
	// TYPE
227
	public String getType() {
225
	public String getType() {
228
		return renvoyerValeurCorrecte("ce_truk_type");
226
		return renvoyerValeurCorrecte("ce_truk_type");
229
	}
227
	}
Line 230... Line 228...
230
	public void setType(String type) {
228
	public void setType(String type) {
231
		set("ce_truk_type", type);
229
		setValeurCorrecte("ce_truk_type", type);
232
	}
-
 
233
	public void setFonction(String type, String valeur) {
230
	}
234
		setChaineDenormaliseUnique("ce_truk_type", type, valeur);
231
	public void setFonction(String type, String valeur) {
235
	}
232
		setChaineDenormaliseUnique("ce_truk_type", type, valeur);
236
	
233
	}
237
	// ORDRE DES AUTEURS
-
 
238
	public String getOrdreAuteurs() {
234
	
239
		if (removePrefix) return renvoyerValeurCorrecte("ordre");
-
 
240
		else return renvoyerValeurCorrecte(PREFIXE+"_ordre");
235
	// ORDRE DES AUTEURS
241
	}
236
	public String getOrdreAuteurs() {
242
	public void setOrdreAuteurs(String ordre) {
237
		return renvoyerValeurCorrecte("ordre");
243
		if (ordre.matches("[0-9]+")) {
238
	}
244
			if (removePrefix) this.set("ordre", ordre);
239
	public void setOrdreAuteurs(String ordre) {