Subversion Repositories eFlore/Applications.cel

Rev

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