Subversion Repositories eFlore/Applications.cel

Rev

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

Rev Author Line No. Line
734 aurelien 1
package org.tela_botanica.client.util;
2 aperonnet 2
 
642 aurelien 3
import org.tela_botanica.client.modeles.Observation;
4
 
2 aperonnet 5
public class Util {
6
 
7
	public Util() {
8
	}
9
 
10
	public static String toCelString(String str) {
7 aperonnet 11
		return str.substring(1, str.length() - 1);
2 aperonnet 12
		//
13
	}
642 aurelien 14
 
15
	public static String formaterLieu(Observation obs, String modeleLieu) {
16
 
17
		String lieuModele = modeleLieu;
18
 
19
		String commune = obs.getLocalite();
20
		String lieuDit = obs.getLieudit();
21
		String station = obs.getStation();
22
 
23
		String lieuCommuneFormate = "";
24
		String lieuDitFormate = "";
25
		String stationFormatee = "";
26
 
27
		if(commune != null && !commune.contains("000null") && !commune.trim().equals("")) {
28
			String	idLoc =obs.getIdentifiantLocalite().replaceAll(" ","/");
29
			if(idLoc != null && !idLoc.contains("000null") && !idLoc.trim().equals("")) {
30
 
31
				idLoc = idLoc.replaceAll("%","");
32
				idLoc = idLoc.replaceAll("\"","");
33
				idLoc = idLoc.replace('\\',' ');
34
				idLoc = idLoc.trim();
35
				lieuCommuneFormate += idLoc+" - ";
36
			}
37
			lieuCommuneFormate += commune;
38
			lieuModele = lieuModele.replaceAll("IDLOCCOMMUNE", lieuCommuneFormate);
39
		} else {
40
 
41
			lieuModele = lieuModele.replaceAll("IDLOCCOMMUNE,", lieuCommuneFormate);
42
		}
43
 
44
		if(lieuDit != null && !lieuDit.contains("000null") && !lieuDit.trim().equals("")) {
45
			lieuDitFormate += lieuDit;
46
			lieuModele = lieuModele.replaceAll("LIEUDIT", lieuDitFormate);
47
		} else {
48
			lieuModele = lieuModele.replaceAll("LIEUDIT,", lieuDitFormate);
49
		}
50
 
51
		if(station != null && !station.contains("000null") && !station.trim().equals("")) {
52
			stationFormatee += station;
53
			lieuModele = lieuModele.replaceAll("STATION", stationFormatee);
54
		} else {
55
			lieuModele = lieuModele.replaceAll("STATION", stationFormatee);
56
		}
57
 
58
		lieuModele = lieuModele.trim();
59
		lieuModele = lieuModele.replaceAll(",$","");
60
		lieuModele = lieuModele.replaceAll(",^$",", ");
61
 
62
		return lieuModele;
63
	}
64
 
65
	public static String supprimerNumDepartementChaineLocalite(String chaineLocaliteComplete) {
962 aurelien 66
		return chaineLocaliteComplete.replaceAll(" \\([0-9]*\\)", "");
642 aurelien 67
	}
673 aurelien 68
 
962 aurelien 69
	public static String convertirChaineZoneGeoVersDepartement(String chaineZoneGeo) {
70
		return (!chaineZoneGeo.equals("000null") && !chaineZoneGeo.equals("")) ? chaineZoneGeo.replaceAll("INSEE-C:", "").substring(0, 2): chaineZoneGeo;
71
	}
72
 
73
	public static String convertirChaineZoneGeoVersCodeInsee(String chaineZoneGeo) {
74
		return (!chaineZoneGeo.equals("000null") && !chaineZoneGeo.equals("")) ? chaineZoneGeo.replaceAll("INSEE-C:", ""): chaineZoneGeo;
75
	}
76
 
673 aurelien 77
	/***
78
	 * Fusionne les éléments d'un tableau en une chaîne
79
	 * @param delim : la chaîne de séparation
80
	 * @param args : la tableau
81
	 * @return la chaîne fusionnée
82
	 */
83
	public static String implode(String delim, String[] args){
84
		StringBuffer sb = new StringBuffer();
85
 
86
		int lgArgs = args.length;
87
 
88
		for(int i = 0; i < lgArgs; i++){
89
			if (i > 0) {
90
				sb.append(delim);
91
			}
92
 
93
			sb.append(args[i]);
94
		}
95
 
96
		return sb.toString();
97
	}
98
 
99
	public static boolean filtreValide(String[] filtre) {
100
 
101
		return (filtre.length == 2 &&
102
		filtre[0] != null &&
103
		!filtre[0].equals("") &&
104
		filtre[1] != null &&
105
		!filtre[1].equals(""));
106
	}
107
 
108
	public static String renvoyerMois(int numMois) {
109
 
110
		switch (numMois) {
111
		case 1:
112
			return "janvier" ;
113
		case 2:
114
			return "fevrier" ;
115
		case 3:
116
			return "mars" ;
117
		case 4:
118
			return "avril" ;
119
		case 5:
120
			return "mai" ;
121
		case 6:
122
			return "juin" ;
123
		case 7:
124
			return "juillet" ;
125
		case 8:
126
			return "août" ;
127
		case 9:
128
			return "septembre" ;
129
		case 10:
130
			return "octobre" ;
131
		case 11:
132
			return "novembre" ;
133
		case 12:
134
			return "décembre" ;
135
		default:
136
			return "Inconnu" ;
137
		}
138
	}
139
 
140
	public static String remplacerSautsDeligneMalEncodes(String chaineAvecSautsDeLignesMalEncodes) {
141
 
142
		String chaineAvecSautsDeLignesBienEncodes = chaineAvecSautsDeLignesMalEncodes.replace('\\','%');
143
		chaineAvecSautsDeLignesBienEncodes = chaineAvecSautsDeLignesBienEncodes.replaceAll("%n","%");
144
		chaineAvecSautsDeLignesBienEncodes = chaineAvecSautsDeLignesBienEncodes.replace('%','\n');
145
 
146
		return chaineAvecSautsDeLignesBienEncodes;
147
	}
148
 
149
	public static boolean verifierDateFormatCel(String dateAVerifier) {
150
 
151
		String dateRemplacee = remplacerSeparateursDateFormatCel(dateAVerifier);
152
		String[] tabDate = dateRemplacee.split("/");
153
 
154
		boolean retour = false;
155
 
156
		if(tabDate.length == 3) {
157
			try {
158
				int jour = Integer.parseInt(tabDate[0]);
159
				int mois = Integer.parseInt(tabDate[1]);
160
				int annee = Integer.parseInt(tabDate[2]);
161
 
162
				if(jour < 31 && mois < 12 && tabDate[2].length() == 4) {
163
					retour = true;
164
				}
165
			} catch (Exception e) {
166
 
167
			}
168
		}
169
 
170
		return retour;
171
	}
172
 
173
	public static String remplacerSeparateursDateFormatCel(String date) {
174
 
175
		String dateRemplacee = date.replaceAll("-", "/");
176
 
177
	    return dateRemplacee;
178
	}
2 aperonnet 179
}