Changeset 70 for ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/InformationLegend.java
- Timestamp:
- 04/26/10 19:12:49 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/InformationLegend.java
r68 r70 7 7 import org.medias.eccad.helpers.LoggerPerso; 8 8 import org.medias.eccad.helpers.SpringBeanFactory; 9 import org.medias.eccad.metier.generationRaster.colorMap.ColorMapping;10 import org.medias.eccad.metier.statistique.ServiceStatistique;11 9 import org.medias.eccad.modele.ColorTab; 12 10 import org.medias.eccad.modele.Legende; 13 11 import org.medias.eccad.persistance.dao.CodeDAO; 14 import org.medias.eccad.persistance.dao.ColorTabDAO;15 12 import org.medias.eccad.persistance.dao.GrilleDAO; 16 13 import org.medias.eccad.persistance.dao.ParametreDAO; … … 25 22 } 26 23 27 public List<String> getLegendValeur(ColorTab colortab ) {24 public List<String> getLegendValeur(ColorTab colortab, String unit) { 28 25 int taille = colortab.getLength(); 29 26 float tableau_valeur[] = colortab.getTab_min(); 30 27 float valeur; 31 32 28 List<String> liste = new LinkedList<String>(); 33 29 … … 36 32 valeur = tableau_valeur[i]; 37 33 liste.add(Float.toString(valeur)); 34 } 35 if (unit.equals("%")) { 36 liste.add(Float.toString(colortab.getMax())); 37 } else { 38 liste.add("\u2265 "+Float.toString(colortab.getMax())); 38 39 } 39 40 … … 45 46 * Cette fonction a pour vocation d'obtenir les informations suplémentaires à afficher sous la légende (par exemple les unités) 46 47 * @param id_grille l'identifiant de la grille 48 * @param fonction la fonction permettant de déterminer le mode d'affichage choisi 47 49 * @return la chaine de caractÚre représentant les informations 48 50 */ 49 public String getInfoSup(long id_grille) { 50 String information; 51 information = "Unit : "; 51 public String getInfoSup(long id_grille, String fonction) { 52 String information = ""; 52 53 ParametreDAO paramDAO = (ParametreDAO) xmlbean.getBean("parametreDAO"); 53 54 try { … … 55 56 } catch (PersistanceException e) { 56 57 e.printStackTrace(); 57 information += " none";58 information += "No unit"; 58 59 } 59 60 // Cas particulier: les totaux -> on change l'unité si besoin 61 if (fonction != null && (fonction.equals("totalDay") || fonction.equals("totalMonth") 62 || fonction.equals("totalYear") || fonction.equals("totalPeriod"))) { 63 if (information.equals("pers/km2")) { 64 information = "pers"; 65 } else if (information.equals("kg(X).m-2.s-1")) { 66 if (fonction.equals("totalDay")) { 67 information = "Tg(X)/day"; 68 } else if (fonction.equals("totalMonth")) { 69 information = "Tg(X)/month"; 70 } else if (fonction.equals("totalYear")) { 71 information = "Tg(X)/year"; 72 } else { 73 information = "Tg(X)/period"; 74 } 75 } 76 } 60 77 return information; 61 78 } … … 67 84 * @return 68 85 */ 69 public Legende getLegendText(long id_grille, ColorTab colortab ) {86 public Legende getLegendText(long id_grille, ColorTab colortab, String unit) { 70 87 GrilleDAO grille = (GrilleDAO) xmlbean.getBean("grilleDAO"); 71 88 CodeDAO codedao = (CodeDAO) xmlbean.getBean("codeDAO"); … … 75 92 try { 76 93 codif = grille.getCodification(id_grille); 94 // LoggerPerso.log(ServiceRaster.class, LoggerPerso.WARN, "type codification :" + codif); 77 95 } 78 96 catch (PersistanceException perse) { 79 97 LoggerPerso.log(ServiceRaster.class, LoggerPerso.WARN, "erreur récupération codif grille " + id_grille, perse); 80 return new Legende(getLegendValeur(colortab ), Legende.TYPE_VALUE);98 return new Legende(getLegendValeur(colortab,unit), Legende.TYPE_VALUE); 81 99 } 82 100 … … 84 102 if (codif.equals("coded")) { 85 103 legende = new Legende(codedao.getListCodeByGrille(id_grille), Legende.TYPE_CODED); 86 } 87 else { 88 legende = new Legende(getLegendValeur(colortab), Legende.TYPE_VALUE); 104 } else { 105 legende = new Legende(getLegendValeur(colortab,unit), Legende.TYPE_VALUE); 89 106 } 90 107 } 91 108 catch (PersistanceException perse) { 92 109 LoggerPerso.log(ServiceRaster.class, LoggerPerso.WARN, "erreur récupération liste des légendes de la grille " + id_grille, perse); 93 return legende = new Legende(getLegendValeur(colortab ), Legende.TYPE_VALUE);110 return legende = new Legende(getLegendValeur(colortab,unit), Legende.TYPE_VALUE); 94 111 } 95 112 … … 102 119 int taille = colortab.getLength(); 103 120 float tableau_valeur[] = colortab.getTab_min(); 104 121 105 122 // on prend n-1 valeur ^^ 106 123 for (int i=1; i<taille; i++) { 107 valeur = tableau_valeur[i]; 108 valeur = (valeur *(max-min))+min; 124 valeur = (tableau_valeur[i] *(max-min))+min; 109 125 liste.add(fixeDecimal(Float.toString(valeur))); 110 126 } 127 valeur = (colortab.getMax() *(max-min))+min; 128 liste.add(fixeDecimal(Float.toString(valeur))); 111 129 return new Legende(liste , Legende.TYPE_VALUE); 112 130 } … … 115 133 116 134 private String fixeDecimal(String entree) { 117 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "-------------Legende------------------------******------>entree "+entree);135 // LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "-------------Legende------------------------******------>entree "+entree); 118 136 if (entree == null) 119 137 return "nc"; 120 138 int index = entree.lastIndexOf("."); 121 139 int indexE = entree.lastIndexOf("E"); 122 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree --lll-->2 "+indexE+" "+index+" "+entree.length());123 if ( indexE == -1 && index != -1 && entree.length() >= index + 5) 140 // LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "entree --lll-->2 "+indexE+" "+index+" "+entree.length()); 141 if ( indexE == -1 && index != -1 && entree.length() >= index + 5) { 124 142 entree = entree.substring(0, entree.lastIndexOf(".")+5); 125 if ( indexE != -1 && index != -1 && entree.length() >= index + 5) 143 } 144 else if ( indexE != -1 && index != -1 && entree.length() >= index + 5) 126 145 { 127 146 String aEntree = entree; 128 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "aEntree "+aEntree.lastIndexOf("E")+" "+aEntree.length()+" "+aEntree.lastIndexOf("E")+" "+aEntree.length());147 // LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "aEntree "+aEntree.lastIndexOf("E")+" "+aEntree.length()+" "+aEntree.lastIndexOf("E")+" "+aEntree.length()); 129 148 aEntree=aEntree.substring(aEntree.lastIndexOf("E"), aEntree.lastIndexOf("E")+aEntree.length()-aEntree.lastIndexOf("E")); 130 entree = entree.substring(0, entree.lastIndexOf(".")+5)+aEntree; 149 //entree = entree.substring(0, entree.lastIndexOf(".")+5)+aEntree; 150 entree = entree.substring(0, 3)+aEntree; 131 151 } 132 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree "+entree);152 // LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "entree "+entree); 133 153 return entree; 134 154 }
Note: See TracChangeset
for help on using the changeset viewer.