Ignore:
Timestamp:
04/26/10 19:12:49 (14 years ago)
Author:
cbipsl
Message:

maj eccad V3.2

Location:
ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF
Files:
131 edited

Legend:

Unmodified
Added
Removed
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/classes/build.xml

    r68 r70  
    1 <project name="Eccad" default="war" basedir="."> 
     1<project name="Eccad" default="deploy" basedir="."> 
    22 
    33        <property file="${basedir}/build.properties" /> 
    4         <property name="build" value="../build" /> 
     4        <property name="build" value="../classes" /> 
    55        <property name="lib" value="../lib" /> 
     6        <property name="dist" value="../../.." /> 
    67        <property name="src" value="." /> 
    78        <path id="libPath"> 
     
    1718        </path> 
    1819 
     20        <!-- Déploiement de l'archive --> 
     21        <target name="deploy" depends="war"> 
     22                <!--<delete dir="${tomcat}/webapps/${app.name}"/>--> 
     23                <!--<unjar src="${dist}/${app.name}.war" dest="${tomcat}/webapps/${app.name}"/>--> 
     24        <copy todir="${tomcat}/webapps" includeEmptyDirs="no"> 
     25            <fileset file="${dist}/${app.name}.war"/> 
     26        </copy> 
     27        </target> 
     28 
    1929        <target name="war" depends="compile"> 
    20                 <war destfile="../../../${app.name}.war" webxml="../web.xml"> 
     30                <war destfile="${dist}/${app.name}.war" webxml="../web.xml"> 
    2131                        <zipfileset dir="../../" includes="**/*" prefix="" excludes=".tomcatplugin .classpath .project"/> 
    22                         <lib dir="${lib}"> 
    23                                 <exclude name="servlet-api.jar" /> 
    24                                 <exclude name="gnujaxp.jar" /> 
     32                        <!--lib dir="${lib}"> 
    2533                                <exclude name="xercesImpl.jar" /> 
    2634                        </lib> 
    27                         <classes dir="${build}" /> 
     35                        <classes dir="${build}" /--> 
    2836                </war> 
    2937        </target> 
     
    3846                        <classpath refid="libPath" /> 
    3947                </javac> 
    40  
    4148        </target> 
    4249</project> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/classes/eccad_spring.xml

    r68 r70  
    77 
    88<beans> 
    9       
    10    <bean id="urlbean" class="org.medias.eccad.presentation.bean.URLBeanValue"> 
    11                 <property name="url_home"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1218</value></property> <!-- l'url home d'eccad --> 
    12                 <property name="url_products"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1228</value></property> 
    13                 <property name="url_tools"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1235</value></property> 
    14                 <property name="url_manual"><value>http://ether.ipsl.jussieu.fr/etherTypo/fileadmin/files/ECCAD/doc/Eccad_users_manual.pdf</value></property> 
    15    </bean> 
     9 
     10        <bean id="urlbean" class="org.medias.eccad.presentation.bean.URLBeanValue"> 
     11                <property name="url_home"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1218</value></property> 
     12                <property name="url_products"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1228</value></property> 
     13                <property name="url_tools"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1226</value></property> 
     14                <property name="url_manual"><value>http://ether.ipsl.jussieu.fr/etherTypo/fileadmin/files/ECCAD/doc/Eccad_users_manual.pdf</value></property> 
     15        </bean> 
    1616    
    1717   <!-- Information extracteur --> 
     
    2424   <!-- Information Connexion jdbc --> 
    2525   <bean id="infoConnect" class="org.medias.eccad.persistance.InfoConnectBean"> 
    26                 <property name="db_url"><value> eccad.ipsl.jussieu.fr </value></property> 
    27                 <property name="db_name"><value> ECCAD3FINAL </value></property> 
     26                <property name="db_url"><value>eccad.ipsl.jussieu.fr</value></property> 
     27                <property name="db_name"><value>ECCAD3FINAL</value></property> 
    2828                <property name="db_port"><value>5432</value></property> 
    29                 <property name="db_login"><value>eccad </value></property> 
    30                 <property name="db_passwd"><value>  </value></property> 
     29                <property name="db_login"><value>eccad</value></property> 
     30                <property name="db_passwd"><value></value></property> 
    3131   </bean> 
    3232    
     
    4444                <property name="sgbd"><ref local="sgbd"/></property> 
    4545        </bean> 
    46          
     46 
    4747        <bean id="catParametreDAO" class="org.medias.eccad.persistance.jdbc.CatParametreDAOjdbc"> 
    4848                <property name="sgbd"><ref local="sgbd"/></property> 
     
    5050         
    5151        <bean id="parametreDAO" class="org.medias.eccad.persistance.jdbc.ParametreDAOjdbc"> 
     52                <property name="sgbd"><ref local="sgbd"/></property> 
     53        </bean> 
     54 
     55        <bean id="secteurDAO" class="org.medias.eccad.persistance.jdbc.SecteurDAOjdbc"> 
     56                <property name="sgbd"><ref local="sgbd"/></property> 
     57        </bean> 
     58 
     59        <bean id="rcpDAO" class="org.medias.eccad.persistance.jdbc.RcpDAOjdbc"> 
    5260                <property name="sgbd"><ref local="sgbd"/></property> 
    5361        </bean> 
     
    7179        </bean> 
    7280         
     81        <bean id="classDistributionTabDAO" class="org.medias.eccad.persistance.jdbc.ClassDistributionTabDAOjdbc"> 
     82                <property name="sgbd"><ref local="sgbd"/></property> 
     83        </bean> 
     84 
    7385        <bean id="xmlDAO" class="org.medias.eccad.persistance.hibernate.XmlDAOhibernate"> 
    7486        </bean> 
    7587 
    7688        <!-- fin info jdbc --> 
    77          
     89 
    7890        <!-- Generation des rasters --> 
    79    <bean id="worldfile" class="org.medias.eccad.metier.generationRaster.GenerateurWorldFile" singleton="false"> 
    80                 <property name="pixelX"><value>-180</value></property> 
    81                 <property name="pixelY"><value>90</value></property> 
    82    </bean> 
    83    <bean id="colormap" class="org.medias.eccad.metier.generationRaster.colorMap.ColorMappingIntervalle" singleton="false"> 
    84    </bean> 
    85    <!-- fin generation des rasters --> 
     91        <bean id="worldfile" class="org.medias.eccad.metier.generationRaster.GenerateurWorldFile"> 
     92                <property name="pixelX"><value>-180</value></property> 
     93                <property name="pixelY"><value>90</value></property> 
     94        </bean> 
     95        <bean id="colormap" class="org.medias.eccad.metier.generationRaster.colorMap.ColorMappingIntervalle" singleton="false"> 
     96        </bean> 
     97        <!-- fin generation des rasters --> 
    8698    
    8799   <!-- Gestion des visualisation et des traducteurs associés --> 
    88100   <bean id="traducteur_temporel" class="org.medias.eccad.metier.traducteur.TraducteurVisuTemporel"/> 
    89101   <bean id="traducteur_multiplan" class="org.medias.eccad.metier.traducteur.TraducteurVisuMultiplan"/> 
    90    <bean id="traducteur_facteur" class="org.medias.eccad.metier.traducteur.TraducteurVisuTemporel"/> 
    91     
     102 
    92103   <bean id="monoplan" class="org.medias.eccad.modele.Visualisation"> 
    93104                <property name="page_jsp"><value>./visualisation/classe.jsp</value></property> 
    94                 <property name="traducteur"><value>traducteur_temporel</value></property> 
     105                <property name="traducteur"><value>traducteur_multiplan</value></property> 
    95106   </bean> 
    96107    
     
    104115                <property name="traducteur"><value>traducteur_temporel</value></property> 
    105116  </bean> 
    106    
    107   <bean id="facteur" class="org.medias.eccad.modele.Visualisation"> 
    108                 <property name="page_jsp"><value>./visualisation/temporel.jsp</value></property> 
    109                 <property name="traducteur"><value>traducteur_facteur</value></property> 
    110   </bean> 
    111    
     117 
    112118   <!-- Fin de la gestion des visualisations --> 
    113     
     119 
    114120</beans> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/classes/eccad_spring_test.xml

    r68 r70  
    6868        </bean> 
    6969         
     70        <bean id="classDistributionTabDAO" class="org.medias.eccad.persistance.jdbc.ClassDistributionTabDAOjdbc"> 
     71                <property name="sgbd"><ref local="sgbd"/></property> 
     72        </bean> 
     73         
    7074        <bean id="xmlDAO" class="org.medias.eccad.persistance.hibernate.XmlDAOhibernate"> 
    7175        </bean> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/classes/hibernate.cfg.xml

    r68 r70  
    88        <property name="hibernate.connection.driver_class">org.postgresql.Driver</property> 
    99<!--    <property name="hibernate.connection.password">www001</property> --> 
    10         <property name="hibernate.connection.url"> jdbc:postgresql://eccad.ipsl.jussieu.fr:5432/ECCAD3FINAL</property> 
     10        <property name="hibernate.connection.url">jdbc:postgresql://eccad.ipsl.jussieu.fr:5432/ECCAD3FINAL</property> 
    1111        <property name="hibernate.connection.username">eccad</property> 
    1212        <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property> 
     
    2121         
    2222         
    23         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fichier.hbm.xml" /> 
    24         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ColorIndex.hbm.xml" /> 
    25         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienorganisme.hbm.xml" /> 
    26         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Metadata.hbm.xml" /> 
     23        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Categorieparametre.hbm.xml" /> 
    2724        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Code.hbm.xml" /> 
    28         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produitorig.hbm.xml" /> 
    29         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produit.hbm.xml" /> 
    3025        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Codification.hbm.xml" /> 
    3126        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Color.hbm.xml" /> 
    32         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Unite.hbm.xml" /> 
     27        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ColorIndex.hbm.xml" /> 
     28        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Colormap.hbm.xml" /> 
     29        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Concerne.hbm.xml" /> 
     30        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Contact.hbm.xml" /> 
    3331        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Domaine.hbm.xml" /> 
    34         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Contact.hbm.xml" /> 
     32        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fichier.hbm.xml" /> 
     33        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fournit.hbm.xml" /> 
     34        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Grille.hbm.xml" /> 
     35        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienpersonne.hbm.xml" /> 
     36        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Metadata.hbm.xml" /> 
     37        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Organisme.hbm.xml" /> 
     38        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ParamColor.hbm.xml" /> 
     39        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Parametre.hbm.xml" /> 
     40        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Personne.hbm.xml" /> 
     41        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produit.hbm.xml" /> 
     42        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produitorig.hbm.xml" /> 
     43        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/References.hbm.xml" /> 
    3544        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Requete.hbm.xml" /> 
    3645        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Typecodification.hbm.xml" /> 
    37         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Colormap.hbm.xml" /> 
    38         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Categorieparametre.hbm.xml" /> 
    39         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ParamColor.hbm.xml" /> 
    40         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Organisme.hbm.xml" /> 
    41         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Personne.hbm.xml" /> 
    42         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/References.hbm.xml" /> 
    43         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Grille.hbm.xml" /> 
    44         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Concerne.hbm.xml" /> 
    45         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Sequence.hbm.xml" /> 
    46 <!-- >        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Ceoslevel.hbm.xml" />--> 
    47         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fournit.hbm.xml" /> 
    48         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienpersonne.hbm.xml" /> 
    4946        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Typeproduit.hbm.xml" /> 
    50         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Parametre.hbm.xml" /> 
     47        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Unite.hbm.xml" /> 
    5148    </session-factory> 
    5249</hibernate-configuration> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/classes/org/medias/eccad/persistance/hibernate/domaine/Metadata.hbm.xml

    r68 r70  
    2424            <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Produit" /> 
    2525        </set> 
    26         <set name="lienorganismes" inverse="true"> 
    27             <key> 
    28                 <column name="id_metadata" not-null="true" /> 
    29             </key> 
    30             <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Lienorganisme" /> 
    31         </set> 
    3226        <set name="lienpersonnes" inverse="true"> 
    3327            <key> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/classes/org/medias/eccad/persistance/hibernate/domaine/Organisme.hbm.xml

    r68 r70  
    4242            <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Fournit" /> 
    4343        </set> 
    44         <set name="lienorganismes" inverse="true"> 
    45             <key> 
    46                 <column name="id_organisme" not-null="true" /> 
    47             </key> 
    48             <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Lienorganisme" /> 
    49         </set> 
    5044    </class> 
    5145</hibernate-mapping> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/classes/org/medias/eccad/persistance/hibernate/domaine/Produitorig.hbm.xml

    r68 r70  
    1515            <column name="title_produitorig" length="128" unique="true" /> 
    1616        </property> 
    17         <property name="orgProduitorig" type="string"> 
    18             <column name="org_produitorig" length="128" /> 
    19         </property> 
    20         <property name="dateProduitorig" type="date"> 
    21             <column name="date_produitorig" length="4" /> 
     17        <property name="dateProduitorig" type="string"> 
     18            <column name="date_produitorig" length="128" /> 
    2219        </property> 
    2320        <property name="editionProduitorig" type="string"> 
    2421            <column name="edition_produitorig" length="128" /> 
    2522        </property> 
    26         <property name="begintimeProduitorig" type="date"> 
    27             <column name="begintime_produitorig" length="4" /> 
     23        <property name="begintimeProduitorig" type="string"> 
     24            <column name="begintime_produitorig" length="128" /> 
    2825        </property> 
    29         <property name="endtimeProduitorig" type="date"> 
    30             <column name="endtime_produitorig" length="4" /> 
     26        <property name="endtimeProduitorig" type="string"> 
     27            <column name="endtime_produitorig" length="128" /> 
    3128        </property> 
    3229        <property name="earthellipsProduitorig" type="string"> 
     
    3835        <property name="spatialresProduitorig" type="string"> 
    3936            <column name="spatialres_produitorig" length="128" /> 
    40         </property> 
    41         <property name="projectionProduitorig" type="string"> 
    42             <column name="projection_produitorig" length="128" /> 
    4337        </property> 
    4438        <property name="methodProduitorig" type="string"> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/javaface-config.xml

    r68 r70  
    5656 
    5757<managed-bean> 
     58        <managed-bean-name>grapheBean</managed-bean-name> 
     59        <managed-bean-class>org.medias.eccad.presentation.bean.GrapheBean</managed-bean-class> 
     60        <managed-bean-scope>request</managed-bean-scope> 
     61</managed-bean> 
     62 
     63<managed-bean> 
    5864        <managed-bean-name>emissionBean</managed-bean-name> 
    5965        <managed-bean-class>org.medias.eccad.presentation.bean.emission.EmissionBean</managed-bean-class> 
     
    101107        </navigation-case> 
    102108        <navigation-case> 
     109                <from-outcome>page_extract_before</from-outcome> 
     110                <to-view-id>/JSF/page_extract_before.jsp</to-view-id> 
     111        </navigation-case> 
     112        <navigation-case> 
    103113                <from-outcome>page_extract_emission</from-outcome> 
    104114                <to-view-id>/JSF/page_extract_emission.jsp</to-view-id> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/build.xml

    r68 r70  
    1 <project name="Eccad" default="war" basedir="."> 
     1<project name="Eccad" default="deploy" basedir="."> 
    22 
    33        <property file="${basedir}/build.properties" /> 
    4         <property name="build" value="../build" /> 
     4        <property name="build" value="../classes" /> 
    55        <property name="lib" value="../lib" /> 
     6        <property name="dist" value="../../.." /> 
    67        <property name="src" value="." /> 
    78        <path id="libPath"> 
     
    1718        </path> 
    1819 
     20        <!-- Déploiement de l'archive --> 
     21        <target name="deploy" depends="war"> 
     22                <!--<delete dir="${tomcat}/webapps/${app.name}"/>--> 
     23                <!--<unjar src="${dist}/${app.name}.war" dest="${tomcat}/webapps/${app.name}"/>--> 
     24        <copy todir="${tomcat}/webapps" includeEmptyDirs="no"> 
     25            <fileset file="${dist}/${app.name}.war"/> 
     26        </copy> 
     27        </target> 
     28 
    1929        <target name="war" depends="compile"> 
    20                 <war destfile="../../../${app.name}.war" webxml="../web.xml"> 
     30                <war destfile="${dist}/${app.name}.war" webxml="../web.xml"> 
    2131                        <zipfileset dir="../../" includes="**/*" prefix="" excludes=".tomcatplugin .classpath .project"/> 
    22                         <lib dir="${lib}"> 
    23                                 <exclude name="servlet-api.jar" /> 
    24                                 <exclude name="gnujaxp.jar" /> 
     32                        <!--lib dir="${lib}"> 
    2533                                <exclude name="xercesImpl.jar" /> 
    2634                        </lib> 
    27                         <classes dir="${build}" /> 
     35                        <classes dir="${build}" /--> 
    2836                </war> 
    2937        </target> 
     
    3846                        <classpath refid="libPath" /> 
    3947                </javac> 
    40  
    4148        </target> 
    4249</project> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/eccad_spring.xml

    r68 r70  
    77 
    88<beans> 
    9       
    10    <bean id="urlbean" class="org.medias.eccad.presentation.bean.URLBeanValue"> 
    11                 <property name="url_home"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1218</value></property> <!-- l'url home d'eccad --> 
    12                 <property name="url_products"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1228</value></property> 
    13                 <property name="url_tools"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1235</value></property> 
    14                 <property name="url_manual"><value>http://ether.ipsl.jussieu.fr/etherTypo/fileadmin/files/ECCAD/doc/Eccad_users_manual.pdf</value></property> 
    15    </bean> 
     9 
     10        <bean id="urlbean" class="org.medias.eccad.presentation.bean.URLBeanValue"> 
     11                <property name="url_home"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1218</value></property> 
     12                <property name="url_products"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1228</value></property> 
     13                <property name="url_tools"><value>http://ether.ipsl.jussieu.fr/etherTypo/?id=1226</value></property> 
     14                <property name="url_manual"><value>http://ether.ipsl.jussieu.fr/etherTypo/fileadmin/files/ECCAD/doc/Eccad_users_manual.pdf</value></property> 
     15        </bean> 
    1616    
    1717   <!-- Information extracteur --> 
     
    2424   <!-- Information Connexion jdbc --> 
    2525   <bean id="infoConnect" class="org.medias.eccad.persistance.InfoConnectBean"> 
    26                 <property name="db_url"><value> eccad.ipsl.jussieu.fr </value></property> 
    27                 <property name="db_name"><value> ECCAD3FINAL </value></property> 
     26                <property name="db_url"><value>eccad.ipsl.jussieu.fr</value></property> 
     27                <property name="db_name"><value>ECCAD3FINAL</value></property> 
    2828                <property name="db_port"><value>5432</value></property> 
    29                 <property name="db_login"><value>eccad </value></property> 
    30                 <property name="db_passwd"><value>  </value></property> 
     29                <property name="db_login"><value>eccad</value></property> 
     30                <property name="db_passwd"><value></value></property> 
    3131   </bean> 
    3232    
     
    4444                <property name="sgbd"><ref local="sgbd"/></property> 
    4545        </bean> 
    46          
     46 
    4747        <bean id="catParametreDAO" class="org.medias.eccad.persistance.jdbc.CatParametreDAOjdbc"> 
    4848                <property name="sgbd"><ref local="sgbd"/></property> 
     
    5050         
    5151        <bean id="parametreDAO" class="org.medias.eccad.persistance.jdbc.ParametreDAOjdbc"> 
     52                <property name="sgbd"><ref local="sgbd"/></property> 
     53        </bean> 
     54 
     55        <bean id="secteurDAO" class="org.medias.eccad.persistance.jdbc.SecteurDAOjdbc"> 
     56                <property name="sgbd"><ref local="sgbd"/></property> 
     57        </bean> 
     58 
     59        <bean id="rcpDAO" class="org.medias.eccad.persistance.jdbc.RcpDAOjdbc"> 
    5260                <property name="sgbd"><ref local="sgbd"/></property> 
    5361        </bean> 
     
    7179        </bean> 
    7280         
     81        <bean id="classDistributionTabDAO" class="org.medias.eccad.persistance.jdbc.ClassDistributionTabDAOjdbc"> 
     82                <property name="sgbd"><ref local="sgbd"/></property> 
     83        </bean> 
     84 
    7385        <bean id="xmlDAO" class="org.medias.eccad.persistance.hibernate.XmlDAOhibernate"> 
    7486        </bean> 
    7587 
    7688        <!-- fin info jdbc --> 
    77          
     89 
    7890        <!-- Generation des rasters --> 
    79    <bean id="worldfile" class="org.medias.eccad.metier.generationRaster.GenerateurWorldFile" singleton="false"> 
    80                 <property name="pixelX"><value>-180</value></property> 
    81                 <property name="pixelY"><value>90</value></property> 
    82    </bean> 
    83    <bean id="colormap" class="org.medias.eccad.metier.generationRaster.colorMap.ColorMappingIntervalle" singleton="false"> 
    84    </bean> 
    85    <!-- fin generation des rasters --> 
     91        <bean id="worldfile" class="org.medias.eccad.metier.generationRaster.GenerateurWorldFile"> 
     92                <property name="pixelX"><value>-180</value></property> 
     93                <property name="pixelY"><value>90</value></property> 
     94        </bean> 
     95        <bean id="colormap" class="org.medias.eccad.metier.generationRaster.colorMap.ColorMappingIntervalle" singleton="false"> 
     96        </bean> 
     97        <!-- fin generation des rasters --> 
    8698    
    8799   <!-- Gestion des visualisation et des traducteurs associés --> 
    88100   <bean id="traducteur_temporel" class="org.medias.eccad.metier.traducteur.TraducteurVisuTemporel"/> 
    89101   <bean id="traducteur_multiplan" class="org.medias.eccad.metier.traducteur.TraducteurVisuMultiplan"/> 
    90    <bean id="traducteur_facteur" class="org.medias.eccad.metier.traducteur.TraducteurVisuTemporel"/> 
    91     
     102 
    92103   <bean id="monoplan" class="org.medias.eccad.modele.Visualisation"> 
    93104                <property name="page_jsp"><value>./visualisation/classe.jsp</value></property> 
    94                 <property name="traducteur"><value>traducteur_temporel</value></property> 
     105                <property name="traducteur"><value>traducteur_multiplan</value></property> 
    95106   </bean> 
    96107    
     
    104115                <property name="traducteur"><value>traducteur_temporel</value></property> 
    105116  </bean> 
    106    
    107   <bean id="facteur" class="org.medias.eccad.modele.Visualisation"> 
    108                 <property name="page_jsp"><value>./visualisation/temporel.jsp</value></property> 
    109                 <property name="traducteur"><value>traducteur_facteur</value></property> 
    110   </bean> 
    111    
     117 
    112118   <!-- Fin de la gestion des visualisations --> 
    113     
     119 
    114120</beans> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/eccad_spring.xml.template

    r68 r70  
    2626   <!-- fin generation des rasters --> 
    2727    
    28    <!-- Gestion des visualisation et des traducteurs associés --> 
     28   <!-- Gestion des visualisation et des traducteurs associï¿œs --> 
    2929   <bean id="traducteur_temporel" class="org.medias.eccad.metier.traducteur.TraducteurVisuTemporel"/> 
    3030   <bean id="traducteur_multiplan" class="org.medias.eccad.metier.traducteur.TraducteurVisuMultiplan"/> 
     
    3939                <property name="traducteur"><value>traducteur_multiplan</value></property> 
    4040  </bean> 
    41    
     41 
    4242   <bean id="temporal" class="org.medias.eccad.modele.Visualisation"> 
    4343                <property name="page_jsp"><value>./visualisation/temporel.jsp</value></property> 
    4444                <property name="traducteur"><value>traducteur_temporel</value></property> 
    4545  </bean> 
    46    
     46 
    4747   <!-- Fin de la gestion des visualisations --> 
    4848    
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/eccad_spring_test.xml

    r68 r70  
    6868        </bean> 
    6969         
     70        <bean id="classDistributionTabDAO" class="org.medias.eccad.persistance.jdbc.ClassDistributionTabDAOjdbc"> 
     71                <property name="sgbd"><ref local="sgbd"/></property> 
     72        </bean> 
     73         
    7074        <bean id="xmlDAO" class="org.medias.eccad.persistance.hibernate.XmlDAOhibernate"> 
    7175        </bean> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/hibernate.cfg.xml

    r68 r70  
    88        <property name="hibernate.connection.driver_class">org.postgresql.Driver</property> 
    99<!--    <property name="hibernate.connection.password">www001</property> --> 
    10         <property name="hibernate.connection.url"> jdbc:postgresql://eccad.ipsl.jussieu.fr:5432/ECCAD3FINAL</property> 
     10        <property name="hibernate.connection.url">jdbc:postgresql://eccad.ipsl.jussieu.fr:5432/ECCAD3FINAL</property> 
    1111        <property name="hibernate.connection.username">eccad</property> 
    1212        <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property> 
     
    2121         
    2222         
    23         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fichier.hbm.xml" /> 
    24         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ColorIndex.hbm.xml" /> 
    25         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienorganisme.hbm.xml" /> 
    26         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Metadata.hbm.xml" /> 
     23        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Categorieparametre.hbm.xml" /> 
    2724        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Code.hbm.xml" /> 
    28         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produitorig.hbm.xml" /> 
    29         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produit.hbm.xml" /> 
    3025        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Codification.hbm.xml" /> 
    3126        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Color.hbm.xml" /> 
    32         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Unite.hbm.xml" /> 
     27        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ColorIndex.hbm.xml" /> 
     28        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Colormap.hbm.xml" /> 
     29        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Concerne.hbm.xml" /> 
     30        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Contact.hbm.xml" /> 
    3331        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Domaine.hbm.xml" /> 
    34         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Contact.hbm.xml" /> 
     32        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fichier.hbm.xml" /> 
     33        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fournit.hbm.xml" /> 
     34        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Grille.hbm.xml" /> 
     35        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienpersonne.hbm.xml" /> 
     36        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Metadata.hbm.xml" /> 
     37        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Organisme.hbm.xml" /> 
     38        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ParamColor.hbm.xml" /> 
     39        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Parametre.hbm.xml" /> 
     40        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Personne.hbm.xml" /> 
     41        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produit.hbm.xml" /> 
     42        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Produitorig.hbm.xml" /> 
     43        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/References.hbm.xml" /> 
    3544        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Requete.hbm.xml" /> 
    3645        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Typecodification.hbm.xml" /> 
    37         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Colormap.hbm.xml" /> 
    38         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Categorieparametre.hbm.xml" /> 
    39         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ParamColor.hbm.xml" /> 
    40         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Organisme.hbm.xml" /> 
    41         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Personne.hbm.xml" /> 
    42         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/References.hbm.xml" /> 
    43         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Grille.hbm.xml" /> 
    44         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Concerne.hbm.xml" /> 
    45         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Sequence.hbm.xml" /> 
    46 <!-- >        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Ceoslevel.hbm.xml" />--> 
    47         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fournit.hbm.xml" /> 
    48         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienpersonne.hbm.xml" /> 
    4946        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Typeproduit.hbm.xml" /> 
    50         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Parametre.hbm.xml" /> 
     47        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Unite.hbm.xml" /> 
    5148    </session-factory> 
    5249</hibernate-configuration> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/hibernate.cfg.xml.template

    r68 r70  
    2323        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fichier.hbm.xml" /> 
    2424        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/ColorIndex.hbm.xml" /> 
    25         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienorganisme.hbm.xml" /> 
    2625        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Metadata.hbm.xml" /> 
    2726        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Code.hbm.xml" /> 
     
    4342        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Grille.hbm.xml" /> 
    4443        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Concerne.hbm.xml" /> 
    45         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Sequence.hbm.xml" /> 
    46         <mapping resource="org/medias/eccad/persistance/hibernate/domaine/CeosLoggerPerso.hbm.xml" /> 
    4744        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Fournit.hbm.xml" /> 
    4845        <mapping resource="org/medias/eccad/persistance/hibernate/domaine/Lienpersonne.hbm.xml" /> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/helpers/CharactereHelper.java

    r68 r70  
    1010                try { 
    1111                         temp = valeur.getBytes(format); 
    12                 } catch (UnsupportedEncodingException e) {      } 
     12                } catch (UnsupportedEncodingException e) {e.printStackTrace();  } 
    1313                 
    1414                if (temp != null) 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/helpers/InfoConfigVisu.java

    r68 r70  
    55 
    66import org.medias.eccad.Lanceur; 
    7 import org.medias.eccad.persistance.PropertiesDatabase; 
    87 
    98public class InfoConfigVisu { 
     
    1716 
    1817        private static void init() { 
    19                 LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement fichier de properties"); 
     18//              LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement fichier de properties"); 
    2019                String fichierProp = Lanceur.class.getResource("").getPath() + "/../../../../../propriete/serveur.properties"; 
    2120                fichierProp.replaceAll("%20", " "); 
    2221                Properties prop = new Properties(); 
    2322                try { 
    24                         LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement de : " + fichierProp); 
     23//                      LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement de : " + fichierProp); 
    2524                        prop.load(new FileInputStream(fichierProp)); 
    2625                } catch (Exception e) { 
    27                         LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.ERROR, "impossible de charger le fichier de properties valeur par défaut mise en place", e); 
     26                        LoggerPerso.log(InfoConfigVisu.class, LoggerPerso.ERROR, "impossible de charger le fichier de properties valeur par défaut mise en place", e); 
    2827                        prop = null; 
    2928                } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/helpers/LoggerPerso.java

    r68 r70  
    1212        public static int INFO = 3; 
    1313         
    14         public static void log(Class appelant, int level, Object message) { 
     14        public static void log(Class<?> appelant, int level, Object message) { 
    1515                log = Logger.getLogger(appelant); 
    1616                log.log(getPriority(level), message); 
    1717        } 
    1818         
    19         public static void log(Class appelant, int level, Object message, Exception e) { 
     19        public static void log(Class<?> appelant, int level, Object message, Exception e) { 
    2020                log = Logger.getLogger(appelant); 
    2121                log.log(getPriority(level), message, e); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/helpers/XmlHelper.java

    r68 r70  
    6363        } 
    6464         
    65         public static String listToString(String nom, Set liste) { 
     65        public static String listToString(String nom, Set<?> liste) { 
    6666                String retour = new String(); 
    6767                 
     
    8787         * @return 
    8888         */ 
    89         public static String listToString(String nom, Set liste, int index) { 
     89        public static String listToString(String nom, Set<?> liste, int index) { 
    9090                String retour = new String(); 
    9191                 
     
    9393                        return ""; 
    9494                 
    95                 Iterator<Object> ite = liste.iterator(); 
     95                Iterator<?> ite = liste.iterator(); 
    9696                retour += ite.next().toString(); 
    9797                 
     
    101101         
    102102public static Document getXMLtoDocument(InputStream is_xml, String identifiant) { 
    103                  
     103 
     104//      LoggerPerso.log(XmlHelper.class, LoggerPerso.WARN, "LECTURE XML"); 
    104105                Document dom = null; 
    105106                InputSource is = null; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/ServiceMetadata.java

    r68 r70  
    11package org.medias.eccad.metier; 
    22 
    3 import org.medias.eccad.helpers.CharactereHelper; 
    43import org.medias.eccad.helpers.SpringBeanFactory; 
    54import org.medias.eccad.persistance.dao.XmlDAO; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/ServiceMetier.java

    r68 r70  
    77 
    88import javax.faces.model.SelectItem; 
    9  
    109 
    1110import org.medias.eccad.helpers.LoggerPerso; 
     
    1514import org.medias.eccad.persistance.ServicePersistance; 
    1615import org.medias.eccad.persistance.dao.ColorTabDAO; 
     16import org.medias.eccad.persistance.dao.ClassDistributionTabDAO; 
    1717import org.medias.eccad.persistance.dao.GrilleDAO; 
    1818import org.medias.eccad.persistance.exception.PersistanceException; 
     
    4949         
    5050        public List<SelectItem> getListCatParametre() { 
    51                 // TODO : ici mettre un traducteur plutot ^^LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "youhou!!"); 
     51                // TODO : ici mettre un traducteur plutot 
    5252                List<SelectItem> liste_catParam = new ArrayList<SelectItem>(); 
    53                 LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "youhou!!"); 
    5453                List<CatParametre> tempo = spm.getListcatParametre(); 
    5554                if (tempo == null) { 
    56                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de Catparametre vide"); 
     55//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de Catparametre vide"); 
    5756                        return new ArrayList<SelectItem>(); 
    5857                } 
    5958                 
    6059                for (CatParametre catParametreDAO : tempo) { 
    61                          
    62                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "youhou!!"); 
    6360                        liste_catParam.add(new SelectItem(new Long(catParametreDAO.getIdentifiant()), catParametreDAO.getNom())); 
    6461                } 
     
    7269                List<Parametre> tempo = spm.getListParametre(); 
    7370                if (tempo == null) { 
    74                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de parametre vide"); 
     71//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de parametre vide"); 
    7572                        return new ArrayList<SelectItem>(); 
    7673                } 
     
    8178                 
    8279                return liste_param; 
     80        } 
     81         
     82        public List<SelectItem> getListSecteur() { 
     83                //  
     84                List<SelectItem> liste_secteur = new ArrayList<SelectItem>(); 
     85                List<Secteur> tempo = spm.getListSecteur(); 
     86                if (tempo == null) { 
     87//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de secteurs vide"); 
     88                        return new ArrayList<SelectItem>(); 
     89                } 
     90                 
     91                for (Secteur secteurDAO : tempo) { 
     92                        liste_secteur.add(new SelectItem(new Long(secteurDAO.getIdentifiant()), secteurDAO.getNom())); 
     93                } 
     94                 
     95                return liste_secteur; 
    8396        } 
    8497         
     
    88101                List<Parametre> tempo = spm.getListParamByCatParam(catParam); 
    89102                if (tempo == null) { 
    90                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de parametre vide"); 
    91                         return new ArrayList<SelectItem>(); 
    92                 } 
    93                  
     103//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de parametre vide"); 
     104                        return new ArrayList<SelectItem>(); 
     105                } 
     106                String nomParam; 
    94107                for (Parametre parametreDAO : tempo) { 
    95108 
    96                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "----------------------->id nom"+parametreDAO.getIdentifiant()+" "+ parametreDAO.getNom()); 
    97                         liste_param.add(new SelectItem(new Long(parametreDAO.getIdentifiant()), parametreDAO.getNom())); 
     109//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "----------------------->id nom"+parametreDAO.getIdentifiant()+" "+ parametreDAO.getNom()); 
     110 
     111                        // On enlÚve du nom du paramÚtre le nom de la catégorie 
     112                        nomParam = parametreDAO.getNom(); 
     113                        if (nomParam.startsWith("biomassBurning_") || nomParam.startsWith("anthro_") 
     114                                        || nomParam.startsWith("biogenic_") || nomParam.startsWith("oceanic_")) { 
     115                                nomParam = nomParam.substring(nomParam.indexOf("_")+1); 
     116                        } 
     117                        liste_param.add(new SelectItem(new Long(parametreDAO.getIdentifiant()), nomParam)); 
    98118                } 
    99119                 
    100120                return liste_param; 
     121        } 
     122         
     123        public List<SelectItem> getListSectorByParam(int param, int prod, int rcp) { 
     124                //  
     125                List<SelectItem> liste_secteur = new ArrayList<SelectItem>(); 
     126                List<Secteur> tempo = spm.getListSectorByParam(param,prod,rcp); 
     127 
     128                if (tempo == null) { 
     129//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de secteurs vide"); 
     130                        return new ArrayList<SelectItem>(); 
     131                } 
     132                 
     133                for (Secteur secteurDAO : tempo) { 
     134 
     135//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "----------------------->id nom"+secteurDAO.getIdentifiant()+" "+ secteurDAO.getNom()); 
     136                        liste_secteur.add(new SelectItem(new Long(secteurDAO.getIdentifiant()), secteurDAO.getNom())); 
     137                         
     138                } 
     139                 
     140                return liste_secteur; 
     141        } 
     142 
     143        public List<SelectItem> getListRcpByParam(int param, int prod, int sector) { 
     144                List<SelectItem> liste_rcp = new ArrayList<SelectItem>(); 
     145                List<Rcp> tempo = spm.getListRcpByParam(param,prod,sector); 
     146 
     147                if (tempo == null) { 
     148                        return new ArrayList<SelectItem>(); 
     149                } 
     150                 
     151                for (Rcp rcpDAO : tempo) { 
     152                        liste_rcp.add(new SelectItem(new Long(rcpDAO.getIdentifiant()), rcpDAO.getNom())); 
     153                } 
     154                 
     155                return liste_rcp; 
    101156        } 
    102157         
     
    105160                List<Produit> tempo = spm.getListProductByParam(id_param); 
    106161                if (tempo == null) { 
    107                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de produit vide"); 
     162//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de produit vide"); 
    108163                        return new ArrayList<SelectItem>(); 
    109164                } 
     
    123178         * @return une liste d'item de sélection de type oid - legende de la grille 
    124179         */ 
    125         public List<SelectItem> getListGrille(long id_produit,long id_parametre, String date_debut, String date_fin) { 
    126                 Produit produit = spm.getProduitByID(id_produit); 
    127                 List<Grille> liste_grille = spm.getListGrille(id_produit, id_parametre, date_debut, date_fin); 
     180        public List<SelectItem> getListGrille(long id_produit,long id_parametre, long id_secteur, long id_rcp, String date_debut, String date_fin, String deltaDate, Produit produit, String legend) { 
     181                List<Grille> liste_grille = spm.getListGrille(id_produit, id_parametre, id_secteur, id_rcp, date_debut, date_fin, produit.getNom(), legend, produit.getType()); 
    128182                Visualisation visu = spm.getVisuByProduit(produit.getType()); 
    129                  
    130183                TraducteurVisu traducteur = (TraducteurVisu) xmlbean.getBean(visu.getTraducteur()); 
    131184                 
    132185                if (liste_grille == null) { 
    133                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de produit vide"); 
    134                         return new ArrayList<SelectItem>(); 
    135                 } 
    136                  
    137                 return traducteur.getListGrille(liste_grille); 
    138         } 
    139          
    140         public List<SelectItem> getListGrille(long id_produit, String date_debut, String date_fin) { 
     186//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de produit vide"); 
     187                        return new ArrayList<SelectItem>(); 
     188                } 
     189                 
     190                return traducteur.getListGrille(liste_grille,deltaDate,produit.getNom()); 
     191        } 
     192         
     193        public List<SelectItem> getListGrille(long id_produit, String date_debut, String date_fin, String deltaDate) { 
    141194                Produit produit = spm.getProduitByID(id_produit); 
    142195                List<Grille> liste_grille = spm.getListGrille(id_produit, date_debut, date_fin); 
     
    146199                 
    147200                if (liste_grille == null) { 
    148                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de produit vide"); 
    149                         return new ArrayList<SelectItem>(); 
    150                 } 
    151                  
    152                 return traducteur.getListGrille(liste_grille); 
    153         } 
    154  
    155         public List<SelectItem> getListMappingColor(long oid) { 
     201                        LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de grille vide"); 
     202                        return new ArrayList<SelectItem>(); 
     203                } 
     204                 
     205                return traducteur.getListGrille(liste_grille,deltaDate, produit.getNom()); 
     206        } 
     207 
     208        /** 
     209         * Renvoie la liste d'altitudes associées à la date fournie en paramÚtre 
     210         */ 
     211        public List<SelectItem> getListAlt(long id_secteur, String date_debut) { 
     212                List<String> liste_alt = spm.getListAlt(id_secteur, date_debut); 
     213                List<SelectItem> liste_altitem = new ArrayList<SelectItem>(); 
     214                if (liste_alt != null) { 
     215                        String nomAlt; 
     216                        for (int num = 0; num < liste_alt.size(); num++) { 
     217                                nomAlt = liste_alt.get(num); 
     218                                if (nomAlt.equals("Sum")) 
     219                                        liste_altitem.add(new SelectItem(nomAlt, nomAlt)); 
     220                                else 
     221                                        liste_altitem.add(new SelectItem(nomAlt, nomAlt+" km")); 
     222                        } 
     223                } 
     224                return liste_altitem; 
     225        } 
     226         
     227        public List<SelectItem> getListMappingColor() { 
    156228                ColorTabDAO colortabDAO = (ColorTabDAO) xmlbean.getBean("colorTabDAO"); 
    157229                List<ColorMap> liste_color = null; 
    158230                try { 
    159                          liste_color = colortabDAO.getListColorTabByGrille(oid); 
     231                         liste_color = colortabDAO.getListColorTabByGrille(); 
    160232                } 
    161233                catch (PersistanceException e) { 
     
    165237                 
    166238                if (liste_color == null) { 
    167                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "pas de colormap pour la grille :/"); 
     239                        LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de colormap vide"); 
    168240                        return new ArrayList<SelectItem>(); 
    169241                } 
     
    177249        } 
    178250         
    179         public List<SelectItem> getListColorDynamique() { 
     251        public List<SelectItem> getListClassDistribution(long param_id) { 
     252                ClassDistributionTabDAO classDistributionTabDAO = (ClassDistributionTabDAO) xmlbean.getBean("classDistributionTabDAO"); 
     253                List<ClassDistribution> liste_distrib = null; 
     254                try { 
     255                        liste_distrib = classDistributionTabDAO.getListClassMap(param_id); 
     256                } 
     257                catch (PersistanceException e) { 
     258                        e.printStackTrace(); 
     259                        liste_distrib = null; 
     260                } 
     261                 
     262                if (liste_distrib == null) { 
     263                        LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de class level vide"); 
     264                        return new ArrayList<SelectItem>(); 
     265                } 
     266                 
     267                List<SelectItem> liste_select = new LinkedList<SelectItem>(); 
     268                for (ClassDistribution classdistrib : liste_distrib) { 
     269                        liste_select.add(new SelectItem(new Long(classdistrib.getIdentifiant()), classdistrib.getNom())); 
     270//                      long tt=new Long(classdistrib.getIdentifiant()); 
     271//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "ADD LISTE DISTRIB = "+tt); 
     272                } 
     273                 
     274                return liste_select; 
     275        } 
     276         
     277        /** 
     278         * Renvoie la liste des régions 
     279         */ 
     280        public List<SelectItem> getListRegion() { 
     281                List<Grille> liste_reg = spm.getListMasques("region_codif"); 
     282                List<SelectItem> liste_regitem = new ArrayList<SelectItem>(); 
     283                if (liste_reg != null) { 
     284                        String nomReg; 
     285                        long idGrille; 
     286                        for (int num = 0; num < liste_reg.size(); num++) { 
     287                                nomReg = liste_reg.get(num).getLegend(); 
     288                                idGrille = liste_reg.get(num).getId_grille(); 
     289                                if (nomReg.equals("Water")) 
     290                                        liste_regitem.add(new SelectItem(idGrille, "All regions")); 
     291                                else 
     292                                        liste_regitem.add(new SelectItem(idGrille, nomReg)); 
     293                        } 
     294                } 
     295                return liste_regitem; 
     296        } 
     297 
     298        /** 
     299         * Renvoie la liste des pays 
     300         */ 
     301        public List<SelectItem> getListCountry() { 
     302                List<Grille> liste_co = spm.getListMasques("GPW3country_codif"); 
     303                List<SelectItem> liste_coitem = new ArrayList<SelectItem>(); 
     304                if (liste_co != null) { 
     305                        String nomCo; 
     306                        long idGrille; 
     307                        for (int num = 0; num < liste_co.size(); num++) { 
     308                                nomCo = liste_co.get(num).getLegend(); 
     309                                idGrille = liste_co.get(num).getId_grille(); 
     310                                if (nomCo.equals("Water")) 
     311                                        liste_coitem.add(new SelectItem(idGrille, "All countries")); 
     312                                else 
     313                                        liste_coitem.add(new SelectItem(idGrille, nomCo)); 
     314                        } 
     315                } 
     316                return liste_coitem; 
     317        } 
     318         
     319/*      public List<SelectItem> getListColorDynamique() { 
    180320                ColorTabDAO colortabDAO = (ColorTabDAO) xmlbean.getBean("colorTabDAO"); 
    181321                List<ColorMap> liste_color = null; 
     
    189329                 
    190330                if (liste_color == null) { 
    191                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "pas de colormap pour la grille :/"); 
     331//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "pas de colormap pour la grille :/"); 
    192332                        return new ArrayList<SelectItem>(); 
    193333                } 
     
    199339         
    200340                return liste_select; 
    201         } 
    202          
    203         public List<SelectItem> getListColorDynamique(boolean lineaire) { 
    204                 if (!lineaire) 
     341        }*/ 
     342         
     343/*      public List<SelectItem> getListColorDynamique(boolean lineaire) { 
     344                if (!lineaire) { 
    205345                        return getListColorDynamique(); 
    206                  
     346                } 
    207347                ColorTabDAO colortabDAO = (ColorTabDAO) xmlbean.getBean("colorTabDAO"); 
    208348                List<ColorMap> liste_color = null; 
     
    216356                 
    217357                if (liste_color == null) { 
    218                         LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "pas de colormap pour la grille :/"); 
     358//                      LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "pas de colormap pour la grille :/"); 
    219359                        return new ArrayList<SelectItem>(); 
    220360                } 
     
    222362                List<SelectItem> liste_select = new LinkedList<SelectItem>(); 
    223363                for (ColorMap colormap : liste_color) { 
    224                         if (colormap.getNom().equalsIgnoreCase("logarithm")) 
     364//                      if (colormap.getNom().equalsIgnoreCase("logarithm")) 
    225365                                liste_select.add(new SelectItem(new Long(colormap.getIdentifiant()), colormap.getNom())); 
    226366                } 
    227367         
    228368                return liste_select; 
    229         } 
    230          
    231         /** 
    232          *  
     369        }*/ 
     370         
     371        public List<SelectItem> getListClassDynamique() { 
     372                 
     373                ClassDistributionTabDAO classtabDAO = (ClassDistributionTabDAO) xmlbean.getBean("classDistributionTabDAO"); 
     374                List<ClassDistribution> liste_distrib = null; 
     375                try { 
     376                         liste_distrib = classtabDAO.getListClassDisDynamique(); 
     377                } 
     378                catch (PersistanceException e) { 
     379                        e.printStackTrace(); 
     380                        liste_distrib = null; 
     381                } 
     382                 
     383                if (liste_distrib == null) { 
     384                        LoggerPerso.log(ServiceMetier.class, LoggerPerso.WARN, "liste de class level vide"); 
     385                        return new ArrayList<SelectItem>(); 
     386                } 
     387                 
     388                List<SelectItem> liste_select = new LinkedList<SelectItem>(); 
     389                for (ClassDistribution classdis : liste_distrib) { 
     390                                liste_select.add(new SelectItem(new Long(classdis.getIdentifiant()), classdis.getNom())); 
     391                } 
     392         
     393                return liste_select; 
     394        } 
     395         
     396        public Secteur getSecteurById(int id_secteur) { 
     397                Secteur secteur = spm.getSecteurByID(id_secteur); 
     398                return secteur; 
     399        } 
     400 
     401        public Rcp getRcpById(int id_rcp) { 
     402                Rcp rcp = spm.getRcpByID(id_rcp); 
     403                return rcp; 
     404        } 
     405         
     406        /** 
     407         * 
    233408         * @param id_produit 
    234409         * @return 
     
    236411        public Produit getProduitById(int id_produit) { 
    237412                Produit produit = spm.getProduitByID(id_produit); 
    238                 LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
    239413                return produit; 
    240414        } 
    241          
    242         /*public Produit getProduitById(long id_produit) { 
    243                 Produit produit = spm.getProduitByID(id_produit); 
    244                 LoggerPerso.log(ServiceMetier.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
    245                 return produit; 
    246         }*/ 
    247415         
    248416        public Grille getGrilleById(Long id_grille) { 
     
    252420                        grille = grilleDAO.getGrille(id_grille); 
    253421                } catch (PersistanceException e) { 
    254                 LoggerPerso.log(ServiceMetier.class, LoggerPerso.ERROR, "erreur getgrillebyid"); 
     422                        LoggerPerso.log(ServiceMetier.class, LoggerPerso.ERROR, "erreur getgrillebyid"); 
    255423                        return null; 
    256424                } 
     
    271439                return spm.getVisuByProduit(type_produit); 
    272440        } 
     441 
     442        public String getTypeCodif(long idGrille) { 
     443                return spm.getTypeCodif(idGrille); 
     444        } 
     445 
     446        public ArrayList<String> getDates(long id_produit,long id_parametre, long id_secteur, long id_rcp, String nomprod) { 
     447                ArrayList<String> dates = spm.getDates(id_produit,id_parametre, id_secteur, id_rcp, nomprod); 
     448                if (dates == null) { 
     449                        return new ArrayList<String>(); 
     450                } 
     451                return dates; 
     452        } 
    273453} 
    274454         
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/dessinCarte/CarteMapScript.java

    r68 r70  
    22 
    33import java.awt.Point; 
    4 import java.beans.FeatureDescriptor; 
    5 import java.io.File; 
    6 import java.io.FileNotFoundException; 
    7 import java.io.FileOutputStream; 
    84import java.io.IOException; 
    95import java.io.OutputStream; 
    10 import java.io.PrintStream; 
    116import java.util.Iterator; 
    127import java.util.List; 
    138 
    14  
    15 import org.medias.eccad.helpers.LoggerPerso; 
    169import org.medias.eccad.modele.Zone; 
    1710 
    18 import edu.umn.gis.mapscript.DBFInfo; 
    19 import edu.umn.gis.mapscript.MS_FONT_TYPE; 
    20 //import edu.umn.gis.mapscript.MS_LABEL_POSITIONS; 
    2111import edu.umn.gis.mapscript.MS_LAYER_TYPE; 
    22 import edu.umn.gis.mapscript.MS_SHAPE_TYPE; 
    23 import edu.umn.gis.mapscript.MS_UNITS; 
    24 import edu.umn.gis.mapscript.SWIGTYPE_p_FILE; 
    25 import edu.umn.gis.mapscript.SWIGTYPE_p_int; 
    2612import edu.umn.gis.mapscript.classObj; 
    2713import edu.umn.gis.mapscript.colorObj; 
    2814import edu.umn.gis.mapscript.imageObj; 
    29 import edu.umn.gis.mapscript.labelObj; 
    3015import edu.umn.gis.mapscript.layerObj; 
    31 import edu.umn.gis.mapscript.lineObj; 
    3216import edu.umn.gis.mapscript.mapObj; 
    3317import edu.umn.gis.mapscript.pointObj; 
    34 import edu.umn.gis.mapscript.projectionObj; 
    3518import edu.umn.gis.mapscript.rectObj; 
    3619import edu.umn.gis.mapscript.referenceMapObj; 
    37 import edu.umn.gis.mapscript.shapeObj; 
    3820import edu.umn.gis.mapscript.styleObj; 
    3921// faire la fonction dans spm qui retourne une Zone 
    4022/** 
    41  * Classe permettant la manipulation des objets issus de MapScript. Son but est de rendre possible la crᅵation de l'image d'une carte suivant des coordonnᅵes prᅵcises et en fonction des couches ᅵ afficher. 
     23 * Classe permettant la manipulation des objets issus de MapScript. Son but est de rendre possible la création de l'image d'une carte suivant des coordonnées précises et en fonction des couches à afficher. 
    4224 * REMARQUE : CLASSE DEPRECIE, CODE A MODIFIER CAR FONCTIONNE SEULEMENT POUR DEGRES DECIMAUX 
    4325 *          : S'INSPIRER DE LA CLASSE CARTEMAPSERVER 
     
    5638         
    5739        /** 
    58          * Constructeur par dᅵfaut de la CarteMapScript 
    59          * @param nomCarte nom du fichier .map dᅵcrivant les informations spatiales 
    60          * @param path chemin d'accᅵs au fichier .map ex: c:\mapFile\ ou /mapFile/ 
     40         * Constructeur par défaut de la CarteMapScript 
     41         * @param nomCarte nom du fichier .map décrivant les informations spatiales 
     42         * @param path chemin d'accÚs au fichier .map ex: c:\mapFile\ ou /mapFile/ 
    6143         */ 
    6244        public CarteMapScript(String nomCarte, String path) { 
    6345                map = new mapObj(path + nomCarte); 
    64  
    6546                if (map == null) 
    6647                        throw new RuntimeException("Erreur initialisation map: Class CarteMapScript::CarteMapScript()"); 
    6748                nom = nomCarte; 
    68                 //map.setExtent(-180, -90, 180, 90); 
    69                 //map.setSize(720, 360); 
    70  
     49//              map.setUnits(MS_UNITS.MS_DD); 
     50//              map.setExtent(-180, -90, 180, 90); 
     51//              map.setSize(720, 360); 
     52//              map.setResolution(0.5); 
    7153 
    7254        } // end CarteMapScript() 
     
    9375         
    9476        /** 
    95          * Positionne les couches ᅵ afficher sur la carte 
    96          * @param couches liste des couches qui devront apparaᅵtre 
    97          */ 
    98         public void choixCouches(List couches) { 
     77         * Positionne les couches à afficher sur la carte 
     78         * @param couches liste des couches qui devront apparaître 
     79         */ 
     80        public void choixCouches(List<String> couches) { 
    9981                /*** variables ***/ 
    10082                int nbr_layer = map.getNumlayers(); 
    10183                layerObj layer; 
    10284 
    103                 /*** parcourt des couches et mise ᅵ OFF de leur statut ***/ 
     85                /*** parcourt des couches et mise à OFF de leur statut ***/ 
    10486                for (int i=0; i<nbr_layer; i++) 
    10587                { 
     
    11193                 
    11294                 
    113                 Iterator i_couches = couches.iterator(); 
    114                 /*** parcourt des couches ᅵ afficher ***/ 
     95                Iterator<String> i_couches = couches.iterator(); 
     96                /*** parcourt des couches à afficher ***/ 
    11597                while (i_couches.hasNext()) { 
    11698                        layer = map.getLayerByName((String) i_couches.next()); 
     
    118100                                layer.setStatus(1); 
    119101                        else 
    120                                 System.err.println("couche non detectᅵe dans la map\nCarte.java:choixCouches:"); 
     102                                System.err.println("couche non detectée dans la map\nCarte.java:choixCouches:"); 
    121103                } // end while 
    122104        } 
    123105         
    124106        /** 
    125          * Cree l'image de la carte dans le dossier indiquᅵ 
    126          * @param path dossier oᅵ sera crᅵᅵ l'image 
     107         * Cree l'image de la carte dans le dossier indiqué 
     108         * @param path dossier où sera créé l'image 
    127109         * @param session session de l'utilisateur sans lui nom = 'img[map]defaut.png' 
    128110         * @return le nom de l'image 
    129111         */ 
    130112        public String dessinerCarte(String path, String session) { 
    131                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "dessin cartera"); 
     113//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "dessin carte, PATH="+path+" SESSION="+session); 
    132114                /**** variables ****/ 
    133115                imageObj img = map.draw(); 
    134                 String imageNom; 
    135                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "dessin carte1"); 
     116                fixExtendMap(); 
    136117                /**** gestion erreurs ****/ 
    137118                if (img == null) 
    138119                        throw new RuntimeException("Erreur création image: CarteMapScript::dessinerCarte"); 
    139                  
    140                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "dessin carte2"); 
     120 
     121                String imageNom; 
    141122                /**** sauvegarde ****/ 
    142123                if (session==null) 
     
    145126                        imageNom =  session + ".png"; 
    146127                img.save(path + imageNom, map); 
    147                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "fin dessin carte"); 
    148128                return imageNom; 
    149         } // end dessinerCarte() 
    150          
     129        } 
     130 
    151131        public String dessinerCarte(String path, int identifiant) { 
    152132                /**** variables ****/ 
    153133                imageObj img = map.draw(); 
     134                fixExtendMap(); 
    154135                String imageNom; 
    155                  
     136 
    156137                /**** gestion erreurs ****/ 
    157138                if (img == null) 
     
    163144                        imageNom =  "img_" + identifiant + ".png"; 
    164145                img.save(path + imageNom, map); 
    165                  
     146 
    166147                return imageNom; 
    167148        } // end dessinerCarte() 
    168          
     149 
    169150        public void dessinerCarte(OutputStream os) { 
    170151                imageObj img = map.draw(); 
    171                  
     152 
    172153                /**** gestion erreurs ****/ 
    173154                if (img == null) 
    174155                        throw new RuntimeException("Erreur création image: CarteMapScript::dessinerCarte"); 
    175                  
     156 
    176157                byte[] b = img.getBytes(); 
    177                  
     158 
    178159                try { 
    179160                        os.write(b); 
     
    184165        } 
    185166        /** 
    186          * Permet de recentrer la carte sur un point donnᅵ avec un coefficient donnᅵ 
     167         * Permet de recentrer la carte sur un point donné avec un coefficient donné 
    187168         * @param coef coefficient du zoom 
    188          * @param clic point qui servira de nouveau centre ᅵ l'image 
     169         * @param clic point qui servira de nouveau centre à l'image 
    189170         */ 
    190171        public void definirZoom(double coef, Point clic, double resol) { 
    191172                // TODO: tester ici 
    192                 // passage du coef ᅵ 1 pour ᅵviter une coef nul lors du dessin de la carte 
     173                // passage du coef à 1 pour éviter un coef nul lors du dessin de la carte 
    193174                int icoef; 
    194                 if (coef==0)  
    195                         icoef = 1; 
    196                 if (coef<0) 
    197                         icoef = (int) -(1/coef); 
    198                 else 
     175//              if (coef==0)  
     176//                      icoef = 1; 
     177//              if (coef<0) 
     178//                      icoef = (int) -(1/coef); 
     179//              else 
    199180                        icoef = (int) coef; 
    200181                 
    201182                pointObj my_clic; 
    202                  
     183//System.out.println("clic="+clic.x+","+clic.y); 
    203184                // si clic en dehors de l'image on centre le clic 
    204185                if (clic.x !=0 && clic.y != 0) 
     
    207188                        my_clic = new pointObj(map.getWidth()/2, map.getHeight()/2, 0); 
    208189                 
    209                  
    210                 Zone zonCouverte = getZoneCouverte(); 
    211                  
    212                 int coeff = (int) ((360 / ( zonCouverte.getEastbc() - zonCouverte.getWestbc() ) )*(1/resol)); 
    213                  
    214                 //blocage du zoom a 8 
    215                 if ( coeff<16 ) 
     190//              Zone zonCouverte = getZoneCouverte(); 
     191 
     192//              int coeff = (int) ((360 / ( zonCouverte.getEastbc() - zonCouverte.getWestbc() ) )*(1/resol)); 
     193//              Long coefLong = new Long(Math.round((360 / ( zonCouverte.getEastbc() - zonCouverte.getWestbc() ) )*(1/resol))); 
     194//              int coeff = coefLong.intValue(); 
     195                //blocage du zoom à un certain palier 
     196                if ( getExtent().getMaxx()-getExtent().getMinx() >= 6) 
    216197                { 
    217                         double maxX = map.getExtent().getMaxx(); 
    218                         int diffX = (int)(map.getExtent().getMaxx() -map.getExtent().getMinx()); 
    219                         double minX = map.getExtent().getMaxx() - diffX; 
    220                  
    221                  
    222                         double maxY = map.getExtent().getMaxy(); 
    223                         int diffY = (int)(map.getExtent().getMaxy() -map.getExtent().getMiny()); 
    224                         double minY = map.getExtent().getMaxy() - diffY; 
    225                  
    226                         map.getExtent().setMaxx(maxX); 
    227                         map.getExtent().setMinx(minX); 
    228                         map.getExtent().setMaxy(maxY); 
    229                         map.getExtent().setMiny(minY); 
    230                  
    231                         LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++___________coeff "+ coeff); 
    232  
    233                         LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMaxx "+ map.getExtent().getMaxx()); 
    234                         LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMinx "+ map.getExtent().getMinx()); 
    235                         LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMaxy "+ map.getExtent().getMaxy()); 
    236                         LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMiny "+ map.getExtent().getMiny()); 
    237  
    238                         LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++ getWidth"+ ((int)(map.getWidth() / coeff))*coeff); 
    239                         LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++ getHeight"+ ((int)(map.getHeight() / coeff))*coeff); 
    240                  
    241                         // mise ᅵ jour du zoom ᅵ null c'est le maxExtend mais son rᅵle :/ ? 
    242          
    243                         map.zoomPoint(icoef, my_clic, ((int)(map.getWidth() / coeff))*coeff , ((int)(map.getHeight() / coeff))*coeff, map.getExtent(), null); 
    244                 } 
     198//                      double maxX = map.getExtent().getMaxx(); 
     199//                      int diffX = (int)(map.getExtent().getMaxx() -map.getExtent().getMinx()); 
     200//                      double minX = map.getExtent().getMaxx() - diffX; 
     201 
     202//                      double maxY = map.getExtent().getMaxy(); 
     203//                      int diffY = (int)(map.getExtent().getMaxy() -map.getExtent().getMiny()); 
     204//                      double minY = map.getExtent().getMaxy() - diffY; 
     205 
     206//                      map.getExtent().setMaxx(maxX); 
     207//                      map.getExtent().setMinx(minX); 
     208//                      map.getExtent().setMaxy(maxY); 
     209//                      map.getExtent().setMiny(minY); 
     210//                      LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++clic="+ clic.x+","+clic.y); 
     211//                      LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++getMaxx="+ getExtent().getMaxx()); 
     212//                      LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++getMinx="+ getExtent().getMinx()); 
     213//                      LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++getMaxy="+ getExtent().getMaxy()); 
     214//                      LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++getMiny="+ getExtent().getMiny()); 
     215//                      LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++getWidth="+ map.getWidth()+", calc="+((int)(map.getWidth() / coeff))*coeff); 
     216//                      LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++getHeight="+ map.getHeight()+", calc="+((int)(map.getHeight() / coeff))*coeff); 
     217 
     218                        // mise à jour du zoom à null c'est le maxExtend mais son rÃŽle :/ ? 
     219//                      rectObj maxExtend = new rectObj(-180, -90, 180, 90, 0); 
     220//                      map.zoomPoint(icoef, my_clic, ((int)(map.getWidth() / coeff))*coeff , ((int)(map.getHeight() / coeff))*coeff, map.getExtent(), null); 
     221                        rectObj orig = new rectObj(getExtent().getMinx(), getExtent().getMiny(), getExtent().getMaxx(), getExtent().getMaxy(), 0); 
     222                        map.zoomPoint(icoef, my_clic, map.getWidth(), map.getHeight(), getExtent(), null); 
     223//                      map.zoomRectangle(zoomExtend, map.getWidth(), map.getHeight(), getExtent(), null); 
     224                        fixExtendZoom(my_clic,orig,resol); 
     225                } 
     226//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "APRES++++getMaxx="+ getExtent().getMaxx()); 
     227//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "APRES++++getMinx="+ getExtent().getMinx()); 
     228//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "APRES++++getMaxy="+ getExtent().getMaxy()); 
     229//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "APRES++++getMiny="+ getExtent().getMiny()); 
     230//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "APRES++++getWidth="+ map.getWidth()+", calc="+((int)(map.getWidth() / coeff))*coeff); 
     231//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "APRES++++getHeight="+ map.getHeight()+", calc="+((int)(map.getHeight() / coeff))*coeff); 
    245232                //map.zoomPoint(icoef, my_clic, 80 , 40, map.getExtent(), null); 
    246                  
     233 
    247234        } // end definirZoom() 
     235 
     236 
     237        /** 
     238         * Une erreur dans Mapserver ne permet pas de restituer les limites de la carte de façon exacte, 
     239         * notamment en longitude, il est donc nécessaire de recalculer les bonnes valeurs 
     240         */ 
     241        public void fixExtendMap() { 
     242//              if (map.getExtent().getMaxx() > 180) map.getExtent().setMaxx(180); 
     243//              if (map.getExtent().getMinx() < -180) map.getExtent().setMinx(-180); 
     244//              if (map.getExtent().getMaxy() > 90) map.getExtent().setMaxy(90); 
     245//              if (map.getExtent().getMiny() < -90) map.getExtent().setMiny(-90); 
     246                // arrondi au dixiÚme 
     247                double maxx = map.getExtent().getMaxx(); 
     248                maxx = (double)Math.round(maxx*10)/10; 
     249                double minx = map.getExtent().getMinx(); 
     250                minx = (double)Math.round(minx*10)/10; 
     251                // cas particulier lors d'un premier affichage 
     252                if (maxx == 180.3) maxx = 180; 
     253                if (minx == -180.3) minx = -180; 
     254                // arrondi à 0.5 prÚs 
     255                maxx = (double)Math.round(maxx*2)/2; 
     256                minx = (double)Math.round(minx*2)/2; 
     257                map.getExtent().setMaxx(maxx); 
     258                map.getExtent().setMinx(minx); 
     259        } 
     260         
     261        /** 
     262         * Lors d'un zoom, les coordonnées des extrémités de la carte sont mal recalculées par Mapserver. 
     263         * Cette fonction permet donc de recalculer manuellement les nouvelles extrémités en fonction: 
     264         * - des coordonnées du point sur lequel on a cliqué 
     265         * - des coordonnées des extrémités de la carte originale 
     266         * - de la résolution de la carte 
     267         */ 
     268        public void fixExtendZoom(pointObj clic, rectObj orig,double resol) { 
     269                double largeur = orig.getMaxx()-orig.getMinx(); 
     270                double lon1 = (clic.getX()-1)*largeur; 
     271                double lon2 = 720 * resol; 
     272                int xAjuste = 1+(int)Math.floor(lon1/lon2); 
     273                double hauteur = orig.getMaxy()-orig.getMiny(); 
     274                double lat1 = (clic.getY()-1)*hauteur; 
     275                double lat2 = 360 * resol; 
     276                int yAjuste = 1+(int)Math.floor(lat1/lat2); 
     277//System.out.println("x="+clic.getX()+"->"+xAjuste+", y="+clic.getY()+"->"+yAjuste); 
     278                rectObj centre = new rectObj(orig.getMinx()+(xAjuste-1)*resol, orig.getMaxy()-yAjuste*resol, 
     279                                orig.getMinx()+xAjuste*resol, orig.getMaxy()-(yAjuste-1)*resol, 0); 
     280//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "CENTRE++++getMaxx="+ centre.getMaxx()); 
     281//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "CENTRE++++getMinx="+ centre.getMinx()); 
     282//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "CENTRE++++getMaxy="+ centre.getMaxy()); 
     283//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "CENTRE++++getMiny="+ centre.getMiny()); 
     284                rectObj zoom = getExtent(); 
     285                // ZOOM 1 : largeur/hauteur = 360/180 -> 180/90 
     286                if (largeur >= 360) { 
     287                        zoom = new rectObj(centre.getMaxx()-90, centre.getMiny()-45, 
     288                                        centre.getMaxx()+90, centre.getMiny()+45, 0); 
     289                } 
     290                // ZOOM 2 : largeur/hauteur = 180/90 -> 90/45 
     291                else if (largeur >= 180) { 
     292                        zoom = new rectObj(centre.getMaxx()-45, centre.getMiny()-22, 
     293                                        centre.getMaxx()+45, centre.getMiny()+23, 0); 
     294                } 
     295                // ZOOM 3 : largeur/hauteur = 90/45 -> 44/22 
     296                else if (largeur >= 90) { 
     297                        zoom = new rectObj(centre.getMaxx()-22, centre.getMiny()-11, 
     298                                        centre.getMaxx()+22, centre.getMiny()+11, 0); 
     299                } 
     300                // ZOOM 4 : largeur/hauteur = 44/22 -> 22/11 
     301                else if (largeur >= 44) { 
     302                        zoom = new rectObj(centre.getMaxx()-11, centre.getMiny()-5, 
     303                                        centre.getMaxx()+11, centre.getMiny()+6, 0); 
     304                } 
     305                // ZOOM 5 : largeur/hauteur = 22/11 -> 12/6 
     306                else if (largeur >= 22) { 
     307                        zoom = new rectObj(centre.getMaxx()-6, centre.getMiny()-3, 
     308                                        centre.getMaxx()+6, centre.getMiny()+3, 0); 
     309                } 
     310                // ZOOM 6 : largeur/hauteur = 12/6 -> 6/3 
     311                else if (largeur >= 12) { 
     312                        zoom = new rectObj(centre.getMaxx()-3, centre.getMiny()-1, 
     313                                        centre.getMaxx()+3, centre.getMiny()+2, 0); 
     314                } 
     315                // ZOOM 7 : largeur/hauteur = 6/3 -> 4/2 
     316                else if (largeur >= 6) { 
     317                        zoom = new rectObj(centre.getMaxx()-2, centre.getMiny()-1, 
     318                                        centre.getMaxx()+2, centre.getMiny()+1, 0); 
     319                } 
     320                map.setExtent(zoom); 
     321        } 
     322         
     323         
    248324         
    249325        public void modifDataLayer(String nom, String data) { 
     
    257333         */ 
    258334        public void deleteAllLayer() { 
    259                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "delete all layer"); 
     335//              LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "delete all layer"); 
    260336                int nbr_layer = map.getNumlayers(); 
    261                 /*** parcourt des couches et mise ᅵ OFF de leur statut ***/ 
     337                /*** parcourt des couches et mise à OFF de leur statut ***/ 
    262338                for (int i=0; i<nbr_layer; i++) 
    263339                { 
     
    267343         
    268344        /** 
    269          * Equivalent ᅵ choixCouche 
    270          */ 
    271         public void doLayerChoice(List layer) { 
     345         * Equivalent à choixCouche 
     346         */ 
     347        public void doLayerChoice(List<String> layer) { 
    272348                this.choixCouches(layer); 
    273349        } 
    274350         
    275351        private rectObj getExtent() { 
     352//              map.getExtent().setMaxx(Math.round(map.getExtent().getMaxx())); 
     353//              map.getExtent().setMinx(Math.round(map.getExtent().getMinx())); 
     354//              map.getExtent().setMaxy(Math.round(map.getExtent().getMaxy())); 
     355//              map.getExtent().setMiny(Math.round(map.getExtent().getMiny())); 
     356//              if (map.getExtent().getMaxx() > 180) map.getExtent().setMaxx(180); 
     357//              if (map.getExtent().getMinx() < -180) map.getExtent().setMinx(-180); 
     358//              if (map.getExtent().getMaxy() > 90) map.getExtent().setMaxy(90); 
     359//              if (map.getExtent().getMiny() < -90) map.getExtent().setMiny(-90); 
    276360                return map.getExtent(); 
    277                  
    278361        } 
    279362         
     
    281364        public Zone getZoneCouverte() { 
    282365                rectObj rect = getExtent(); 
    283                  
     366 
    284367                /*double maxX = map.getExtent().getMaxx(); 
    285368                int diffX = (int)(map.getExtent().getMaxx() -map.getExtent().getMinx()); 
    286369                double minX = map.getExtent().getMaxx() - diffX; 
    287                  
    288370                 
    289371                double maxY = map.getExtent().getMaxy(); 
     
    296378                rect.setMiny(minY); 
    297379                 
    298                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMaxx "+ rect.getMaxx()); 
    299                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMinx "+ rect.getMinx()); 
    300                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMaxy "+ rect.getMaxy()); 
    301                 LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "++++++++++++++++++++++++++++++++++++++++getMiny "+ rect.getMiny());*/ 
    302  
    303  
    304                  
     380                LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "+++getMaxx "+ rect.getMaxx()); 
     381                LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "+++getMinx "+ rect.getMinx()); 
     382                LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "+++getMaxy "+ rect.getMaxy()); 
     383                LoggerPerso.log(CarteMapScript.class, LoggerPerso.DEBUG, "+++getMiny "+ rect.getMiny());*/ 
     384 
    305385                Zone zone = new Zone(rect.getMaxy(), rect.getMiny(), rect.getMaxx(), rect.getMinx()); 
    306386                return zone; 
     
    308388         
    309389        /** 
    310          * Equivalent ᅵ dessinerCarte 
     390         * Equivalent à dessinerCarte 
    311391         */ 
    312392        public String getMapDraw(String path, String session) { 
     
    315395         
    316396        /** 
    317          * Equivalent ᅵ definirZoom 
     397         * Equivalent à definirZoom 
    318398         */ 
    319399        public void doZoomDefine(double coef, Point clic) { 
     
    323403         
    324404        public void zoneAffiche(double latmax, double latmin, double lonmax, double lonmin) { 
    325                 rectObj rectangle = map.getExtent(); 
     405                rectObj rectangle = getExtent(); 
    326406                rectangle.setMaxx(lonmax); 
    327407                rectangle.setMinx(lonmin); 
    328408                rectangle.setMiny(latmin); 
    329409                rectangle.setMaxy(latmax); 
     410//              System.out.println("zone="+latmax+","+latmin+","+lonmax+","+lonmin); 
    330411                map.setExtent(rectangle); 
    331412        } 
     
    337418         */ 
    338419        public void doSelectZone(Point clicMin, Point clicMax) { 
    339                 rectObj rectangle = map.getExtent(); 
     420                rectObj rectangle = getExtent(); 
    340421                double longExtX, longExtY; // longueur du rectangle extent 
    341422                double facteurX, facteurY; // facteur multiplicatif (extent/taille image) 
     
    365446 
    366447        /** 
    367          * Dessine la carte de rᅵfᅵrence dont le fond de carte est situᅵ dans le path passᅵ en parametre et porte le nom donnᅵ. 
     448         * Dessine la carte de référence dont le fond de carte est situé dans le path passé en parametre et porte le nom donné. 
    368449         * La fonction retourne le nom de l'image 
    369450         * @deprecated utiliser getMapRefDraw(String path, String idImage) 
    370          * @param path chemin d'acces ᅵ l'image 
    371          * @param idImage numᅵro de l'image ᅵ crᅵer (utilisᅵ pour crᅵer le nom de l'image) 
    372          * @param IMGREF nom de l'image de rᅵfᅵrence 
    373          * @return le nom dᅵfinitif de l'image 
     451         * @param path chemin d'acces à l'image 
     452         * @param idImage numéro de l'image à créer (utilisé pour créer le nom de l'image) 
     453         * @param IMGREF nom de l'image de référence 
     454         * @return le nom définitif de l'image 
    374455         */ 
    375456        public String getMapRefDraw(String path, String idImage, String IMGREF) { 
     
    402483                /**** gestion erreurs ****/ 
    403484                if (img == null) 
    404                         throw new RuntimeException("Erreur crᅵation ref image: CarteMapScript::dessinerCarte"); 
     485                        throw new RuntimeException("Erreur création ref image: CarteMapScript::dessinerCarte"); 
    405486                img.save(path + imageNom, map); 
    406487                 
     
    409490 
    410491        /** 
    411          * Dessine la carte de rᅵfᅵrence dᅵfinie pour la carte.  
     492         * Dessine la carte de référence définie pour la carte.  
    412493         * La fonction retourne le nom de l'image 
    413          * @param path chemin d'acces ᅵ l'image 
    414          * @param idImage numᅵro de l'image ᅵ crᅵer (utilisᅵ pour crᅵer le nom de l'image) 
    415          * @return le nom dᅵfinitif de l'image 
     494         * @param path chemin d'acces à l'image 
     495         * @param idImage numéro de l'image à créer (utilisé pour créer le nom de l'image) 
     496         * @return le nom définitif de l'image 
    416497         */ 
    417498                public String getMapRefDraw(String path, String idImage) { 
     
    420501                /**** sauvegarde ****/ 
    421502                if (refmap == null) 
    422                         System.err.println("MapServer::fichier de reference ᅵ la carte non initialise "); 
     503                        System.err.println("MapServer::fichier de reference à la carte non initialise "); 
    423504                 
    424505                if (idImage==null || refmap==null) { 
     
    433514                /**** gestion erreurs ****/ 
    434515                if (img == null) 
    435                         throw new RuntimeException("Erreur crᅵation ref image: CarteMapScript::dessinerCarte"); 
     516                        throw new RuntimeException("Erreur création ref image: CarteMapScript::dessinerCarte"); 
    436517                 
    437518                img.save(path + imageNom, map); 
     
    461542                couche.setName(name); 
    462543                couche.setData(data); 
     544//              couche.setExtent(-180, -90, 180, 90); 
     545//              couche.setSizeunits(MS_UNITS.MS_PIXELS.swigValue()); 
     546//              couche.setUnits(MS_UNITS.MS_DD.swigValue()); 
    463547                couche.setType(MS_LAYER_TYPE.MS_LAYER_LINE); 
    464548                couche.setStatus(1); 
     
    477561                couche.setName(name); 
    478562                couche.setData(data); 
     563//              couche.setExtent(-180, -90, 180, 90); 
     564//              couche.setSizeunits(MS_UNITS.MS_PIXELS.swigValue()); 
     565//              couche.setUnits(MS_UNITS.MS_PIXELS.swigValue()); 
    479566                couche.setType(MS_LAYER_TYPE.MS_LAYER_RASTER); 
    480567                couche.setStatus(1); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/dessinCarte/ServiceCarte.java

    r68 r70  
    3737         
    3838        /** 
    39         * Initialisation de l'emplacement de l'application 
    40         * 
    41         */ 
     39         * Initialisation de l'emplacement de l'application 
     40         * 
     41         */ 
    4242        private void initEmplacement() { 
    4343                emplacement = Donnees.getHome(); 
     
    5050         */ 
    5151        private void initMap() { 
    52                 LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "chargement neutre.map"); 
     52//              LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "chargement neutre.map"); 
    5353                carte = new CarteMapScript("neutre.map", emplacement + "/mapfile/"); 
    5454                carte.setOTFRaster("donnees", "null"); 
     
    5858         
    5959        /** 
    60          * Cette fonction génÚre une image de carte pour la grille passée en paramêtre avec la table de couleur demandée 
     60         * Cette fonction génÚre une image de carte pour la grille passée en paramÚtre avec la table de couleur demandée 
    6161         * @param id_grille 
    6262         * @param id_colormap 
     
    6767         * @throws PersistanceException  
    6868         */ 
    69         public StatReponse getCarte(long id_grille, long id_colormap, Zone zone_aff, String identifiant_unique){ 
    70                 String img_temporaire = new String(); 
     69        public StatReponse getCarte(long id_grille, long id_colormap, long id_classdis, Zone zone_aff, String identifiant_unique, String nomProd, long id_sector, boolean zoom, boolean firstAff, long maskId){ 
    7170                ServiceRaster serviceRaster = new ServiceRaster(); 
    72                  
    73                 StatReponse statReponse = serviceRaster.genereRaster(id_grille, id_colormap, zone_aff); 
    74                 img_temporaire = statReponse.getUrlImage(); 
    75                 double center = statReponse.getCenter(); 
    76                  
     71                StatReponse statReponse = serviceRaster.genereRaster(id_grille, id_colormap, id_classdis, zone_aff, nomProd, id_sector, maskId); 
     72                String img_temporaire = statReponse.getUrlImage(); 
     73//              LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "img_temporaire ="+img_temporaire); 
     74//              double center = statReponse.getCenter(); 
    7775                 
    7876                // TODO: placer le generateur de worldfile au niveau du service raster 
    7977                GenerateurWorldFile gen_worldfile = (GenerateurWorldFile) xmlbean.getBean("worldfile"); 
    80                  
    8178                //initialiser la resolution 
    8279                double resolution= getResolution(id_grille); 
    83                                  
    8480                gen_worldfile.setPasX(resolution); 
    8581                gen_worldfile.setPasY(-resolution); 
    86                  
    87                                  
     82//              gen_worldfile.setPixelY(statReponse.getZone().getNorthbc() - (resolution/2)); 
     83//              gen_worldfile.setPixelX(statReponse.getZone().getWestbc() + (resolution/2)); 
     84                gen_worldfile.setPixelY(statReponse.getZone().getNorthbc()); 
     85                gen_worldfile.setPixelX(statReponse.getZone().getWestbc()); 
    8886                gen_worldfile.writeWorldFile("/tmp/" + id_grille + "." + id_colormap); 
    89                  
    90                 String urlImage = gestionImageCarte(img_temporaire, zone_aff, identifiant_unique); 
    91                 LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "urlImage   " +urlImage); 
    92                  
     87                String urlImage = gestionImageCarte(img_temporaire, zone_aff, identifiant_unique, zoom, firstAff); 
     88//              LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "urlImage   " +urlImage); 
    9389                statReponse.setUrlImage(urlImage); 
    9490                 
     
    10197                GrilleDAO grilleDAO = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
    10298                                 
    103                 try {resolution = grilleDAO.getGrilleResolution(id_grille);}catch (PersistanceException e) {LoggerPerso.log(ServiceRaster.class, LoggerPerso.ERROR, "ERROR generateRaster " + e.getM_message(), e);} 
    104                 LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "resolution------------------------------------------------------> :: " + resolution); 
     99                try { 
     100                        resolution = grilleDAO.getGrilleResolution(id_grille); 
     101                }catch (PersistanceException e) { 
     102                        LoggerPerso.log(ServiceRaster.class, LoggerPerso.ERROR, "ERROR generateRaster " + e.getM_message(), e); 
     103                } 
     104//              LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "resolution------------------------------------------------------> :: " + resolution); 
    105105                 
    106106                return resolution; 
    107107        } 
    108108         
    109          
    110          
    111          
    112          
    113          
    114         public StatReponse getStatReponse(long id_grille, long id_colormap, Zone zone_aff){ 
     109        public StatReponse getStatReponse(long id_grille, long id_colormap, long id_classdis, Zone zone_aff, String nomProd, long id_sector, long id_mask){ 
    115110                ServiceRaster serviceRaster = new ServiceRaster(); 
    116                 StatReponse statReponse = serviceRaster.genereRaster(id_grille, id_colormap, zone_aff); 
    117  
    118                 LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "********************getStatReponse***************************"); 
    119                 return statReponse; 
    120         } 
    121          
    122          
    123          
    124         /* 
    125         public StatReponse getCenter(long id_grille, long id_colormap, Zone zone_affiche, String identifiant_unique){ 
    126                  
    127         } 
    128         */ 
    129          
    130          
    131          
    132         /** 
    133          * Genere une carte calculé à partir des données moyennes, somme, min, max ou ecart-type 
     111                StatReponse statReponse = serviceRaster.genereRaster(id_grille, id_colormap, id_classdis, zone_aff, nomProd, id_sector, id_mask); 
     112 
     113                return statReponse; 
     114        } 
     115         
     116        /** 
     117         * Genere une carte résultante comportant des statistiques sur les données 
    134118         * @param criteres 
    135119         * @param id_param 
     
    140124         * @return 
    141125         */ 
    142         public StatReponse getCarteStat(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, String fonction, String id_unique, Zone selection) { 
    143                 String img_temporaire = new String(); 
    144                  
    145                 StatReponse statReponse = serviceStat.getCarteStat(criteres, id_param, id_produit, id_colormap, fonction, id_unique);    
    146                 img_temporaire = statReponse.getUrlImage(); 
     126        public StatReponse getCarteStat(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, long id_classdis, long id_secteur, long id_rcp, String alt, String fonction, String id_unique, Zone selection, boolean zoom, boolean firstAff, long maskId) { 
     127                StatReponse statReponse = serviceStat.getCarteStat(criteres, id_param, id_produit, id_colormap, id_classdis, id_secteur, id_rcp, alt, fonction, maskId); 
     128                String img_temporaire = statReponse.getUrlImage(); 
    147129                // TODO: placer le generateur de worldfile au niveau du service raster 
    148130                GenerateurWorldFile gen_worldfile = (GenerateurWorldFile) xmlbean.getBean("worldfile"); 
    149                 gen_worldfile.writeWorldFile(img_temporaire); 
    150                  
    151                  
    152131//              initialiser la resolution 
    153                 float resolution=0; 
     132                double resolution = 0; 
    154133                GrilleDAO grilleDAO = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
    155                                  
    156                 try {resolution = grilleDAO.getGrilleResolution(id_produit);}catch (PersistanceException e) {LoggerPerso.log(ServiceRaster.class, LoggerPerso.ERROR, "ERROR generateRaster " + e.getM_message(), e);} 
    157                 LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "resolution------------------------------------------------------> :: " + resolution); 
     134                try { 
     135                        resolution = grilleDAO.getProduitResolution(id_produit); 
     136                }catch (PersistanceException e) { 
     137                        LoggerPerso.log(ServiceRaster.class, LoggerPerso.ERROR, "ERROR generateRaster " + e.getM_message(), e); 
     138                } 
     139//              LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "resolution--> :: " + resolution); 
     140 
    158141                gen_worldfile.setPasX(resolution); 
    159142                gen_worldfile.setPasY(-resolution); 
    160                  
    161                  
    162                  
    163                 String urlImage = gestionImageCarte(img_temporaire, selection, id_unique); 
    164                 LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "urlImage   " +urlImage); 
     143//              gen_worldfile.setPixelY(statReponse.getZone().getNorthbc() - (resolution/2)); 
     144//              gen_worldfile.setPixelX(statReponse.getZone().getWestbc() + (resolution/2)); 
     145                gen_worldfile.setPixelY(statReponse.getZone().getNorthbc()); 
     146                gen_worldfile.setPixelX(statReponse.getZone().getWestbc()); 
     147                gen_worldfile.writeWorldFile(img_temporaire.substring(0, img_temporaire.length()-4)); 
     148                 
     149                String urlImage = gestionImageCarte(img_temporaire, selection, id_unique, zoom, firstAff); 
     150//              LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "urlImage   " +urlImage); 
    165151                 
    166152                statReponse.setUrlImage(urlImage); 
     
    170156        } 
    171157         
    172         public StatReponse getStatReponse(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, String fonction, String id_unique, Zone selection) { 
    173                  
    174                 StatReponse statReponse = serviceStat.getCarteStat(criteres, id_param, id_produit, id_colormap, fonction, id_unique);    
    175                                  
    176                 return statReponse; 
    177                  
    178         } 
    179          
    180          
    181          
    182         public String getLegendStat(long id_grille, long id_colormap, String fonction, String id) { 
    183                 if (!fonction.equals("ecartCarte") && !fonction.equals("moyenneCarte") &&!fonction.equals("sommeCarte"))  
    184                         return getLegend(id_grille, id_colormap); 
    185                 String legend = serviceStat.getLegend(emplacement + "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +"_" + id , id_colormap, id_grille); 
    186                 LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "getLegendCarte :: " + legend); 
    187                 return "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +"_" + id +".legend.png"; 
     158        public StatReponse getStatReponse(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, long id_classdis, long id_secteur, long id_rcp, String alt, String fonction, long id_mask) { 
     159                StatReponse statReponse = serviceStat.getCarteStat(criteres, id_param, id_produit, id_colormap, id_classdis, id_secteur, id_rcp, alt, fonction, id_mask); 
     160                return statReponse; 
     161        } 
     162         
     163         
     164         
     165        public String getLegendStat(long id_grille, long id_colormap, long id_classdis, String fonction, String id) { 
     166//              if (!fonction.equals("ecartCarte") && !fonction.equals("moyenneCarte") &&!fonction.equals("sommeCarte")) { 
     167                if (!fonction.equals("ecartCarte") && !fonction.equals("sommeCarte") 
     168                                && !fonction.equals("totalDay") && !fonction.equals("totalMonth") 
     169                                && !fonction.equals("totalYear") && !fonction.equals("totalPeriod")) { 
     170                        return getLegend(id_grille, id_colormap, id_classdis); 
     171                } 
     172                serviceStat.getLegend(emplacement + "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +"_" + id_classdis +"_"+ id , id_colormap, id_classdis, id_grille, fonction); 
     173//              LoggerPerso.log(ServiceCarte.class, LoggerPerso.DEBUG, "getLegendCarte :: " + legend); 
     174                return "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +"_" +id_classdis+"_"+ id +".legend.png"; 
    188175        } 
    189176        /** 
     
    196183         * @return 
    197184         */ 
    198         public String gestionImageCarte(String image_temporaire,Zone zone_aff, String identifiant_unique) { 
    199                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "gestion image carte"); 
     185        public String gestionImageCarte(String image_temporaire,Zone zone_aff, String identifiant_unique, boolean zoom, boolean firstAff) { 
     186//              LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "gestion image carte"); 
    200187                String img_erreur = "/images/nodata.png"; 
    201188                String nom_image_final; 
    202189                 
    203190                try { 
    204                         LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "modif layer : donnees " + image_temporaire); 
     191//                      LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "modif layer : donnees " + image_temporaire); 
    205192                        carte.modifDataLayer("donnees", image_temporaire); 
    206                         LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "modif layer ok"); 
    207                         if (zone_aff != null) 
     193                        if (firstAff && !zoom) { 
    208194                                carte.zoneAffiche(zone_aff.getNorthbc(), zone_aff.getSouthbc(), zone_aff.getEastbc(), zone_aff.getWestbc()); 
     195                        } 
    209196                        //carte.changeProjection(""); 
    210197                        nom_image_final = carte.dessinerCarte(emplacement + "/images/cartes_temporaires/", identifiant_unique); 
     
    229216         * @return 
    230217         */ 
    231         public String getLegend(long id_grille, long id_colormap) { 
    232                 File legend_img = new File(emplacement + "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +".legend.png"); 
     218        public String getLegend(long id_grille, long id_colormap, long id_classdis) { 
     219                File legend_img = new File(emplacement + "/images/cartes_temporaires/" + id_grille + "_" + id_colormap+"_"+id_classdis +".legend.png"); 
    233220                 
    234221                if (legend_img.exists()) 
    235                         return "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +".legend.png"; 
    236                  
     222                        return "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +"_"+id_classdis+".legend.png"; 
    237223                ServiceRaster serviceRaster = new ServiceRaster(); 
    238                 serviceRaster.genereLegend(id_grille, id_colormap, emplacement + "/images/cartes_temporaires/" + id_grille + "_" + id_colormap); 
    239                  
    240                 return "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +".legend.png"; 
     224                serviceRaster.genereLegend(id_grille, id_colormap, id_classdis, emplacement + "/images/cartes_temporaires/" + id_grille + "_" + id_colormap+"_"+id_classdis); 
     225                 
     226                return "/images/cartes_temporaires/" + id_grille + "_" + id_colormap +"_"+id_classdis+".legend.png"; 
    241227        } 
    242228         
     
    251237                Zone zone = carte.getZoneCouverte(); 
    252238 
    253                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getEastbc "+ zone.getEastbc()); 
    254                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getWestbc "+ zone.getWestbc()); 
    255                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getNorthbc "+ zone.getNorthbc()); 
    256                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getSouthbc "+ zone.getSouthbc()); 
    257                  
    258239                /*if (zone.getEastbc() <180) { if((zone.getEastbc()- ((int)zone.getEastbc()))  < 0.5) zone.setEastbc(((int)zone.getEastbc()+ 0.25)); else zone.setEastbc(((int)zone.getEastbc()+ 0.75));}; 
    259240                if (zone.getWestbc() > -180 ) {  if((zone.getWestbc()- ((int)zone.getWestbc()))  < 0.5) zone.setWestbc(((int)zone.getWestbc()+ 0.25)); else zone.setWestbc(((int)zone.getWestbc()+ 0.75));}; 
     
    261242                if (zone.getSouthbc() >-90) {  if((zone.getSouthbc()- ((int)zone.getSouthbc()))  < 0.5) zone.setSouthbc(((int)zone.getSouthbc()+ 0.25)); else zone.setSouthbc(((int)zone.getSouthbc()+ 0.75));}; 
    262243*/ 
    263                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getEastbcN "+ zone.getEastbcN()); 
    264                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getWestbcN "+ zone.getWestbcN()); 
    265                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getNorthbcN "+ zone.getNorthbcN()); 
    266                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne : getSouthbcN "+ zone.getSouthbcN()); 
    267                  
    268                  
    269244                 
    270245                return zone; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/emission/ServiceEmission.java

    r68 r70  
    1515import org.medias.eccad.metier.generationRaster.colorMap.ColorMappingLineaire; 
    1616import org.medias.eccad.metier.statistique.GrapheCGI; 
    17 import org.medias.eccad.metier.statistique.ServiceStatistique; 
    1817import org.medias.eccad.metier.traducteur.TraducteurStat; 
    1918import org.medias.eccad.modele.ColorTab; 
     
    2928import org.medias.eccad.persistance.dao.ProduitDAO; 
    3029import org.medias.eccad.persistance.exception.PersistanceException; 
    31 import org.medias.jni.RasterDAO; 
    3230import org.springframework.beans.factory.xml.XmlBeanFactory; 
    3331 
     
    116114                        LoggerPerso.log(ServiceEmission.class, LoggerPerso.ERROR, "erreur getGazFacteurEmission parametre : ", e); 
    117115                } 
    118                 LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " get produit :"  + " " + prod + " ");                 
     116//              LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " get produit :"  + " " + prod + " ");                 
    119117                return prod; 
    120118        } 
     
    134132                        LoggerPerso.log(ServiceEmission.class, LoggerPerso.ERROR, "erreur getGazFacteurEmission parametre : ", e); 
    135133                } 
    136                 LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " getGazFacteurEmission param"  + " " + liste.size() + " " + liste);           
     134//              LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " getGazFacteurEmission param"  + " " + liste.size() + " " + liste);           
    137135                return liste; 
    138136        } 
     
    149147                        LoggerPerso.log(ServiceEmission.class, LoggerPerso.ERROR, "erreur getGazFacteurEmission produit : " + id_produit, e); 
    150148                } 
    151                 LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " getGazFacteurEmission produit : " + id_produit + " " + liste.size() + " " + liste); 
     149//              LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " getGazFacteurEmission produit : " + id_produit + " " + liste.size() + " " + liste); 
    152150                return liste; 
    153151        } 
     
    156154         
    157155        public List<Produit> getListLand(Long facteur) { 
    158                 ProduitDAO produitdao    = (ProduitDAO) xmlbean.getBean("produitDAO"); 
     156                ProduitDAO produitdao = (ProduitDAO) xmlbean.getBean("produitDAO"); 
    159157                List<Produit> liste = null; 
    160158                 
     
    165163                        LoggerPerso.log(ServiceEmission.class, LoggerPerso.ERROR, "erreur getListLand parametre : ", e); 
    166164                } 
    167                 LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " getListLand param"  + " " + liste.size() + " " + liste);             
     165//              LoggerPerso.log(ServiceEmission.class, LoggerPerso.DEBUG, " getListLand param"  + " " + liste.size() + " " + liste);             
    168166                return liste; 
    169167        } 
     
    190188         * @return 
    191189         */ 
    192         public String getCarte(RequeteFacteurEmission requete, Zone affiche, String id_unique) { 
     190        public String getCarte(RequeteFacteurEmission requete, Zone affiche, String id_unique, boolean zoom, boolean firstAff) { 
    193191                String temp = getRasterFacteur(requete); 
    194                 return carte.gestionImageCarte(temp, affiche, id_unique); 
    195         } 
    196          
    197         public String getLegend(long id_colormap, long id_grille, String url_images) { 
    198                 ColorMapping colormap = getColorMap(id_colormap); 
     192                return carte.gestionImageCarte(temp, affiche, id_unique, zoom, firstAff); 
     193        } 
     194         
     195        public String getLegend(long id_colormap, long id_classdis, long id_grille, String url_images) { 
     196                ColorMapping colormap = getColorMap(id_colormap,id_classdis); 
    199197                InformationLegend info_legend = new InformationLegend(); 
    200198                GenerateurLegendRaster gen_legend = new GenerateurLegendeImg(); 
    201199                gen_legend.genereLegendVertical(colormap, info_legend.getLegendDynamic(colormap.getColorTable(), reponse.getMaximal(), reponse.getMinimal()), "g(X)/m2/jour"); 
    202                 //system.out.println(reponse); 
    203200                //gen_legend.genereLegendVertical(colormap, info_legend.getLegendDynamic(colormap.getColorTable(), 150, 0), info_legend.getInfoSup(id_grille)); 
    204201                gen_legend.enregistreLegend(Donnees.getHome()  +url_images+".legend.png"); 
     
    222219        private String getRasterFacteur(RequeteFacteurEmission requete) { 
    223220                String xml = requete.toXml(); 
    224                 System.out.println(xml); 
    225                 // TODO: ATTENDRE LIB DE HAKIM 
    226221                GrapheCGI rasterdao = new GrapheCGI(); 
    227                  
    228                 //system.out.println(rasterdao.getStatistique(xml)); 
    229                  
    230222                reponse = decodeReponse(rasterdao.getStatistique(xml)); 
    231223                if (reponse.getError() != null && !reponse.getError().equals("")) 
    232224                        return "erreur"; 
    233                  
    234225                GenerateurWorldFile gen_worldfile = (GenerateurWorldFile) xmlbean.getBean("worldfile"); 
    235226                gen_worldfile.setPasX(reponse.getCarte().getPasX()); 
    236227                gen_worldfile.setPasY(reponse.getCarte().getPasY()); 
    237                 gen_worldfile.setPixelY(reponse.getZone().getNorthbc() - (reponse.getCarte().getPasY()/2)); 
    238                 gen_worldfile.setPixelX(reponse.getZone().getWestbc() + (reponse.getCarte().getPasY()/2)); 
    239                  
    240                  
     228                gen_worldfile.setPixelY(reponse.getZone().getNorthbc()); 
     229                gen_worldfile.setPixelX(reponse.getZone().getWestbc()); 
     230//              gen_worldfile.setPixelY(reponse.getZone().getNorthbc() - (reponse.getCarte().getPasY()/2)); 
     231//              gen_worldfile.setPixelX(reponse.getZone().getWestbc() + (reponse.getCarte().getPasX()/2)); 
    241232                String nom = reponse.getUrlImage(); 
    242                  
    243233                nom = nom.substring(0, nom.length()-4); 
    244234                gen_worldfile.writeWorldFile(nom); 
    245                  
    246                 //system.out.println("\n\n\n" + nom); 
    247235                return reponse.getUrlImage(); 
    248                 //return "/tmp/4113.31.png"; 
    249         } 
    250          
    251         private String encodeData() { 
    252                 return ""; 
    253         } 
     236        } 
     237         
     238//      private String encodeData() { 
     239//              return ""; 
     240//      } 
    254241         
    255242        private StatReponse decodeReponse(String reponse_xml) { 
     
    258245                if (reponse.getError() != null && !reponse.getError().equals("")) 
    259246                        return null; 
    260                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, reponse_xml); 
     247//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, reponse_xml); 
    261248                return reponse; 
    262249        } 
     
    268255         * @return la table de couleur par défaut 
    269256         */ 
    270         private ColorMapping getColorMap(long colormapid) { 
     257        private ColorMapping getColorMap(long colormapid, long classdisid) { 
    271258                ColorTabDAO colorDAO = (ColorTabDAO) xmlbean.getBean("colorTabDAO"); 
    272259                 
     
    276263                // mais la j'ai un résultat chelou :/ 
    277264                try { 
    278                         colortab = colorDAO.getColorMapByID(colormapid); 
     265                        colortab = colorDAO.getColorMapByID(colormapid, classdisid); 
    279266                } catch (PersistanceException e) { 
    280267                        e.printStackTrace(); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/extracteur/CritereExtractBean.java

    r68 r70  
    77        private String produit = null;  
    88        private String parametre = null;  
     9        private String secteur = null;  
     10        private String rcp = null;  
     11 
    912        private String dateDebut = null;  
    1013         
     
    129132        public void setSeparator(String separator) { 
    130133                this.separator = separator; 
     134        } 
     135        public String getSecteur() { 
     136                return secteur; 
     137        } 
     138        public void setSecteur(String secteur) { 
     139                this.secteur = secteur; 
     140        } 
     141        public String getRcp() { 
     142                return rcp; 
     143        } 
     144        public void setRcp(String rcp) { 
     145                this.rcp = rcp; 
    131146        }   
    132147         
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/extracteur/Extract.java

    r68 r70  
    3030            requete +="<idproduit>" + ef.getProduit() + "</idproduit>"; 
    3131            requete +="<idparametre>" + ef.getParametre() + "</idparametre>"; 
     32            requete +="<idsecteur>" + ef.getSecteur() + "</idsecteur>"; 
     33            requete +="<idrcp>" + ef.getRcp() + "</idrcp>"; 
    3234            requete +="<dateDebut>" + ef.getDateDebut() + "</dateDebut>"; 
    3335            requete +="<dateFin>" + ef.getDateFin() + "</dateFin>"; 
     
    5254                XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); 
    5355             
    54              
    5556            ExtracteurConfig configuration = (ExtracteurConfig) SpringBeanFactory.getXmlFactory().getBean("extracteur"); 
    5657            String urlCgi =  configuration.getUrl(); 
    5758             
    58              
    59             //URL url = new URL("http://zeus/cgi-bin/eccad_extract.cgi"); 
    6059            URL url = new URL(urlCgi); 
    6160            config.setServerURL(url); 
     
    6665             
    6766            Object[] params = new Object[]{requete,mode}; 
    68             LoggerPerso.log(Extract.class, LoggerPerso.DEBUG, "extraction :: " + requete); 
     67//          LoggerPerso.log(Extract.class, LoggerPerso.DEBUG, "extraction :: " + requete); 
    6968            String rslt = (String) client.execute("extract", params); 
    70             LoggerPerso.log(Extract.class, LoggerPerso.DEBUG, "extraction result :: " + result); 
     69            LoggerPerso.log(Extract.class, LoggerPerso.DEBUG, "extraction result :: " + rslt); 
    7170            setResult(rslt);     
    7271        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/GenerateurLegendRaster.java

    r68 r70  
    11package org.medias.eccad.metier.generationRaster; 
    2  
    3 import java.util.List; 
    42 
    53import org.medias.eccad.metier.generationRaster.colorMap.ColorMapping; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/GenerateurLegendeImg.java

    r68 r70  
    44import java.awt.Color; 
    55import java.awt.Font; 
    6 import java.awt.Graphics; 
    76import java.awt.Graphics2D; 
    87import java.awt.image.BufferedImage; 
     
    1413import javax.imageio.ImageIO; 
    1514 
    16  
    17 import org.medias.eccad.helpers.LoggerPerso; 
    1815import org.medias.eccad.metier.generationRaster.colorMap.ColorMapping; 
    1916import org.medias.eccad.modele.ColorTab; 
     
    4744                        e.printStackTrace(); 
    4845                } 
    49                 LoggerPerso.log(GenerateurLegendeImg.class, LoggerPerso.DEBUG, "fin write"); 
    50  
     46//              LoggerPerso.log(GenerateurLegendeImg.class, LoggerPerso.DEBUG, "fin write"); 
    5147        } 
    5248 
     
    5652                 
    5753                initcolor(); 
    58                 genereCarre(); 
     54                genereCarre(texte_legende.getType()); 
    5955                genereText(texte_legende.getType()); 
    6056                genereCadre(); 
     
    6561                valeur = texte_legende; 
    6662                tab_unique = getTabCouleurUnique(colortab); 
    67                 nbr_case = tab_unique.size(); 
     63//              nbr_case = tab_unique.size(); 
     64                nbr_case = (valeur.size()==1?2:valeur.size()); 
    6865                longueur = 15; 
    6966                //hauteur  = haut_image/nbr_case; 
    7067                hauteur = 20; 
    71                 haut_image = hauteur*nbr_case+3 + 15; 
     68                haut_image = hauteur*nbr_case+30; 
    7269                //larg_image = calculer le nombre de chiffre  
    7370                buff_image = new BufferedImage(larg_image, haut_image, BufferedImage.TYPE_INT_ARGB); 
     
    8481        private void genereInfoSup(String info) { 
    8582                image.setColor(new Color (0,0,0)); 
    86                 image.drawString(info, 1 , haut_image-1); 
    87                 LoggerPerso.log(GenerateurLegendeImg.class, LoggerPerso.DEBUG, info); 
     83                image.drawString(info, 1 , haut_image-3); 
     84//              LoggerPerso.log(GenerateurLegendeImg.class, LoggerPerso.DEBUG, info); 
    8885        } 
    8986         
    9087        private void genereCadre() { 
    9188                image.setColor(new Color(0, 0, 0)); 
    92                 image.drawRect(0, 0, longueur + 1, hauteur*nbr_case+1); 
     89                image.drawRect(0, 10, longueur + 1, hauteur*nbr_case+1); 
    9390        } 
    9491         
    95         private void genereCarre() { 
     92        private void genereCarre(int type_legend) { 
    9693                for (int i=0; i<nbr_case; i++) { 
    97                         image.setColor(tab_unique.get(nbr_case - 1 - i)); 
    98                         image.fillRect(1, i*hauteur + 1, longueur, hauteur); 
     94                        if (type_legend == Legende.TYPE_VALUE) { 
     95                                image.setColor(tab_unique.get(nbr_case - 1 - i)); 
     96                        } else { 
     97                                image.setColor(tab_unique.get(i)); 
     98                        } 
     99                        image.fillRect(1, i*hauteur + 11, longueur, hauteur); 
    99100                } 
    100101        } 
     
    105106                if (nbr_case > valeur.size()+1) 
    106107                        return; 
    107                  
    108108                if (type_legend == Legende.TYPE_VALUE) 
    109                         for (int i=0; i<nbr_case -1; i++) { 
    110                                 image.drawString(valeur.get(i), longueur + 6, hauteur*(nbr_case - i - 1)+6); 
     109                        for (int i=0; i<valeur.size(); i++) { 
     110                                image.drawString(valeur.get(i), longueur + 6, hauteur*(nbr_case - i - 1)+16); 
    111111                        } 
    112                 else 
     112                else { 
    113113                        for (int i=1; i<=valeur.size(); i++) { 
    114                                 image.drawString(valeur.get(i-1), longueur + 6, hauteur*(nbr_case - i + 1) - (hauteur/2) + 6); 
     114//                              image.drawString(valeur.get(i-1), longueur + 6, hauteur*(nbr_case - i + 1) - (hauteur/2) + 16); 
     115                                image.drawString(valeur.get(valeur.size()-i), longueur + 6, hauteur*(nbr_case - i + 1) - (hauteur/2) + 16); 
    115116                        } 
     117                } 
    116118        } 
    117119         
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/GenerateurRasterImg.java

    r68 r70  
    1010 
    1111import org.medias.eccad.helpers.Donnees; 
    12 import org.medias.eccad.helpers.LoggerPerso; 
    1312import org.medias.eccad.metier.generationRaster.colorMap.ColorMapping; 
    1413import org.medias.eccad.metier.generationRaster.colorMap.ColorMappingJaune; 
     
    3433                        e.printStackTrace(); 
    3534                } 
    36                 LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "fin write"); 
     35//              LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "fin write"); 
    3736        } 
    3837         
     
    5857         
    5958        private void dessineCadre(Zone zone) { 
    60                 LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "generation cadre"); 
    61                 LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "zone :: " + zone); 
     59//              LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "generation cadre"); 
     60//              LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "zone :: " + zone); 
    6261                 
    6362                Double tmp = zone.getNorthbc(); 
     
    7069                int droite = (tmp.intValue() + 180)*2 + 3; 
    7170                 
    72                 LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "coord : " + haut + ":" + bas + ":" + droite  + ":" + gauche); 
     71//              LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "coord : " + haut + ":" + bas + ":" + droite  + ":" + gauche); 
    7372                 
    7473                 
     
    8584                image.drawRect(gauche+1, haut+1, droite-gauche-2, bas-haut-2); 
    8685                 
    87                 LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "fin cadre"); 
     86//              LoggerPerso.log(GenerateurRasterImg.class, LoggerPerso.DEBUG, "fin cadre"); 
    8887        } 
    8988         
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/InformationLegend.java

    r68 r70  
    77import org.medias.eccad.helpers.LoggerPerso; 
    88import org.medias.eccad.helpers.SpringBeanFactory; 
    9 import org.medias.eccad.metier.generationRaster.colorMap.ColorMapping; 
    10 import org.medias.eccad.metier.statistique.ServiceStatistique; 
    119import org.medias.eccad.modele.ColorTab; 
    1210import org.medias.eccad.modele.Legende; 
    1311import org.medias.eccad.persistance.dao.CodeDAO; 
    14 import org.medias.eccad.persistance.dao.ColorTabDAO; 
    1512import org.medias.eccad.persistance.dao.GrilleDAO; 
    1613import org.medias.eccad.persistance.dao.ParametreDAO; 
     
    2522        } 
    2623         
    27         public List<String> getLegendValeur(ColorTab colortab) { 
     24        public List<String> getLegendValeur(ColorTab colortab, String unit) { 
    2825                int taille = colortab.getLength(); 
    2926                float tableau_valeur[] = colortab.getTab_min(); 
    3027                float valeur; 
    31                  
    3228                List<String> liste = new LinkedList<String>(); 
    3329                 
     
    3632                        valeur = tableau_valeur[i]; 
    3733                        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()));                  
    3839                } 
    3940                 
     
    4546         * Cette fonction a pour vocation d'obtenir les informations suplémentaires à afficher sous la légende (par exemple les unités) 
    4647         * @param id_grille l'identifiant de la grille 
     48         * @param fonction la fonction permettant de déterminer le mode d'affichage choisi 
    4749         * @return la chaine de caractÚre représentant les informations 
    4850         */ 
    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 = ""; 
    5253                ParametreDAO paramDAO = (ParametreDAO) xmlbean.getBean("parametreDAO"); 
    5354                try { 
     
    5556                } catch (PersistanceException e) { 
    5657                        e.printStackTrace(); 
    57                         information += "none"; 
     58                        information += "No unit"; 
    5859                } 
    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                } 
    6077                return information; 
    6178        } 
     
    6784         * @return 
    6885         */ 
    69         public Legende getLegendText(long id_grille, ColorTab colortab) { 
     86        public Legende getLegendText(long id_grille, ColorTab colortab, String unit) { 
    7087                GrilleDAO grille = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
    7188                CodeDAO codedao = (CodeDAO) xmlbean.getBean("codeDAO"); 
     
    7592                try { 
    7693                        codif = grille.getCodification(id_grille); 
     94//                      LoggerPerso.log(ServiceRaster.class, LoggerPerso.WARN, "type codification :" + codif); 
    7795                } 
    7896                catch (PersistanceException perse) { 
    7997                        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); 
    8199                } 
    82100                 
     
    84102                        if (codif.equals("coded")) { 
    85103                                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); 
    89106                        } 
    90107                } 
    91108                catch (PersistanceException perse) { 
    92109                        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); 
    94111                } 
    95112                 
     
    102119                int taille = colortab.getLength(); 
    103120                float tableau_valeur[] = colortab.getTab_min(); 
    104                  
     121 
    105122                // on prend n-1 valeur ^^ 
    106123                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; 
    109125                        liste.add(fixeDecimal(Float.toString(valeur))); 
    110126                } 
     127                valeur = (colortab.getMax() *(max-min))+min; 
     128                liste.add(fixeDecimal(Float.toString(valeur))); 
    111129                return new Legende(liste , Legende.TYPE_VALUE); 
    112130        } 
     
    115133 
    116134        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); 
    118136                if (entree == null) 
    119137                        return "nc"; 
    120138                int index = entree.lastIndexOf("."); 
    121139                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) { 
    124142                        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) 
    126145                { 
    127146                        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()); 
    129148                        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; 
    131151                } 
    132                         LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree "+entree); 
     152//              LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "entree "+entree); 
    133153                return entree; 
    134154        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/IntServiceRaster.java

    r68 r70  
    55 
    66public interface IntServiceRaster { 
    7         public StatReponse genereRaster(long id_grille, long id_colormap, Zone zone); 
    8         public String genereLegend(long id_grille, long id_colormap, String fichier); 
     7        public StatReponse genereRaster(long id_grille, long id_colormap, long id_classdis, Zone zone, String nomProd, long id_sector, long id_mask); 
     8        public String genereLegend(long id_grille, long id_colormap, long id_classdis, String fichier); 
    99} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/ServiceRaster.java

    r68 r70  
    1818import org.medias.eccad.persistance.dao.GrilleDAO; 
    1919import org.medias.eccad.persistance.exception.PersistanceException; 
    20 import org.medias.eccad.presentation.traducteur.TraducteurCarte; 
    2120import org.springframework.beans.factory.xml.XmlBeanFactory; 
    2221 
     
    3433         */ 
    3534        public ServiceRaster() { 
    36                 LoggerPerso.log(ServiceRaster.class, LoggerPerso.DEBUG, "création du service"); 
     35//              LoggerPerso.log(ServiceRaster.class, LoggerPerso.DEBUG, "création du service"); 
    3736                xmlbean = SpringBeanFactory.getXmlFactory(); 
    3837                gen_worldfile = (GenerateurWorldFile) xmlbean.getBean("worldfile"); 
     
    4645         * Permet la création de l'image représentant la légende 
    4746         */ 
    48         public String genereLegend(long id_grille, long id_colormap, String fichier) { 
    49                 colormap = getColorMap(id_colormap); 
     47        public String genereLegend(long id_grille, long id_colormap, long id_classdis, String fichier) { 
     48                colormap = getColorMap(id_colormap,id_classdis); 
    5049                InformationLegend info_legend = new InformationLegend(); 
    51                  
    52                 gen_legend.genereLegendVertical(colormap, info_legend.getLegendText(id_grille, colormap.getColorTable()), info_legend.getInfoSup(id_grille)); 
     50                String infoSup = info_legend.getInfoSup(id_grille,null); 
     51                gen_legend.genereLegendVertical(colormap, info_legend.getLegendText(id_grille, colormap.getColorTable(), infoSup), infoSup); 
    5352                gen_legend.enregistreLegend(fichier+".legend.png"); 
    5453                return fichier+".legend.png"; 
     
    5756         
    5857        /** 
    59          * Demande au CGI eccad de générer un raster pour la grille passée en paramêtre. 
     58         * Demande au CGI eccad de générer un raster pour la grille passée en paramÚtre. 
    6059         */ 
    61         public StatReponse genereRaster(long id_grille, long id_colormap, Zone zone) { 
    62                 LoggerPerso.log(ServiceRaster.class, LoggerPerso.DEBUG,"-------------------------  **********************************++++++++++++++++++++++ "); 
     60        public StatReponse genereRaster(long id_grille, long id_colormap, long id_classdis, Zone zone, String nomProd, long id_sector, long id_mask) { 
    6361                float centerValue = 0, centerLat = 0, centerLon = 0; 
    6462                String requete = ""; 
     
    6664                Grille grille = null; 
    6765                 
    68                 try {grille = grilleDAO.getGrille(id_grille);}catch (PersistanceException e) {LoggerPerso.log(ServiceRaster.class, LoggerPerso.ERROR, "ERROR generateRaster " + e.getM_message(), e);} 
     66                try { 
     67                        grille = grilleDAO.getGrille(id_grille); 
     68                }catch (PersistanceException e) { 
     69                        LoggerPerso.log(ServiceRaster.class, LoggerPerso.ERROR, "ERROR generateRaster " + e.getM_message(), e); 
     70                } 
    6971                 
    7072                GrapheCGI rasterdao = new GrapheCGI(); 
    7173                Map<String, String> critere = new HashMap<String, String>(); 
    72                 if (zone != null) 
    73                 { 
     74                if (zone != null) { 
    7475                        //*************************// 
    75                          
    7676                        String northbcN =  zone.getNorthbcN().replace(",","."); 
    7777                        String southbcN = zone.getSouthbcN().replace(",","."); 
    7878                        String eastbcN = zone.getEastbcN().replace(",","."); 
    7979                        String westbcN = zone.getWestbcN().replace(",","."); 
    80  
    81                         LoggerPerso.log(ServiceRaster.class, LoggerPerso.DEBUG,"-------------------------   "+ northbcN); 
    82                          
    8380                        critere.put("lat-max", northbcN); 
    8481                        critere.put("lat-min", southbcN); 
    8582                        critere.put("lon-max", eastbcN); 
    8683                        critere.put("lon-min", westbcN); 
    87                          
    88                         critere.put("beg-date", grille.getDate().toString()); 
    89                         critere.put("end-date", grille.getDate().toString()); 
    90                         TraducteurStat traducteur = new TraducteurStat(); 
    91                         requete = traducteur.encodeCritere(critere, grille.getId_param(), grille.getId_produit(), id_colormap, "getGridRaster", id_grille); 
    92                         StatReponse reponse = traducteur.getReponse(rasterdao.getStatistique(requete)); 
    93                         centerValue = reponse.getCenter(); 
    94                         centerLat   = reponse.getCenterLat(); 
    95                         centerLon   = reponse.getCenterLon(); 
    9684                } 
    97  
    98                 LoggerPerso.log(ServiceRaster.class, LoggerPerso.DEBUG,"-------------------------  **********************************++++++++++++++++++++++ "); 
    99                  
    100                 critere.put("lat-max", "90"); 
    101                 critere.put("lat-min", "-90"); 
    102                 critere.put("lon-max", "180"); 
    103                 critere.put("lon-min", "-180"); 
    104                  
     85                else { 
     86                        critere.put("lat-max", "90"); 
     87                        critere.put("lat-min", "-90"); 
     88                        critere.put("lon-max", "180"); 
     89                        critere.put("lon-min", "-180"); 
     90                } 
    10591                critere.put("beg-date", grille.getDate().toString()); 
    10692                critere.put("end-date", grille.getDate().toString()); 
    10793                TraducteurStat traducteur = new TraducteurStat(); 
    108                 requete = traducteur.encodeCritere(critere, grille.getId_param(), grille.getId_produit(), id_colormap, "getGridRaster", id_grille); 
     94                // Pour le produit IPCC, si le secteur est 0, cela signifie qu'on souhaite afficher la carte résultante de la somme des grilles associés à tous les secteurs 
     95                // Sinon, on affiche une seule grille sur la carte 
     96                if (nomProd.equals("IPCC") && id_sector==0) { 
     97                        requete = traducteur.encodeCritere(critere, grille.getId_param(), grille.getId_produit(), id_colormap, id_classdis, 0, grille.getId_rcp(), "0", "getGridsRaster", id_grille, id_mask); 
     98                } else { 
     99                        requete = traducteur.encodeCritere(critere, grille.getId_param(), grille.getId_produit(), id_colormap, id_classdis, grille.getId_secteur(), grille.getId_rcp(), grille.getLegend(), "getGridRaster", id_grille, id_mask); 
     100                } 
    109101                StatReponse reponse = traducteur.getReponse(rasterdao.getStatistique(requete)); 
    110                 if (zone != null) 
    111                 { 
     102                if (zone != null) { 
     103                        centerValue = (reponse.getCenter()==null?0:reponse.getCenter().floatValue()); 
     104                        centerLat   = (reponse.getCenterLat()==null?0:reponse.getCenterLat().floatValue()); 
     105                        centerLon   = (reponse.getCenterLon()==null?0:reponse.getCenterLon().floatValue()); 
    112106                        reponse.setCenter(centerValue); 
    113107                        reponse.setCenterLat(centerLat); 
     
    125119         * @return la table de couleur par défaut 
    126120         */ 
    127         private ColorMapping getColorMap(long colormapid) { 
     121        private ColorMapping getColorMap(long colormapid, long classdisid) { 
    128122                ColorTabDAO colorDAO = (ColorTabDAO) xmlbean.getBean("colorTabDAO"); 
    129123                 
     
    131125                 
    132126                try { 
    133                         colortab = colorDAO.getColorMapByID(colormapid); 
     127                        colortab = colorDAO.getColorMapByID(colormapid,classdisid); 
    134128                } catch (PersistanceException e) { 
    135129                        e.printStackTrace(); 
     
    160154        } 
    161155 
    162  
    163156} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/colorMap/ColorMappingLineaire.java

    r68 r70  
    22 
    33import java.awt.Color; 
    4  
    5 import org.medias.eccad.modele.ColorTab; 
    64 
    75public class ColorMappingLineaire extends ColorMapping { 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/generationRaster/test/TestServiceRaster.java

    r68 r70  
    1515        public void testGenereRaster() { 
    1616                ServiceRaster serv_raster = new ServiceRaster(); 
    17                 System.out.println(serv_raster.genereRaster(5100, 25, null)); 
     17                System.out.println(serv_raster.genereRaster(5100, 25, 25, null,null,0,0)); 
    1818                 
    1919        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/statistique/GrapheCGI.java

    r68 r70  
    88import org.apache.xmlrpc.client.XmlRpcClientConfigImpl; 
    99import org.apache.xmlrpc.client.XmlRpcCommonsTransportFactory; 
    10 import org.medias.eccad.helpers.LoggerPerso; 
    1110import org.medias.eccad.helpers.SpringBeanFactory; 
    12 import org.medias.eccad.metier.extracteur.Extract; 
    1311import org.medias.eccad.metier.extracteur.ExtracteurConfig; 
    1412 
    1513public class GrapheCGI { 
    1614        public String getStatistique(String requete)  { 
    17                  XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); 
     15                XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl(); 
     16 
     17                ExtracteurConfig configuration = (ExtracteurConfig) SpringBeanFactory.getXmlFactory().getBean("extracteur"); 
     18                String urlCgi =  configuration.getUrl(); 
     19                //String xmlSchema = configuration.getSchema(); 
     20//              LoggerPerso.log(GrapheCGI.class, LoggerPerso.DEBUG, "urlcgi="+urlCgi); 
     21                URL url; 
     22                try { 
     23                        url = new URL(urlCgi); 
     24                } catch (MalformedURLException e) { 
     25                        e.printStackTrace(); 
     26                        return "MalformedURLException erreur"; 
     27                } 
     28                config.setServerURL(url); 
     29                XmlRpcClient client = new XmlRpcClient(); 
     30                client.setTransportFactory(new XmlRpcCommonsTransportFactory(client)); 
     31                client.setConfig(config); 
    1832                     
    19                      
    20                     ExtracteurConfig configuration = (ExtracteurConfig) SpringBeanFactory.getXmlFactory().getBean("extracteur"); 
    21                     String urlCgi =  configuration.getUrl(); 
    22                     //String xmlSchema = configuration.getSchema(); 
    23                     LoggerPerso.log(GrapheCGI.class, LoggerPerso.DEBUG, urlCgi); 
    24                     //URL url = new URL("http://zeus/cgi-bin/eccad_extract.cgi"); 
    25                     URL url; 
    26                         try { 
    27                                 url = new URL(urlCgi); 
    28                         } catch (MalformedURLException e) { 
    29                                 e.printStackTrace(); 
    30                                 return "MalformedURLException erreur"; 
    31                         } 
    32                     config.setServerURL(url); 
    33                     //String xmlSchema = "./Schema_ECCAD1.xsd"; 
    34                     XmlRpcClient client = new XmlRpcClient(); 
    35                     client.setTransportFactory(new XmlRpcCommonsTransportFactory(client)); 
    36                     client.setConfig(config);    
    37                     //String requete = "<requete>       <parametre>1</parametre>        <produit>1</produit>    <colormap>-1</colormap> <connexion>     <host>zeus</host>       <dbname>ECCAD2</dbname> <user>wwwadm</user>     </connexion>    <domaine>       <lat-max>20</lat-max>   <lat-min>20</lat-min>   <lon-max>20</lon-max>   <lon-min>20</lon-min>   </domaine>      <temporel>      <begin>2002-11-01</begin>       <end>2003-10-31</end>   </temporel>     <fonction>      <nom>getGraphique</nom> </fonction>     </requete>"; 
    38                      
    39                     String mode = "visu"; 
    40                     Object[] params = new Object[]{requete, mode}; 
    41                     LoggerPerso.log(Extract.class, LoggerPerso.DEBUG, "visu :: \n" + requete); 
    42                     String rslt; 
    43                         try { 
    44                                 rslt = (String) client.execute("extract", params); 
    45                         } catch (XmlRpcException e) { 
    46                                 e.printStackTrace(); 
    47                                 return "XmlRpcException erreur"; 
    48                         } 
    49                     return rslt; 
     33                String mode = "visu"; 
     34                Object[] params = new Object[]{requete, mode}; 
     35                String rslt; 
     36                try { 
     37                        rslt = (String) client.execute("extract", params); 
     38                } catch (XmlRpcException e) { 
     39                        e.printStackTrace(); 
     40                        return "XmlRpcException erreur"; 
     41                } 
     42                return rslt; 
    5043        } 
    5144} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/statistique/ServiceGraphe.java

    r68 r70  
    77import java.io.IOException; 
    88import java.io.OutputStream; 
     9import java.text.DecimalFormat; 
     10import java.text.NumberFormat; 
     11import java.text.ParseException; 
    912import java.text.SimpleDateFormat; 
     13import java.util.ArrayList; 
     14import java.util.Date; 
    1015import java.util.List; 
    11  
    12  
    1316 
    1417import org.jfree.chart.ChartFactory; 
     
    1619import org.jfree.chart.JFreeChart; 
    1720import org.jfree.chart.axis.DateAxis; 
     21import org.jfree.chart.axis.NumberAxis; 
     22import org.jfree.chart.axis.NumberTickUnit; 
    1823import org.jfree.chart.plot.XYPlot; 
    1924import org.jfree.chart.renderer.xy.XYErrorRenderer; 
    20 import org.jfree.data.time.Day; 
     25import org.jfree.data.time.FixedMillisecond; 
    2126import org.jfree.data.time.TimeSeries; 
    2227import org.jfree.data.time.TimeSeriesCollection; 
     
    2833public class ServiceGraphe { 
    2934         
    30         public String genereGraphe(String identifiant, List<Valeur> liste_valeur) { 
     35        public String genereGraphe(String identifiant, List<Valeur> liste_valeur, String param, String produit, String unite, String secteur, String rcp, String alt) { 
    3136                File fichier = new File(Donnees.getHome() + "/images/graphes_temporaires/" + identifiant +"_graphe.png"); 
    3237                OutputStream out = null; 
     
    3439                try { 
    3540                        out = new FileOutputStream(fichier); 
    36                         getGraphe(out, liste_valeur); 
     41                        getGraphe(out, liste_valeur, param, produit, unite, secteur, rcp, alt); 
    3742                } catch (FileNotFoundException e) { 
    38                         LoggerPerso.log(ServiceGraphe.class, LoggerPerso.DEBUG, "erreur d'écriture du graphe", e); 
     43                        LoggerPerso.log(ServiceGraphe.class, LoggerPerso.ERROR, "erreur d'écriture du graphe", e); 
    3944                        return "/"; 
    4045                } catch (IOException e) { 
    41                         LoggerPerso.log(ServiceGraphe.class, LoggerPerso.DEBUG, "erreur d'écriture du graphe", e); 
     46                        LoggerPerso.log(ServiceGraphe.class, LoggerPerso.ERROR, "erreur d'écriture du graphe", e); 
    4247                        return "/"; 
    4348                } 
     
    4651        } 
    4752         
    48         public void getGraphe(OutputStream out, List<Valeur> liste_valeur)  
     53        public void getGraphe(OutputStream out, List<Valeur> liste_valeur, String param, String produit, String unite, String secteur, String rcp, String alt)  
    4954    throws IOException {  
    5055     
    51    // CategoryDataset dataset = new DefaultCategoryDataset();  
    52     TimeSeries time = new TimeSeries("", Day.class); 
     56                // CategoryDataset dataset = new DefaultCategoryDataset();  
     57                TimeSeries time = new TimeSeries(""); 
     58                double min = Double.MAX_VALUE, max = -1; 
     59                DecimalFormat df = new DecimalFormat("0.##E0"); 
     60                try { 
     61                        Date dateVal; 
     62                        String datePrec = ""; 
     63                        ArrayList<Double> vals = new ArrayList<Double>(); 
     64                        int nbGrilles = -1; 
     65                        double val; 
     66                        for (Valeur valeur : liste_valeur) { 
     67                                val = Double.parseDouble(valeur.getValeur()); 
     68                                if (!valeur.getNom().equals(datePrec)) { 
     69                                        nbGrilles++; 
     70                                        vals.add(Double.valueOf(val)); 
     71//                                      val = Double.parseDouble(valeur.getValeur()); 
     72                                } else { 
     73                                        vals.set(nbGrilles, Double.valueOf(vals.get(nbGrilles).doubleValue()+val)); 
     74//                                      val += Double.parseDouble(valeur.getValeur()); 
     75                                } 
     76//                              LoggerPerso.log(ServiceGraphe.class, LoggerPerso.DEBUG, "valeur graphe="+valeur.getValeur()+", nom="+valeur.getNom()+", val="+val+", format="+df.format(val)); 
     77                                dateVal = (new SimpleDateFormat("yyyyMMdd")).parse(valeur.getNom()); 
     78                                time.addOrUpdate(new FixedMillisecond(dateVal),vals.get(nbGrilles).doubleValue()); 
     79                                datePrec = valeur.getNom(); 
     80//                      time.add(new Day(Integer.parseInt(valeur.getNom().substring(6, 8)),  
     81//                                               Integer.parseInt(valeur.getNom().substring(4, 6)),  
     82//                                               Integer.parseInt(valeur.getNom().substring(0, 4))),  
     83//                              Double.parseDouble(valeur.getValeur())); 
     84                        } 
     85                        for (int num = 0; num < vals.size(); num++) { 
     86                                val = vals.get(num).doubleValue(); 
     87                                if (min > val) min = val; 
     88                                if (max < val) max = val; 
     89                        } 
     90                } catch (ParseException e) { 
     91                        e.printStackTrace(); 
     92                } 
    5393     
    54     for (Valeur valeur : liste_valeur) { 
    55          
    56         LoggerPerso.log(ServiceGraphe.class, LoggerPerso.DEBUG, "______________________________________________valeur graphe string "+valeur.getValeur()+" double "+ Double.parseDouble(valeur.getValeur())); 
    57                  
    58          
    59         time.add(new Day(Integer.parseInt(valeur.getNom().substring(6, 8)),  
    60                                                  Integer.parseInt(valeur.getNom().substring(4, 6)),  
    61                                                  Integer.parseInt(valeur.getNom().substring(0, 4))),  
    62                                  Double.parseDouble(valeur.getValeur())); 
    63         } 
    64      
    65   /*time.add(new Day(1, 1, 2000), 10); 
    66    time.add(new Day(2, 1, 2000), 10); 
    67    time.add(new Day(3, 1, 2000), 10); 
    68    time.add(new Day(4, 1, 2000), 10); 
    69    time.add(new Day(5, 1, 2000), 10); 
    70    time.add(new Day(10, 1, 2000), 100); 
    71    time.add(new Day(11, 1, 2000), 100); 
    72    time.add(new Day(12, 1, 2000), 100); 
    73    time.add(new Day(13, 1, 2000), 100); 
    74    time.add(new Day(14, 1, 2000), 100); 
    75    time.add(new Day(15, 1, 2000), 100);*/ 
    76     
    77      
    78    XYDataset dataset = new TimeSeriesCollection(time); 
    79    //dataset.setDomainIsPointsInTime(true); 
    80     JFreeChart barChart = ChartFactory.createTimeSeriesChart("", "",  
    81       "", dataset, false, true, false);  
    82     XYPlot plot = barChart.getXYPlot(); 
    83     DateAxis axis = (DateAxis) plot.getDomainAxis(); 
    84     axis.setDateFormatOverride(new SimpleDateFormat("yyyy-MM-dd")); 
    85     plot.setRenderer(new XYErrorRenderer()); 
    86     plot.getRenderer().setSeriesPaint(0, Color.blue); 
    87      
    88     /*plot.setRenderer(new XYBarRenderer()); 
    89     svgTest(barChart, "XYBarRenderer"); 
    90     plot.setRenderer(new XYStepRenderer()); 
    91     svgTest(barChart, "XYStepRenderer"); 
    92     plot.setRenderer(new ClusteredXYBarRenderer()); 
    93     svgTest(barChart, "ClusteredXYBarRenderer"); 
    94     plot.setRenderer(new CyclicXYItemRenderer()); 
    95         svgTest(barChart, "CyclicXYItemRenderer"); 
    96     plot.setRenderer(new DefaultXYItemRenderer()); 
    97         svgTest(barChart, "DefaultXYItemRenderer"); 
    98     plot.setRenderer(new DeviationRenderer()); 
    99         svgTest(barChart, "DeviationRenderer"); 
    100     plot.setRenderer(new HighLowRenderer()); 
    101         svgTest(barChart, "HighLowRenderer"); 
    102     plot.setRenderer(new StandardXYItemRenderer()); 
    103         svgTest(barChart, "StandardXYItemRenderer"); 
    104     plot.setRenderer(new VectorRenderer()); 
    105         svgTest(barChart, "VectorRenderer"); 
    106     plot.setRenderer(new XYAreaRenderer()); 
    107         svgTest(barChart, "XYAreaRenderer"); 
    108     plot.setRenderer(new XYAreaRenderer2()); 
    109         svgTest(barChart, "XYAreaRenderer2"); 
    110     plot.setRenderer(new XYBarRenderer()); 
    111         svgTest(barChart, "XYBarRenderer"); 
    112     plot.setRenderer(new XYBlockRenderer()); 
    113         svgTest(barChart, "XYBlockRenderer"); 
    114     plot.setRenderer(new XYBubbleRenderer()); 
    115     svgTest(barChart, "XYBubbleRenderer"); 
    116     plot.setRenderer(new XYDifferenceRenderer()); 
    117         svgTest(barChart, "XYDifferenceRenderer"); 
    118     plot.setRenderer(new XYDotRenderer()); 
    119         svgTest(barChart, "XYDotRenderer"); 
    120     plot.setRenderer(new XYErrorRenderer()); 
    121         svgTest(barChart, "XYErrorRenderer"); 
    122     plot.setRenderer(new XYLine3DRenderer()); 
    123         svgTest(barChart, "XYLine3DRenderer"); 
    124     plot.setRenderer(new XYLineAndShapeRenderer()); 
    125         svgTest(barChart, "XYLineAndShapeRenderer"); 
    126     plot.setRenderer(new XYStepAreaRenderer()); 
    127         svgTest(barChart, "XYStepAreaRenderer"); 
    128     plot.setRenderer(new XYStepRenderer()); 
    129         svgTest(barChart, "XYStepRenderer"); 
    130     plot.setRenderer(new YIntervalRenderer()); 
    131     svgTest(barChart, "YIntervalRenderer");*/ 
    132     
    133      
    134     ChartUtilities.writeChartAsPNG(out, barChart, 720, 360); 
    135          
    136          
     94                XYDataset dataset = new TimeSeriesCollection(time); 
     95                //dataset.setDomainIsPointsInTime(true); 
     96                String titre = param; 
     97                if (produit.equals("IPCC")) { 
     98                        titre += ", "+secteur; 
     99                        if (!rcp.equals("None")) { 
     100                                titre += ", RCP "+rcp; 
     101                        } 
     102                } 
     103                titre += " : "+produit; 
     104                if (produit.equals("IPCC") && !alt.equals("0")) { 
     105                        if (alt.equals("Sum")) 
     106                                titre += " (Sum altitude)"; 
     107                        else 
     108                                titre += " ("+alt+" km)"; 
     109                } 
     110                JFreeChart barChart = ChartFactory.createTimeSeriesChart(titre, "Date",  
     111                                unite, dataset, false, true, false); 
     112                XYPlot plot = barChart.getXYPlot(); 
     113                DateAxis axis = (DateAxis) plot.getDomainAxis(); 
     114                axis.setDateFormatOverride(new SimpleDateFormat("yyyy-MM-dd")); 
     115                plot.setRenderer(new XYErrorRenderer()); 
     116                plot.getRenderer().setSeriesPaint(0, Color.blue); 
     117//              if (!unite.equals("pers/km2") && !unite.equals("%") && !unite.equals("km2") && !unite.equals("number of fires")) { 
     118//                      plot.getRangeAxis().setStandardTickUnits(new StandardTickUnitSource()); 
     119//              } 
     120//                      plot.getRangeAxis().setUpperBound(max); 
     121//                      plot.getRangeAxis().setLowerBound(min); 
     122                if (max != -1) { 
     123                        NumberAxis na = (NumberAxis)plot.getRangeAxis(); 
     124                        na.setAutoTickUnitSelection(false); 
     125                        if (max == min && min != 0) { 
     126                                min = 0; 
     127                        } else if (max == min && min == 0) { 
     128                                max = 6; 
     129                        } 
     130                        na.setRangeWithMargins(min-(max-min)/20,max+(max-min)/20); 
     131                        if (!unite.equals("pers/km2") && !unite.equals("%") && !unite.equals("km2") && !unite.equals("number of fires")) { 
     132                                na.setTickUnit(new NumberTickUnit((max-min)/6,df)); 
     133                        } else { 
     134                                na.setTickUnit(new NumberTickUnit((max-min)/6,NumberFormat.getIntegerInstance())); 
     135                        } 
     136                } 
     137//      plot.setBackgroundPaint(Color.white); 
     138 
     139//              plot.setRenderer(new StandardXYItemRenderer( 
     140//                StandardXYItemRenderer.LINES + StandardXYItemRenderer.SHAPES)); 
     141 
     142                /*plot.setRenderer(new XYBarRenderer()); 
     143        svgTest(barChart, "XYBarRenderer"); 
     144        plot.setRenderer(new XYStepRenderer()); 
     145        svgTest(barChart, "XYStepRenderer"); 
     146        plot.setRenderer(new ClusteredXYBarRenderer()); 
     147        svgTest(barChart, "ClusteredXYBarRenderer"); 
     148        plot.setRenderer(new CyclicXYItemRenderer()); 
     149                svgTest(barChart, "CyclicXYItemRenderer"); 
     150        plot.setRenderer(new DefaultXYItemRenderer()); 
     151                svgTest(barChart, "DefaultXYItemRenderer"); 
     152        plot.setRenderer(new DeviationRenderer()); 
     153                svgTest(barChart, "DeviationRenderer"); 
     154        plot.setRenderer(new HighLowRenderer()); 
     155                svgTest(barChart, "HighLowRenderer"); 
     156        plot.setRenderer(new StandardXYItemRenderer()); 
     157                svgTest(barChart, "StandardXYItemRenderer"); 
     158        plot.setRenderer(new VectorRenderer()); 
     159                svgTest(barChart, "VectorRenderer"); 
     160        plot.setRenderer(new XYAreaRenderer()); 
     161                svgTest(barChart, "XYAreaRenderer"); 
     162        plot.setRenderer(new XYAreaRenderer2()); 
     163                svgTest(barChart, "XYAreaRenderer2"); 
     164        plot.setRenderer(new XYBarRenderer()); 
     165                svgTest(barChart, "XYBarRenderer"); 
     166        plot.setRenderer(new XYBlockRenderer()); 
     167                svgTest(barChart, "XYBlockRenderer"); 
     168        plot.setRenderer(new XYBubbleRenderer()); 
     169        svgTest(barChart, "XYBubbleRenderer"); 
     170        plot.setRenderer(new XYDifferenceRenderer()); 
     171                svgTest(barChart, "XYDifferenceRenderer"); 
     172        plot.setRenderer(new XYDotRenderer()); 
     173                svgTest(barChart, "XYDotRenderer"); 
     174        plot.setRenderer(new XYErrorRenderer()); 
     175                svgTest(barChart, "XYErrorRenderer"); 
     176        plot.setRenderer(new XYLine3DRenderer()); 
     177                svgTest(barChart, "XYLine3DRenderer"); 
     178        plot.setRenderer(new XYLineAndShapeRenderer()); 
     179                svgTest(barChart, "XYLineAndShapeRenderer"); 
     180        plot.setRenderer(new XYStepAreaRenderer()); 
     181                svgTest(barChart, "XYStepAreaRenderer"); 
     182        plot.setRenderer(new XYStepRenderer()); 
     183                svgTest(barChart, "XYStepRenderer"); 
     184        plot.setRenderer(new YIntervalRenderer()); 
     185        svgTest(barChart, "YIntervalRenderer");*/ 
     186 
     187                ChartUtilities.writeChartAsPNG(out, barChart, 720, 360); 
    137188        } 
    138189         
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/statistique/ServiceStatistique.java

    r68 r70  
    55import java.util.Map; 
    66 
    7  
    8 import org.medias.eccad.helpers.LoggerPerso; 
    97import org.medias.eccad.helpers.SpringBeanFactory; 
    10 import org.medias.eccad.helpers.XmlHelper; 
    118import org.medias.eccad.metier.generationRaster.GenerateurLegendRaster; 
    129import org.medias.eccad.metier.generationRaster.GenerateurLegendeImg; 
    13 import org.medias.eccad.metier.generationRaster.GenerateurWorldFile; 
    1410import org.medias.eccad.metier.generationRaster.InformationLegend; 
    1511import org.medias.eccad.metier.generationRaster.colorMap.ColorMapping; 
     
    2016import org.medias.eccad.modele.StatReponse; 
    2117import org.medias.eccad.modele.Valeur; 
    22 import org.medias.eccad.modele.Zone; 
    2318import org.medias.eccad.persistance.dao.ColorTabDAO; 
    2419import org.medias.eccad.persistance.exception.PersistanceException; 
     
    3530        } 
    3631         
    37         public StatReponse getCarteStat(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, String fonction, String id_unique) { 
    38                 String xml = traducteur.encodeCritere(criteres, id_param, id_produit, id_colormap, fonction); 
    39                  
     32        public StatReponse getCarteStat(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, long id_classdis, long id_secteur, long id_rcp, String alt, String fonction, long maskId) { 
     33                String xml = traducteur.encodeCritere(criteres, id_param, id_produit, id_colormap, id_classdis, id_secteur, id_rcp, alt, fonction, maskId); 
     34 
    4035                // TODO: ici modifier pour prendre en compte la librairie de jean-luc 
    4136                //RasterDAO rasterdao = new RasterDAO(); 
    4237                GrapheCGI rasterdao = new GrapheCGI(); 
    43                 ////system.out.println(xml); 
     38 
    4439                reponse = decodeReponse(rasterdao.getStatistique(xml)); 
    4540                if (reponse.getError() != null && !reponse.getError().equals("")) 
    4641                        return null; 
    4742                 
    48                 GenerateurWorldFile gen_worldfile = (GenerateurWorldFile) xmlbean.getBean("worldfile"); 
    49                 gen_worldfile.setPasX(reponse.getCarte().getPasX()); 
    50                 gen_worldfile.setPasY(reponse.getCarte().getPasY()); 
    51                 gen_worldfile.setPixelY(reponse.getZone().getNorthbc() - (reponse.getCarte().getPasY()/2)); 
    52                 gen_worldfile.setPixelX(reponse.getZone().getWestbc() + (reponse.getCarte().getPasY()/2)); 
     43//              GenerateurWorldFile gen_worldfile = (GenerateurWorldFile) xmlbean.getBean("worldfile"); 
     44//              gen_worldfile.setPasX(reponse.getCarte().getPasX()); 
     45//              gen_worldfile.setPasY(reponse.getCarte().getPasY()); 
     46//              gen_worldfile.setPixelY(reponse.getZone().getNorthbc() - (reponse.getCarte().getPasY()/2)); 
     47//              gen_worldfile.setPixelX(reponse.getZone().getWestbc() + (reponse.getCarte().getPasX()/2)); 
    5348                 
    54                  
    55                 String nom = reponse.getUrlImage(); 
    56                  
    57                 nom = nom.substring(0, nom.length()-4); 
    58                 gen_worldfile.writeWorldFile(nom); 
    59                  
    60                 ////system.out.println(stat.getUrlImage()); 
    61                 //return reponse.getUrlImage();  
     49//              String nom = reponse.getUrlImage(); 
     50 
     51//              nom = nom.substring(0, nom.length()-4); 
     52//              gen_worldfile.writeWorldFile(nom); 
     53 
     54                //return reponse.getUrlImage(); 
    6255                return reponse; 
    6356        } 
    6457         
    65         public String getLegend(String fichier, long id_colormap, long id_grille) { 
    66                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "retour getLegend " + reponse.getMaximal() +" " + reponse.getMinimal()); 
    67                 ColorMapping colormap = getColorMap(id_colormap); 
     58        public String getLegend(String fichier, long id_colormap, long id_classdis, long id_grille, String fonction) { 
     59//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "retour getLegend " + reponse.getMaximal() + " " + reponse.getMinimal()); 
     60                ColorMapping colormap = getColorMap(id_colormap,id_classdis); 
    6861                InformationLegend info_legend = new InformationLegend(); 
    6962                GenerateurLegendRaster gen_legend = new GenerateurLegendeImg(); 
    70                  
    71                 gen_legend.genereLegendVertical(colormap, info_legend.getLegendDynamic(colormap.getColorTable(), reponse.getMaximal(), reponse.getMinimal()), info_legend.getInfoSup(id_grille)); 
     63 
     64                gen_legend.genereLegendVertical(colormap, info_legend.getLegendDynamic(colormap.getColorTable(), reponse.getMaximal(), reponse.getMinimal()), info_legend.getInfoSup(id_grille,fonction)); 
    7265                gen_legend.enregistreLegend(fichier+".legend.png"); 
    73                  
     66 
    7467                return fichier+".legend.png"; 
    7568        } 
    76          
    77         public ResultatStat getStatistique(Map<String, String> criteres, long id_param, long id_produit, String fonction) { 
     69 
     70        public ResultatStat getStatistique(Map<String, String> criteres, long id_param, long id_produit, long id_secteur, long id_rcp, String alt, String type, String fonction) { 
    7871                //RasterDAO rasterdao = new RasterDAO(); 
    7972                GrapheCGI rasterdao = new GrapheCGI(); 
    80                 String xml = traducteur.encodeCritere(criteres, id_param, id_produit, new Long(-1), fonction); 
    81                 //system.out.println(xml); 
    82                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, ""); 
     73                String xml = traducteur.encodeCritere(criteres, id_param, id_produit, -1, -1, id_secteur, id_rcp, alt, fonction, 0); 
    8374                reponse = decodeReponse(rasterdao.getStatistique(xml)); 
    8475                if (reponse == null) 
    85                         return new ResultatStat("0", "0", "0", "0", "0"); 
     76                        return new ResultatStat("0", "0", "0", "0", "0",type); 
    8677                Map<String, String> map = reponse.getStatistique(); 
    87                 return new ResultatStat(map.get("min"), map.get("max"), map.get("moyenne"), map.get("ecartType"), map.get("somme")); 
     78                return new ResultatStat(map.get("min"), map.get("max"), map.get("moyenne"), map.get("ecartType"), map.get("somme"),type); 
    8879        } 
    89          
    90         public String getGraphe(String identifiant, Map<String, String> criteres, long id_param, long id_produit, String fonction) { 
     80 
     81        public String getGraphe(String identifiant, Map<String, String> criteres, long id_param, long id_produit, long id_secteur, long id_rcp, String alt, String param, String produit, String unite, String secteur, String rcp, String fonction) { 
    9182                //RasterDAO rasterdao = new RasterDAO(); 
    9283                GrapheCGI rasterdao = new GrapheCGI(); 
    93                 String xml = traducteur.encodeCritere(criteres, id_param, id_produit, new Long(-1), fonction); 
    94                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "xml ::\n" + xml); 
     84                String xml = traducteur.encodeCritere(criteres, id_param, id_produit, -1, -1, id_secteur, id_rcp, alt, fonction, 0); 
     85//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "xml ::\n" + xml); 
    9586                String str_reponse = rasterdao.getStatistique(xml); 
    96                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "reception OK"); 
     87//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "str_reponse ::\n" + str_reponse); 
    9788                reponse = decodeReponse(str_reponse); 
    98                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "decodage OK"); 
    9989                List<Valeur> graphe; 
    10090                if (reponse == null) 
     
    10292                else 
    10393                        graphe = reponse.getGraphe(); 
    104                  
    105                 return new ServiceGraphe().genereGraphe(identifiant, graphe); 
     94 
     95                return new ServiceGraphe().genereGraphe(identifiant, graphe, param, produit, unite, secteur, rcp, alt); 
    10696        } 
    107          
    108          
    109          
     97 
    11098        public StatReponse decodeReponse(String reponse_xml) { 
    11199                reponse = traducteur.getReponse(reponse_xml); 
    112                  
     100 
    113101                if (reponse.getError() != null && !reponse.getError().equals("")) 
    114102                        return null; 
    115103                return reponse; 
    116104        } 
    117          
     105 
    118106        /** 
    119107         * Interroge la base de données pour obtenir la table de couleur de la grille 
     
    122110         * @return la table de couleur par défaut 
    123111         */ 
    124         private ColorMapping getColorMap(long colormapid) { 
     112        private ColorMapping getColorMap(long colormapid, long classdisid) { 
    125113                ColorTabDAO colorDAO = (ColorTabDAO) xmlbean.getBean("colorTabDAO"); 
    126                  
     114 
    127115                ColorTab colortab = null; 
    128                  
     116 
    129117                try { 
    130                         colortab = colorDAO.getColorMapByID(colormapid); 
     118                        colortab = colorDAO.getColorMapByID(colormapid,classdisid); 
    131119                } catch (PersistanceException e) { 
    132120                        e.printStackTrace(); 
    133121                } 
    134                  
     122 
    135123                ColorMapping colormap = new ColorMappingLineaire(); 
    136124                colormap.setColorTable(colortab); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/test/TestServiceCarte.java

    r68 r70  
    99        private ServiceCarte serv_carte; 
    1010        private Zone zone_affiche; 
    11         private Zone zone_selection; 
     11//      private Zone zone_selection; 
    1212         
    1313         
     
    1616                 serv_carte = new ServiceCarte(); 
    1717                 zone_affiche = new Zone(45.0, -45.0, 90, -90); 
    18                  zone_selection = new Zone(90.0, -90.0, 180, -180); 
     18//               zone_selection = new Zone(90.0, -90.0, 180, -180); 
    1919        } 
    2020 
    2121        public void testGetCarte() { 
    22                 String nom_image = serv_carte.getCarte( 1, 32, zone_affiche ,"_test_carte_").getUrlImage(); 
     22                String nom_image = serv_carte.getCarte( 1, 32, -1, zone_affiche ,"_test_carte_",null,0,false,false,0).getUrlImage(); 
    2323                assertEquals("/images/cartes_temporaires/_test_carte__1_32.png", nom_image); 
    2424        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/test/TestServiceEmission.java

    r68 r70  
    11package org.medias.eccad.metier.test; 
    22 
    3 import org.medias.eccad.metier.emission.ServiceEmission; 
    43import org.medias.eccad.modele.RequeteFacteurEmission; 
    54import org.medias.eccad.modele.Zone; 
     
    1514 
    1615        public void testGetCarte() { 
    17                 ServiceEmission service = new ServiceEmission(); 
     16//              ServiceEmission service = new ServiceEmission(); 
    1817                RequeteFacteurEmission requete = new RequeteFacteurEmission(); 
    1918                requete.setParamBurnt(new Long(5)); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/test/TestStatistique.java

    r68 r70  
    2727                 
    2828                ServiceStatistique service = new ServiceStatistique(); 
    29                 service.getCarteStat(map, 1, 2, 3, "moyenneCarte", "id_unique"); 
    30                 String retour = "<requete>\n<parametre>1</parametre>\n<produit>2</produit>\n<colormap>3</colormap>\n<connexion>\n<host>zeus</host>\n<dbname>ECCAD2</dbname>\n<user>wwwadm</user>\n</connexion>\n<domaine>\n<lat-max>90.0</lat-max>\n<lat-min>-90.0</lat-min>\n<lon-max>180.0</lon-max>\n<lon-min>-180.0</lon-min>\n</domaine>\n<temporel>\n<begin>1970-01-01</begin>\n<end>1999-12-31</end>\n</temporel>\n<fonction>\n<name>moyenneCarte</name>\n</fonction>\n</requete>\n";     
     29                service.getCarteStat(map, 1, 2, 3, 4, 5, 6, null, "moyenneCarte",0); 
     30//              String retour = "<requete>\n<parametre>1</parametre>\n<produit>2</produit>\n<colormap>3</colormap>\n<connexion>\n<host>zeus</host>\n<dbname>ECCAD2</dbname>\n<user>wwwadm</user>\n</connexion>\n<domaine>\n<lat-max>90.0</lat-max>\n<lat-min>-90.0</lat-min>\n<lon-max>180.0</lon-max>\n<lon-min>-180.0</lon-min>\n</domaine>\n<temporel>\n<begin>1970-01-01</begin>\n<end>1999-12-31</end>\n</temporel>\n<fonction>\n<name>moyenneCarte</name>\n</fonction>\n</requete>\n";     
    3131//              <requete><parametre>3</parametre><produit>4</produit><colormap>23</colormap><connexion><host>zeus</host><dbname>ECCAD2INT</dbname><user>wwwadm</user></connexion><domaine><lat-max>90.0</lat-max><lat-min>-90.0</lat-min><lon-max>180.0</lon-max><lon-min>-180.0</lon-min></domaine><temporel><begin>2005-01-01</begin><end>2015-01-01</end></temporel><fonction><name>moyenneCarte</name></fonction></requete> 
    3232                //assertEquals(retour, service.encodeCritere(map,1, 2, new Long(3), "moyenneCarte")); 
     
    3737                RasterDAO rasterdao = new RasterDAO(); 
    3838                 
    39                 String retour = "<requete>\n<parametre>1</parametre>\n<produit>2</produit>\n<colormap>3</colormap>\n<connexion>\n<host>zeus</host>\n<dbname>ECCAD2</dbname>\n<user>wwwadm</user>\n</connexion>\n<domaine>\n<lat-max>90.0</lat-max>\n<lat-min>-90.0</lat-min>\n<lon-max>180.0</lon-max>\n<lon-min>-180.0</lon-min>\n</domaine>\n<temporel>\n<begin>1970-01-01</begin>\n<end>1999-12-31</end>\n</temporel>\n<fonction>\n<name>moyenneCarte</name>\n</fonction>\n</requete>\n";     
     39//              String retour = "<requete>\n<parametre>1</parametre>\n<produit>2</produit>\n<colormap>3</colormap>\n<connexion>\n<host>zeus</host>\n<dbname>ECCAD2</dbname>\n<user>wwwadm</user>\n</connexion>\n<domaine>\n<lat-max>90.0</lat-max>\n<lat-min>-90.0</lat-min>\n<lon-max>180.0</lon-max>\n<lon-min>-180.0</lon-min>\n</domaine>\n<temporel>\n<begin>1970-01-01</begin>\n<end>1999-12-31</end>\n</temporel>\n<fonction>\n<name>moyenneCarte</name>\n</fonction>\n</requete>\n";     
    4040                //String xml = "<requete><parametre>3</parametre><produit>5</produit><colormap>32</colormap><connexion><host>zeus</host><dbname>ECCAD2</dbname><user>wwwadm</user></connexion><domaine><lat-max>90.0</lat-max><lat-min>-90.0</lat-min><lon-max>180.0</lon-max><lon-min>-180.0</lon-min></domaine><temporel><begin>1900-01-01</begin><end>2015-01-01</end></temporel><fonction><nom>moyenneCarte</nom></fonction></requete>"; 
    4141                String xml = "<requete><parametre>3</parametre><produit>18</produit><colormap>32</colormap><connexion><host>zeus</host><dbname>ECCAD2</dbname><user>wwwadm</user></connexion><domaine><lat-max>24</lat-max><lat-min>24</lat-min><lon-max>84</lon-max><lon-min>84</lon-min></domaine><temporel><begin>1900-01-01</begin><end>2015-01-01</end></temporel><fonction><nom>getStatistique</nom></fonction></requete>"; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/test/TimeSeriesDemo.java

    r68 r70  
    5151import org.jfree.chart.renderer.xy.StandardXYItemRenderer; 
    5252import org.jfree.chart.renderer.xy.XYItemRenderer; 
    53 import org.jfree.data.time.Day; 
    54 import org.jfree.data.time.Month; 
    55 import org.jfree.data.time.TimeSeries; 
    5653import org.jfree.data.time.TimeSeriesCollection; 
    5754import org.jfree.data.xy.XYDataset; 
     
    6865 
    6966    /** 
     67         *  
     68         */ 
     69        private static final long serialVersionUID = 1L; 
     70 
     71        /** 
    7072     * A demonstration application showing how to create a simple time series chart.  This 
    7173     * example uses monthly data. 
     
    118120        XYItemRenderer renderer = plot.getRenderer(); 
    119121        if (renderer instanceof StandardXYItemRenderer) { 
    120             StandardXYItemRenderer rr = (StandardXYItemRenderer) renderer; 
     122//            StandardXYItemRenderer rr = (StandardXYItemRenderer) renderer; 
    121123            //rr.setPlotShapes(true); 
    122             rr.setShapesFilled(true); 
    123             rr.setItemLabelsVisible(true); 
     124//            rr.setShapesFilled(true); 
     125//            rr.setItemLabelsVisible(true); 
    124126        } 
    125127         
     
    149151    private XYDataset createDataset() { 
    150152 
    151         TimeSeries s1 = new TimeSeries("L&G European Index Trust", Day.class); 
    152         s1.add(new Day(2, 1, 2001), 181.8); 
    153         s1.add(new Day(3, 1, 2001), 167.3); 
    154         s1.add(new Day(4, 1, 2001), 153.8); 
    155         s1.add(new Day(5, 1, 2001), 167.6); 
    156         s1.add(new Day(6, 1, 2001), 158.8); 
    157         s1.add(new Day(7, 1, 2001), 148.3); 
    158         s1.add(new Day(8, 1, 2001), 153.9); 
    159         s1.add(new Day(9, 1, 2001), 142.7); 
    160         s1.add(new Day(10, 1, 2001), 123.2); 
    161         s1.add(new Day(11, 1, 2001), 131.8); 
    162         s1.add(new Day(12, 1, 2001), 139.6); 
    163         s1.add(new Day(13, 1, 2001), 142.9); 
    164         s1.add(new Day(14, 1, 2001), 138.7); 
    165         s1.add(new Day(15, 1, 2001), 137.3); 
    166         s1.add(new Day(16, 1, 2001), 143.9); 
    167         s1.add(new Day(17, 1, 2001), 139.8); 
    168         s1.add(new Day(18, 1, 2001), 137.0); 
    169         s1.add(new Day(19, 1, 2001), 132.8); 
     153//        TimeSeries s1 = new TimeSeries("L&G European Index Trust", Day.class); 
     154//        s1.add(new Day(2, 1, 2001), 181.8); 
     155//        s1.add(new Day(3, 1, 2001), 167.3); 
     156//        s1.add(new Day(4, 1, 2001), 153.8); 
     157//        s1.add(new Day(5, 1, 2001), 167.6); 
     158//        s1.add(new Day(6, 1, 2001), 158.8); 
     159//        s1.add(new Day(7, 1, 2001), 148.3); 
     160//        s1.add(new Day(8, 1, 2001), 153.9); 
     161//        s1.add(new Day(9, 1, 2001), 142.7); 
     162//        s1.add(new Day(10, 1, 2001), 123.2); 
     163//        s1.add(new Day(11, 1, 2001), 131.8); 
     164//        s1.add(new Day(12, 1, 2001), 139.6); 
     165//        s1.add(new Day(13, 1, 2001), 142.9); 
     166//        s1.add(new Day(14, 1, 2001), 138.7); 
     167//        s1.add(new Day(15, 1, 2001), 137.3); 
     168//        s1.add(new Day(16, 1, 2001), 143.9); 
     169//        s1.add(new Day(17, 1, 2001), 139.8); 
     170//        s1.add(new Day(18, 1, 2001), 137.0); 
     171//        s1.add(new Day(19, 1, 2001), 132.8); 
    170172 
    171173 
    172174        TimeSeriesCollection dataset = new TimeSeriesCollection(); 
    173         dataset.addSeries(s1); 
     175//        dataset.addSeries(s1); 
    174176 
    175         dataset.setDomainIsPointsInTime(true); 
     177//        dataset.setDomainIsPointsInTime(true); 
    176178 
    177179        return dataset; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/traducteur/TraducteurStat.java

    r68 r70  
    66import java.util.List; 
    77import java.util.Map; 
    8 import java.util.logging.Logger; 
    9  
    108 
    119import org.dom4j.Document; 
     
    2422public class TraducteurStat { 
    2523        XmlBeanFactory xmlbean; 
    26          
     24 
    2725        public TraducteurStat() { 
    2826                xmlbean = SpringBeanFactory.getXmlFactory(); 
    2927        } 
    30          
    31         public String encodeCritere(Map<String, String> criteres, long id_param, long id_produit, Long id_colormap, String fonction) { 
    32                 return encodeCritere(criteres, id_param, id_produit, id_colormap, fonction, null); 
     28 
     29        public String encodeCritere(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, long id_classdis, long id_secteur, long id_rcp, String alt, String fonction, long id_mask) { 
     30                return encodeCritere(criteres, id_param, id_produit, id_colormap, id_classdis, id_secteur, id_rcp, alt, fonction, null, id_mask); 
    3331        } 
    34          
    35         public String encodeCritere(Map<String, String> criteres, long id_param, long id_produit, Long id_colormap, String fonction, Long id_grille) { 
     32 
     33        public String encodeCritere(Map<String, String> criteres, long id_param, long id_produit, long id_colormap, long id_classdis, long id_secteur, long id_rcp, String alt, String fonction, Long id_grille, long id_mask) { 
    3634                String xml = new String(); 
    3735                InfoConnectBean infoconnect = (InfoConnectBean) xmlbean.getBean("infoConnect"); 
    38                  
     36 
    3937                xml = "<requete>\n"; 
    40                  
     38 
    4139                xml += XmlHelper.createNode("parametre", id_param); 
    4240                xml += XmlHelper.createNode("produit", id_produit); 
    4341                xml += XmlHelper.createNode("colormap", id_colormap); 
    44                  
     42                xml += XmlHelper.createNode("scalevalue", id_classdis); 
     43                xml += XmlHelper.createNode("secteur", id_secteur); 
     44                xml += XmlHelper.createNode("rcp", id_rcp); 
     45                if (alt == null || alt.equals("")) alt = "0"; 
     46                xml += XmlHelper.createNode("alt", alt); 
     47                xml += XmlHelper.createNode("mask", id_mask); 
     48 
    4549                xml += "<connexion>\n"; 
    4650                xml += XmlHelper.createNode("host", infoconnect.getDb_url()); 
     
    4852                xml += XmlHelper.createNode("user", infoconnect.getDb_login()); 
    4953                xml += "</connexion>\n"; 
    50                  
     54 
    5155                xml += "<domaine>\n"; 
    5256                xml += XmlHelper.createNode("lat-max", getValeur("lat-max", criteres)); 
     
    5559                xml += XmlHelper.createNode("lon-min", getValeur("lon-min", criteres)); 
    5660                xml += "</domaine>\n"; 
    57                  
     61 
    5862                xml += "<temporel>\n"; 
    5963                xml += XmlHelper.createNode("begin", getValeur("beg-date", criteres)); 
    6064                xml += XmlHelper.createNode("end", getValeur("end-date", criteres)); 
    6165                xml += "</temporel>\n"; 
    62                  
     66 
    6367                xml += "<fonction>\n"; 
    6468                xml += XmlHelper.createNode("nom", fonction); 
     
    7276                } 
    7377                xml += "</fonction>\n"; 
    74                  
    75                  
     78 
    7679                xml += "</requete>\n"; 
    77                 //system.out.println(xml); 
     80//              System.out.println(xml); 
    7881                return xml; 
    7982        } 
    80          
     83 
    8184        private String getValeur(String critere, Map<String, String> criteres) { 
    8285                String valeur = criteres.get(critere); 
     
    8588                return valeur; 
    8689        } 
    87          
     90 
    8891        public StatReponse getReponse(String xml) { 
    89                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "getXMLtoDocument"); 
    90                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "getXMLtoDocument + " + xml + "\n mon xml"); 
    9192                Document doc = null; 
    9293                try { 
    93                         LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "getXMLtoDocument :: " + xml.getBytes("ISO-8859-1").length); 
    94                  
    95                 doc = XmlHelper.getXMLtoDocument(new ByteArrayInputStream(xml.getBytes("ISO-8859-1")), null); 
    96                 } 
    97                 catch (Exception e) { 
     94                        doc = XmlHelper.getXMLtoDocument(new ByteArrayInputStream(xml.getBytes("ISO-8859-1")), null); 
     95                } catch (Exception e) { 
    9896                        LoggerPerso.log(TraducteurStat.class, LoggerPerso.ERROR, "erreur encodage"); 
    9997                } 
    100                  
    101                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "getXMLtoDocument ok : " + xml); 
     98 
     99//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "getXMLtoDocument=\n" + xml); 
    102100                String erreur = getError(doc); 
    103                  
     101 
    104102                if (erreur != null) 
    105103                        return new StatReponse(erreur); 
    106                  
    107                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse zone"); 
     104 
    108105                Zone zone = new Zone(Double.parseDouble(getValue(doc, "//domaine/lat-max")), 
    109106                                                         Double.parseDouble(getValue(doc, "//domaine/lat-min")), 
    110107                                                         Double.parseDouble(getValue(doc, "//domaine/lon-max")), 
    111108                                                         Double.parseDouble(getValue(doc, "//domaine/lon-min"))); 
    112                  
    113                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse zone ok"); 
     109 
     110//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse zone ok"); 
    114111                Temporel tempo = new Temporel(getValue(doc, "//temporel/begin"), getValue(doc, "//temporel/end")); 
    115                  
    116                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse url"); 
     112 
     113//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse url"); 
    117114                String url = getValue(doc, "//image-path"); 
    118115                InfoCarte info = null; 
    119                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse info"); 
     116//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse info"); 
    120117                if (!getValue(doc, "//pas/pas-lon").equals("") || !getValue(doc, "//pas/pas-lat").equals("")) 
    121                         info = new InfoCarte(Double.parseDouble(getValue(doc, "//pas/pas-lon")), Double.parseDouble(getValue(doc, "//pas/pas-lat")));            
    122                  
    123                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse variable"); 
     118                        info = new InfoCarte(Double.parseDouble(getValue(doc, "//pas/pas-lon")), Double.parseDouble(getValue(doc, "//pas/pas-lat"))); 
     119 
     120//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "parse variable"); 
    124121                Map<String, String> map = getMapValue(doc, "//statistique/variable", "nom", "valeur"); 
    125                  
    126                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "recuperation liste point"); 
    127                 List<Valeur> graphe     = getListValue(doc, "//graphe/point", "x", "y"); 
    128                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "recuperation liste point ok"); 
     122 
     123//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "recuperation liste point"); 
     124                List<Valeur> graphe = getListValue(doc, "//graphe/point", "x", "y"); 
     125//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "recuperation liste point ok"); 
    129126                Float min = getFloatValue(doc, "//extremes/mini"); 
    130127                Float max = getFloatValue(doc, "//extremes/maxi"); 
    131                 LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "recuperation min max " + min + " : " + max); 
     128//              LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "recuperation min max " + min + " : " + max); 
    132129                StatReponse reponse = new StatReponse(zone, tempo, info, url, map, graphe); 
    133130                reponse.setMaximal(max); 
    134131                reponse.setMinimal(min); 
    135                  
     132 
    136133                Float centerValue = getFloatValue(doc, "//center/center-value"); 
    137134                reponse.setCenter(centerValue); 
    138                  
     135 
    139136                Float centerLat = getFloatValue(doc, "//center/center-lat"); 
    140137                reponse.setCenterLat(centerLat); 
    141                  
     138 
    142139                Float centerLon = getFloatValue(doc, "//center/center-lon"); 
    143140                reponse.setCenterLon(centerLon); 
    144141                 
     142                Float globalSum = getFloatValue(doc, "//total"); 
     143                reponse.setGlobalSum(globalSum); 
    145144                return reponse; 
    146145        } 
    147          
     146 
    148147        private String getError(Document doc) { 
    149                 Node noeud = doc.selectSingleNode("//error"); 
     148                Node noeud = (doc==null?null:doc.selectSingleNode("//error")); 
    150149                if (noeud == null) 
    151150                        return null; 
     
    153152                        return noeud.getText(); 
    154153        } 
    155          
     154 
    156155        private Map<String, String> getMapValue(Document doc, String xpath, String nom, String valeur) { 
    157                 List liste_node = doc.selectNodes(xpath); 
     156                List<?> liste_node = doc.selectNodes(xpath); 
    158157                Map<String, String> map = new HashMap<String, String>(); 
    159                  
     158 
    160159                for (Object onode : liste_node) { 
    161160                        map.put(((Node)onode).selectSingleNode("./" + nom).getText(), ((Node)onode).selectSingleNode("./" + valeur).getText()); 
    162161                } 
    163                 ////system.out.println(map); 
    164162                return map; 
    165163        } 
    166          
     164 
    167165        private List<Valeur> getListValue(Document doc, String xpath, String nom, String valeur) { 
    168                 List liste_node = doc.selectNodes(xpath); 
     166                List<?> liste_node = doc.selectNodes(xpath); 
    169167                List<Valeur> liste = new LinkedList<Valeur>(); 
    170                  
     168 
    171169                for (Object onode : liste_node) { 
    172                         //LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "node en cours" + onode.toString()); 
     170//                      LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "nom=" + (((Node)onode).selectSingleNode("./" + nom).getText())+", val="+(((Node)onode).selectSingleNode("./" + valeur).getText())); 
    173171                        liste.add(new Valeur(((Node)onode).selectSingleNode("./" + nom).getText(), ((Node)onode).selectSingleNode("./" + valeur).getText())); 
    174172                } 
    175                 ////system.out.println(liste); 
    176173                return liste; 
    177174        } 
    178          
     175 
    179176        private String getValue(Document doc, String xpath) { 
    180                 Node noeud = doc.selectSingleNode(xpath); 
    181                  
     177                Node noeud = (doc==null?null:doc.selectSingleNode(xpath)); 
     178 
    182179                if (noeud == null) { 
    183                         LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "pas de valeur pour : " + xpath); 
     180//                      LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "pas de valeur pour : " + xpath); 
    184181                        return ""; 
    185182                } 
    186                  
     183 
    187184                return noeud.getText(); 
    188185        } 
    189          
     186 
    190187        private Float getFloatValue(Document doc, String xpath) { 
    191188                Node noeud = doc.selectSingleNode(xpath); 
    192                  
     189 
    193190                if (noeud == null) { 
    194                         LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "pas de valeur pour : " + xpath); 
     191//                      LoggerPerso.log(TraducteurStat.class, LoggerPerso.DEBUG, "pas de valeur pour : " + xpath); 
    195192                        return new Float(0.0); 
    196193                } 
    197                  
     194 
    198195                return Float.parseFloat(noeud.getText()); 
    199196        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/traducteur/TraducteurVisu.java

    r68 r70  
    88 
    99public interface TraducteurVisu { 
    10         public List<SelectItem> getListGrille(List<Grille> liste); 
     10        public List<SelectItem> getListGrille(List<Grille> liste, String delta, String nomProd); 
    1111} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/traducteur/TraducteurVisuMultiplan.java

    r68 r70  
    66import javax.faces.model.SelectItem; 
    77 
    8  
    9 import org.medias.eccad.helpers.LoggerPerso; 
    108import org.medias.eccad.modele.Grille; 
    119 
    1210public class TraducteurVisuMultiplan implements TraducteurVisu { 
    1311         
    14         public List<SelectItem> getListGrille(List<Grille> liste) { 
     12        public List<SelectItem> getListGrille(List<Grille> liste, String delta, String nomProd) { 
    1513                List<SelectItem> liste_grille = new LinkedList<SelectItem>(); 
    16                 LoggerPerso.log(TraducteurVisu.class, LoggerPerso.DEBUG, "traducteur visu multiplan :: getListGrille " + liste_grille.size()); 
     14//              LoggerPerso.log(TraducteurVisu.class, LoggerPerso.DEBUG, "traducteur visu multiplan :: getListGrille " + liste_grille.size()); 
    1715                for (Grille grille : liste) { 
    1816                        if (grille.getLegend() == null) 
    1917                                grille.setLegend(""); 
     18                        else if (grille.getLegend().equals("Water")) { 
     19                                if (nomProd.indexOf("Country") != -1) 
     20                                        grille.setLegend("All countries"); 
     21                                else if (nomProd.indexOf("Region") != -1) 
     22                                        grille.setLegend("All regions"); 
     23                        } 
    2024                        liste_grille.add(new SelectItem(new Long(grille.getId_grille()), grille.getLegend())); 
    2125                } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/metier/traducteur/TraducteurVisuTemporel.java

    r68 r70  
    66import javax.faces.model.SelectItem; 
    77 
    8  
    9 import org.medias.eccad.helpers.LoggerPerso; 
    108import org.medias.eccad.modele.Grille; 
    119 
    1210public class TraducteurVisuTemporel implements TraducteurVisu { 
    1311 
    14         public List<SelectItem> getListGrille(List<Grille> liste) { 
     12        public List<SelectItem> getListGrille(List<Grille> liste, String delta, String nomProd) { 
    1513                List<SelectItem> liste_grille = new LinkedList<SelectItem>(); 
    16                 LoggerPerso.log(TraducteurVisu.class, LoggerPerso.DEBUG, "traducteur visu temporel :: getListGrille"); 
     14//              LoggerPerso.log(TraducteurVisu.class, LoggerPerso.DEBUG, "traducteur visu temporel :: getListGrille"); 
    1715                for (Grille grille : liste) { 
    18                         liste_grille.add(new SelectItem(new Long(grille.getId_grille()), grille.getDate().toString())); 
     16                        if (delta != null && delta.equals("1 mon")) { 
     17                                liste_grille.add(new SelectItem(new Long(grille.getId_grille()), grille.getDate().toString().substring(0,7))); 
     18                        } else if (delta != null && delta.equals("1 year")) { 
     19                                liste_grille.add(new SelectItem(new Long(grille.getId_grille()), grille.getDate().toString().substring(0,4))); 
     20                        } else { 
     21                                liste_grille.add(new SelectItem(new Long(grille.getId_grille()), grille.getDate().toString())); 
     22                        } 
    1923                } 
    2024                 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/modele/Grille.java

    r68 r70  
    22 
    33import java.sql.Date; 
     4import java.util.Comparator; 
    45 
    56public class Grille { 
     
    910        private long id_param; 
    1011        private long id_produit; 
     12        private long id_secteur; 
     13        private long id_rcp; 
     14        private int number_code; 
    1115         
    1216        public Grille() { 
     
    2024        } 
    2125         
    22         public Grille(long id_grille, Date date, String legend) { 
     26        public Grille(long id_grille, Date date, String legend, int numberCode) { 
    2327                super(); 
    2428                this.id_grille = id_grille; 
    2529                this.date = date; 
    2630                this.legend = legend; 
     31                this.number_code = numberCode; 
    2732        } 
    2833        public Date getDate() { 
     
    6570                this.id_produit = id_produit; 
    6671        } 
     72 
     73        public long getId_secteur() { 
     74                return id_secteur; 
     75        } 
     76 
     77        public void setId_secteur(long idSecteur) { 
     78                id_secteur = idSecteur; 
     79        } 
     80 
     81        public long getId_rcp() { 
     82                return id_rcp; 
     83        } 
     84 
     85        public void setId_rcp(long idRcp) { 
     86                id_rcp = idRcp; 
     87        } 
     88 
     89        public int getNumber_code() { 
     90                return number_code; 
     91        } 
     92 
     93        public void setNumber_code(int numberCode) { 
     94                number_code = numberCode; 
     95        } 
     96         
     97    public class ComparatorNumberCode implements Comparator<Grille>{ 
     98        public int compare(Grille g1, Grille g2){ 
     99            return new Integer(g1.getNumber_code()).compareTo(new Integer(g2.getNumber_code())); 
     100        } 
     101    } 
     102 
    67103} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/modele/Parametre.java

    r68 r70  
    77        private String unite; 
    88        private String order; 
     9        private int colormapDefault; 
     10        private int classdisDefault; 
    911         
    1012        public Parametre(int identifiant, String nom) { 
     
    5254                this.order = order; 
    5355        } 
    54          
    55          
     56 
     57        public int getColormapDefault() { 
     58                return colormapDefault; 
     59        } 
     60 
     61        public void setColormapDefault(int colormapDefault) { 
     62                this.colormapDefault = colormapDefault; 
     63        } 
     64 
     65        public int getClassdisDefault() { 
     66                return classdisDefault; 
     67        } 
     68 
     69        public void setClassdisDefault(int classdisDefault) { 
     70                this.classdisDefault = classdisDefault; 
     71        } 
    5672} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/modele/Produit.java

    r68 r70  
    1212        private String temporalres; 
    1313        private String type; 
     14        private String citation; 
     15        private String useconst; 
     16        private String informpub; 
    1417         
    1518        public Date getBeginDate() { 
     
    9598                this.type = type; 
    9699        } 
     100 
     101        public String getCitation() { 
     102                return citation; 
     103        } 
     104 
     105        public void setCitation(String citation) { 
     106                this.citation = citation; 
     107        } 
     108 
     109        public String getUseconst() { 
     110                return useconst; 
     111        } 
     112 
     113        public void setUseconst(String useconst) { 
     114                this.useconst = useconst; 
     115        } 
     116 
     117        public String getInformpub() { 
     118                return informpub; 
     119        } 
     120 
     121        public void setInformpub(String informpub) { 
     122                this.informpub = informpub; 
     123        } 
    97124} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/modele/RequeteFacteurEmission.java

    r68 r70  
    1313        private Long produitBurnt; 
    1414        private Long colormap; 
     15        private Long classdis; 
     16        private Long id_secteur; 
     17        private Long id_rcp; 
     18        private String alt; 
     19        private Long id_mask; 
    1520        private Zone zone; 
    1621        private String datedeb; 
     
    2328        private long burningEff; 
    2429 
    25         public String toXml(boolean fonction) { 
    26 String xml = new String(); 
     30        public String toXml() { 
     31                String xml = new String(); 
    2732                 
    2833                xml += "<requete>\n"; 
     
    3136                xml += XmlHelper.createNode("produit", produitBurnt); 
    3237                xml += XmlHelper.createNode("colormap", colormap); 
    33                  
     38                xml += XmlHelper.createNode("scalevalue", classdis); 
     39                xml += XmlHelper.createNode("secteur", id_secteur); 
     40                xml += XmlHelper.createNode("rcp", id_rcp); 
     41                xml += XmlHelper.createNode("alt", alt); 
     42                xml += XmlHelper.createNode("mask", id_mask); 
    3443                 
    3544                InfoConnectBean infoconnect = (InfoConnectBean) SpringBeanFactory.getXmlFactory().getBean("infoConnect"); 
     
    6069                xml += XmlHelper.createNode("valeur", emissionFactor); 
    6170                xml += "</param>\n";*/ 
    62  
    6371                 
    6472                xml += "<param>\n"; 
     
    6674                xml += XmlHelper.createNode("valeur", gaz); 
    6775                xml += "</param>\n"; 
    68  
    69                  
     76         
    7077                /* 
    7178                xml += "<param>\n"; 
     
    9097                         
    9198                        // FIXME truc crade pour sortir l'id des classes \o/ 
    92                          
    93                          
    94                          
    9599                        try { 
    96100                                xml += XmlHelper.createNode("nom", codeDAO.getNumberCode(id_classe)); 
     
    98102                                e.printStackTrace(); 
    99103                        } 
    100                          
    101104                        xml += XmlHelper.createNode("valeur", id_classe); 
    102105                        xml += "</param>\n"; 
    103106                } 
    104                  
    105107                xml += "</params>\n"; 
    106                  
    107108                xml += "</fonction>\n"; 
    108                  
    109109                xml += "</requete>"; 
    110                  
     110//              System.out.println(xml); 
    111111                return xml; 
    112         } 
    113          
    114          
    115         public String toXml() { 
    116                 return toXml(true); 
    117112        } 
    118113         
     
    125120        } 
    126121 
     122        public Long getClassdis() { 
     123                return classdis; 
     124        } 
     125 
     126        public void setClassdis(Long classdis) { 
     127                this.classdis = classdis; 
     128        } 
     129 
    127130        public String getDatedeb() { 
    128131                return datedeb; 
     
    212215                this.burningEff = burningEff; 
    213216        } 
     217 
     218        public Long getId_secteur() { 
     219                return id_secteur; 
     220        } 
     221 
     222        public void setId_secteur(Long idSecteur) { 
     223                id_secteur = idSecteur; 
     224        } 
     225 
     226        public Long getId_rcp() { 
     227                return id_rcp; 
     228        } 
     229 
     230        public void setId_rcp(Long idRcp) { 
     231                id_rcp = idRcp; 
     232        } 
     233 
     234        public String getAlt() { 
     235                return alt; 
     236        } 
     237 
     238        public void setAlt(String alt) { 
     239                this.alt = alt; 
     240        } 
     241 
     242        public Long getId_mask() { 
     243                return id_mask; 
     244        } 
     245 
     246        public void setId_mask(Long idMask) { 
     247                id_mask = idMask; 
     248        } 
    214249         
    215250} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/modele/ResultatStat.java

    r68 r70  
    22 
    33import java.lang.Double; 
    4  
    5 import org.medias.eccad.helpers.LoggerPerso; 
    6 import org.medias.eccad.metier.statistique.ServiceStatistique; 
     4import java.math.BigDecimal; 
    75 
    86public class ResultatStat { 
     
    1917        } 
    2018 
    21         public ResultatStat(String min, String max, String moyenne, String ecart, String somme) { 
     19        public ResultatStat(String min, String max, String moyenne, String ecart, String somme, String type) { 
    2220                super(); 
    2321                 
     
    2826                somme = fixeDecimal(somme);*/ 
    2927                 
    30                  
    31                  
    3228                double minFloat = Double.parseDouble(min); 
    3329                double maxFloat = Double.parseDouble(max); 
    3430                double moyenneFloat = Double.parseDouble(moyenne);   
    3531                double ecartFloat = Double.parseDouble(ecart);  
    36                 double sommeFloat = Double.parseDouble(somme);  
     32                double sommeFloat = Double.parseDouble(somme); 
     33                // On arrondit le min, le max et la somme si on attend des valeurs entiÚres en sortie 
     34                if (type.equals("positive integer")) { 
     35                        minFloat = (new BigDecimal(Math.round(minFloat))).doubleValue(); 
     36                        maxFloat = (new BigDecimal(Math.round(maxFloat))).doubleValue(); 
     37                        sommeFloat = (new BigDecimal(Math.round(sommeFloat))).doubleValue(); 
     38                } 
    3739                 
    38                  
    39                  
    40                 min = (String)Double.toString(minFloat); 
    41                 max = (String)Double.toString(maxFloat); 
    42                 moyenne = (String)Double.toString(moyenneFloat); 
    43                 ecart = (String)Double.toString(ecartFloat); 
    44                 somme = (String)Double.toString(sommeFloat); 
     40                min = Double.toString(minFloat); 
     41                max = Double.toString(maxFloat); 
     42                moyenne = Double.toString(moyenneFloat); 
     43                ecart = Double.toString(ecartFloat); 
     44                somme = Double.toString(sommeFloat); 
    4545 
    46                 LoggerPerso.log(ResultatStat.class, LoggerPerso.DEBUG, "min : "+ min + fixeDecimal(moyenne)); 
     46//              LoggerPerso.log(ResultatStat.class, LoggerPerso.DEBUG, "min : "+ min + "   max : "+ max + " - fixeDecimal : "+fixeDecimal(moyenne)); 
    4747                //min = fixeDecimal(min.toString()); 
    4848                 
     
    6464         
    6565        private String fixeDecimal(String entree) { 
    66                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree 1 "+entree); 
     66//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree 1 "+entree); 
    6767                if (entree == null) 
    6868                        return "nc"; 
    6969                int index = entree.lastIndexOf("."); 
    7070                int indexE = entree.lastIndexOf("E"); 
    71                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree  --lll-->2 "+indexE+"  "+index+"  "+entree.length()); 
    72                 if ( indexE == -1 && index != -1 && entree.length() >= index + 5) { 
    73                         LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "cas 1 entree"); 
    74                         entree = entree.substring(0, entree.lastIndexOf(".")+5); 
     71//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree  --lll-->2 "+indexE+"  "+index+"  "+entree.length()); 
     72//              if ( indexE == -1 && index != -1 && entree.length() >= index + 5) { 
     73//                      entree = entree.substring(0, entree.lastIndexOf(".")+5); 
     74//              } 
     75//              else if ( indexE != -1 && index != -1 && entree.length() >= index + 5) 
     76//              { 
     77//                      String aEntree = entree; 
     78//                      LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "aEntree "+aEntree.lastIndexOf("E")+"  "+aEntree.length()+"    "+aEntree.lastIndexOf("E")+"  "+aEntree.length()); 
     79//                      aEntree = aEntree.substring(aEntree.lastIndexOf("E"), aEntree.lastIndexOf("E")+aEntree.length()-aEntree.lastIndexOf("E")); 
     80                        //entree = entree.substring(0, entree.lastIndexOf(".")+5)+aEntree; 
     81//                      entree = entree.substring(0, entree.substring(0 , entree.lastIndexOf("E")).length()) + aEntree; 
     82//              } 
     83                 
     84                // Le nombre a une virgule et pas de puissance de 10 (n=xx.xxx) 
     85                if (indexE == -1 && index != -1 && entree.length() >= index + 3) { 
     86                        entree = entree.substring(0,index+3); 
    7587                } 
    76                 else if ( indexE != -1 && index != -1 && entree.length() >= index + 5) 
    77                 { 
    78                         LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "cas 2 entree"); 
    79                         String aEntree = entree; 
    80                         LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "aEntree "+aEntree.lastIndexOf("E")+"  "+aEntree.length()+"    "+aEntree.lastIndexOf("E")+"  "+aEntree.length()); 
    81                         aEntree=aEntree.substring(aEntree.lastIndexOf("E"), aEntree.lastIndexOf("E")+aEntree.length()-aEntree.lastIndexOf("E")); 
    82                         entree = entree.substring(0, entree.lastIndexOf(".")+5)+aEntree; 
     88                // Le nombre a une virgule et une puissance de 10 (n=xx.xxxExx) 
     89                else if ( indexE != -1 && index != -1 && entree.substring(0,indexE).length() >= index + 3) { 
     90                        entree = entree.substring(0,index+3)+entree.substring(indexE); 
    8391                } 
    84                 else { 
    85                         LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree= "+entree); 
    86                 } 
    87                  
     92//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree "+entree); 
    8893                return entree; 
    8994        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/modele/StatReponse.java

    r68 r70  
    1717        private Float centerLat; 
    1818        private Float centerLon; 
     19        private Float globalSum; 
    1920         
    2021        public StatReponse(String error) { 
     
    2728                        return valeur; 
    2829                } 
    29          
    3030         
    3131        public StatReponse(Zone zone, Temporel tempo, InfoCarte carte, String urlImage, Map<String, String> statistique, List<Valeur> graphe) { 
     
    9999        } 
    100100 
    101  
    102  
    103101        public List<Valeur> getGraphe() { 
    104102                return graphe; 
    105103        } 
    106  
    107  
    108104 
    109105        public void setGraphe(List<Valeur> graphe) { 
     
    111107        } 
    112108 
    113  
    114  
    115109        public Float getMaximal() { 
    116110                return maximal; 
    117111        } 
    118  
    119  
    120112 
    121113        public void setMaximal(Float maximal) { 
     
    123115        } 
    124116 
    125  
    126  
    127117        public Float getMinimal() { 
    128118                return minimal; 
    129119        } 
    130  
    131  
    132120 
    133121        public void setMinimal(Float minimal) { 
     
    139127        } 
    140128 
    141  
    142  
    143129        public void setCenter(Float aCenter) { 
    144130                this.center = aCenter; 
    145131        } 
    146          
    147132 
    148133        public Float getCenterLat() { 
    149134                return centerLat; 
    150135        } 
    151  
    152  
    153136 
    154137        public void setCenterLat(Float aCenterLat) { 
     
    160143        } 
    161144 
    162  
    163  
    164145        public void setCenterLon(Float aCenterLon) { 
    165146                this.centerLon = aCenterLon; 
    166147        } 
    167          
     148 
     149        public Float getGlobalSum() { 
     150                return globalSum; 
     151        } 
     152 
     153        public void setGlobalSum(Float globalSum) { 
     154                this.globalSum = globalSum; 
     155        } 
    168156} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/modele/Zone.java

    r68 r70  
    22 
    33import java.text.NumberFormat; 
     4import java.util.Locale; 
    45 
    56public class Zone { 
     
    1617                this.eastbc = eastbc; 
    1718                this.westbc = westbc; 
    18                 numberFormat = NumberFormat.getNumberInstance(); 
     19                numberFormat = NumberFormat.getNumberInstance(Locale.US); 
    1920                numberFormat.setMaximumFractionDigits(2); 
    2021        } 
     
    2627                this.eastbc = 0; 
    2728                this.westbc = 0; 
    28                 numberFormat = NumberFormat.getNumberInstance(); 
     29                numberFormat = NumberFormat.getNumberInstance(Locale.US); 
    2930                numberFormat.setMaximumFractionDigits(2); 
    3031        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/GestionFichier.java

    r68 r70  
    3636         out.close(); 
    3737        } catch (IOException e) { 
    38          //system.out.println(e.toString()); 
     38                        e.printStackTrace(); 
    3939        }  
    4040        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/PropertiesDatabase.java

    r68 r70  
    1212         
    1313        public PropertiesDatabase() { 
    14                 LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement fichier de properties"); 
     14//              LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement fichier de properties"); 
    1515                String fichierProp = Lanceur.class.getResource("").getPath() + "/../../../../../propriete/serveur.properties"; 
    1616                fichierProp.replaceAll("%20", " "); 
    1717                prop = new Properties(); 
    1818                try { 
    19                         LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement de : " + fichierProp); 
     19//                      LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement de : " + fichierProp); 
    2020                        prop.load(new FileInputStream(fichierProp)); 
    2121                } catch (Exception e) { 
     
    3636                info.setDb_passwd(prop.getProperty("password")); 
    3737                 
    38                 LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement :" + info); 
     38//              LoggerPerso.log(PropertiesDatabase.class, LoggerPerso.DEBUG, "chargement :" + info); 
    3939                return info; 
    4040        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/SGBD_jdbc.java

    r68 r70  
    1717import org.medias.eccad.modele.Parametre; 
    1818import org.medias.eccad.modele.Produit; 
     19import org.medias.eccad.modele.Secteur; 
    1920import org.postgresql.ds.PGPoolingDataSource; 
    2021import org.postgresql.largeobject.LargeObject; 
     
    2829        public SGBD_jdbc(InfoConnectBean info) { 
    2930                con = null; 
    30                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "construction connection"); 
     31//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "construction connection"); 
    3132                if (pooling == null) { 
    32                         LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "creation pooling :: " + info); 
     33//                      LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "creation pooling :: " + info); 
    3334                        pooling = new PGPoolingDataSource(); 
    3435                        pooling.setDatabaseName(info.getDb_name()); 
     
    188189                } 
    189190                 
    190                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListParametre::taille::"+liste_param.size()); 
     191//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListParametre::taille::"+liste_param.size()); 
    191192                return liste_param; 
    192193        } 
     
    198199                 
    199200                requete = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    200                 sql = "select distinct id_produit, title_produit, begintime_produit, endtime_produit from produit join grille using (id_produit) where id_param = " + id_param + ";"; 
     201                sql = "select distinct id_produit, title_produit, begintime_produit, endtime_produit, order_produit from produit join grille using (id_produit) where id_param = " + id_param + " order by order_produit;"; 
    201202                 
    202203                ResultSet resultat = requete.executeQuery(sql); 
     
    209210                } 
    210211                 
    211                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListProduit::taille::"+liste_param.size()); 
     212//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListProduit::taille::"+liste_param.size()); 
    212213                return liste_param; 
    213214                 
     
    228229                } 
    229230                 
    230                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
     231//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
    231232 
    232233                return param; 
     
    250251                } 
    251252                 
    252                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
     253//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
    253254 
    254255                return produit; 
     
    263264                requete = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    264265                sql = "select distinct valeurs_grille, date_grille from grille where id_produit = " + id_produit + " and date_grille >= '" + date_debut + "' and date_grille <= '" + date_fin + "' order by date_grille;"; 
    265                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::requete :: " + sql); 
     266//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::requete :: " + sql); 
    266267                ResultSet resultat = requete.executeQuery(sql); 
    267268                 
     
    270271                } 
    271272                 
    272                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::taille::"+liste_param.size() + "id_produit::" + id_produit); 
     273//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::taille::"+liste_param.size() + "id_produit::" + id_produit); 
    273274                return liste_param; 
    274275        } 
    275276         
    276          
     277        public List<Secteur> getListSectorByParam(int id_param) throws SQLException { 
     278                Statement requete; 
     279                String sql; 
     280                List<Secteur> liste_secteur = new LinkedList<Secteur>(); 
     281                 
     282                requete = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     283                sql = "select id_secteur, fullname_secteur, id_categorieparametre from secteur; "; 
     284                 
     285                ResultSet resultat = requete.executeQuery(sql); 
     286                 
     287                while (resultat.next()) { 
     288                        liste_secteur.add(new Secteur(resultat.getInt("id_secteur"), resultat.getString("fullname_secteur"))); 
     289                } 
     290                 
     291                //LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListSecteur::taille::"+liste_secteur.size()); 
     292                return liste_secteur; 
     293                 
     294        } 
    277295         
    278296} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/ServicePersistance.java

    r68 r70  
    11package org.medias.eccad.persistance; 
    22 
     3import java.util.ArrayList; 
    34import java.util.List; 
    45 
    5  
    6 import org.medias.eccad.helpers.LoggerPerso; 
    76import org.medias.eccad.helpers.SpringBeanFactory; 
    87import org.medias.eccad.modele.*; 
     
    109import org.medias.eccad.persistance.dao.MappingDAO; 
    1110import org.medias.eccad.persistance.dao.ParametreDAO; 
     11import org.medias.eccad.persistance.dao.RcpDAO; 
     12import org.medias.eccad.persistance.dao.SecteurDAO; 
    1213import org.medias.eccad.persistance.dao.CatParametreDAO; 
    1314import org.medias.eccad.persistance.dao.ProduitDAO; 
    1415import org.medias.eccad.persistance.exception.PersistanceException; 
    15 import org.medias.eccad.persistance.jdbc.CatParametreDAOjdbc; 
    1616import org.springframework.beans.factory.xml.XmlBeanFactory; 
    1717 
     
    2121         
    2222        public ServicePersistance() { 
    23                 LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "création du service"); 
     23//              LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "création du service"); 
    2424                xmlbean = SpringBeanFactory.getXmlFactory(); 
    2525        } 
    2626         
    2727        public List<CatParametre> getListcatParametre() { 
    28                 LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "load DAOCAT"); 
     28//              LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "load DAOCAT"); 
    2929                List<CatParametre> liste_catParam; 
    3030                CatParametreDAO catParamdao = (CatParametreDAO) xmlbean.getBean("catParametreDAO"); 
    3131                try { 
    32                         LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "try...!"); 
    33                         liste_catParam = catParamdao.getListcatParametre(); 
     32                         liste_catParam = catParamdao.getListcatParametre(); 
    3433 
    3534                } catch (PersistanceException e) { 
     
    6766        } 
    6867         
     68        public List<Secteur> getListSectorByParam(int id_param, int id_prod, int id_rcp) { 
     69                List<Secteur> liste_secteur; 
     70                SecteurDAO secteur = (SecteurDAO) xmlbean.getBean("secteurDAO"); 
     71                 
     72                try { 
     73                         liste_secteur = secteur.getListSectorByParam(id_param,id_prod,id_rcp); 
     74                } catch (PersistanceException e) { 
     75                        e.printStackTrace(); 
     76                        return null; 
     77                } 
     78                return liste_secteur; 
     79        } 
     80         
     81        public List<Secteur> getListSecteur() { 
     82                List<Secteur> liste_secteur; 
     83                SecteurDAO secteurdao = (SecteurDAO) xmlbean.getBean("secteurDAO"); 
     84                try { 
     85                         liste_secteur = secteurdao.getListSecteur(); 
     86                } catch (PersistanceException e) { 
     87                        e.printStackTrace(); 
     88                        return null; 
     89                } 
     90                 
     91                return liste_secteur; 
     92        } 
     93         
     94        public List<Rcp> getListRcpByParam(int id_param, int id_prod, int id_sector) { 
     95                List<Rcp> liste_rcp; 
     96                RcpDAO rcpdao = (RcpDAO) xmlbean.getBean("rcpDAO"); 
     97                 
     98                try { 
     99                         liste_rcp = rcpdao.getListRcpByParam(id_param,id_prod,id_sector); 
     100                } catch (PersistanceException e) { 
     101                        e.printStackTrace(); 
     102                        return null; 
     103                } 
     104                return liste_rcp; 
     105        } 
     106         
    69107        public List<Produit> getListProductByParam(int id_param) { 
    70108                List<Produit> liste_param; 
     
    91129                } 
    92130 
    93                 LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
     131//              LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
    94132                return produit; 
    95133        } 
    96134         
    97         public List<Grille> getListGrille(long id_produit, long id_parametre,String date_debut, String date_fin) { 
     135        public Secteur getSecteurByID(long id_secteur) { 
     136                Secteur secteur = null; 
     137                SecteurDAO secteurdao = (SecteurDAO) xmlbean.getBean("secteurDAO"); 
     138                 
     139                try { 
     140                        secteur = secteurdao.getSecteurById(id_secteur); 
     141                } catch (PersistanceException e) { 
     142                        e.printStackTrace(); 
     143                        return null; 
     144                } 
     145 
     146//              LoggerPerso.log(ServicePersistance.class, LoggerPerso.DEBUG, "getSecteurById::nom::"+ secteur.getNom()); 
     147                return secteur; 
     148        } 
     149 
     150        public Rcp getRcpByID(long id_rcp) { 
     151                Rcp rcp = null; 
     152                RcpDAO rcpdao = (RcpDAO) xmlbean.getBean("rcpDAO"); 
     153                 
     154                try { 
     155                        rcp = rcpdao.getRcpById(id_rcp); 
     156                } catch (PersistanceException e) { 
     157                        e.printStackTrace(); 
     158                        return null; 
     159                } 
     160                return rcp; 
     161        } 
     162         
     163        public List<Grille> getListGrille(long id_produit, long id_parametre, long id_secteur, long id_rcp, String date_debut, String date_fin, String nomProd, String legend, String typeProd) { 
    98164                List<Grille> grille; 
    99165                GrilleDAO grilledao = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
    100166                try { 
    101                         grille = grilledao.getListGrille(id_produit, id_parametre, date_debut, date_fin); 
     167                        grille = grilledao.getListGrille(id_produit, id_parametre, id_secteur, id_rcp, date_debut, date_fin, nomProd, legend, typeProd); 
    102168                } catch (PersistanceException e) { 
    103169                        e.printStackTrace(); 
     
    121187        } 
    122188         
     189        public List<String> getListAlt(long id_secteur, String date_debut) { 
     190                List<String> liste_alt; 
     191                GrilleDAO grilledao = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
     192                try { 
     193                        liste_alt = grilledao.getListAlt(id_secteur, date_debut); 
     194                } catch (PersistanceException e) { 
     195                        e.printStackTrace(); 
     196                        return null; 
     197                } 
     198 
     199                return liste_alt; 
     200        } 
     201         
     202        public List<Grille> getListMasques(String codifMasque) { 
     203                List<Grille> liste_reg; 
     204                GrilleDAO grilledao = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
     205                try { 
     206                        liste_reg = grilledao.getListMasques(codifMasque); 
     207                } catch (PersistanceException e) { 
     208                        e.printStackTrace(); 
     209                        return null; 
     210                } 
     211 
     212                return liste_reg; 
     213        } 
     214 
    123215        public Parametre getParametreById(int id_param) { 
    124216                Parametre param = null; 
     
    151243                return mapping.getVisualisation(type_produit); 
    152244        } 
     245 
     246        public String getTypeCodif(long idGrille) { 
     247                String typeCodif; 
     248                GrilleDAO grilledao = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
     249                try { 
     250                        typeCodif = grilledao.getTypeCodif(idGrille); 
     251                } catch (PersistanceException e) { 
     252                        e.printStackTrace(); 
     253                        return null; 
     254                } 
     255                return typeCodif; 
     256        } 
     257 
     258        public ArrayList<String> getDates(long idProduit, long idParametre,     long idSecteur, long idRcp, String nomprod) { 
     259                ArrayList<String> dates; 
     260                GrilleDAO grilledao = (GrilleDAO) xmlbean.getBean("grilleDAO"); 
     261                try { 
     262                        dates = grilledao.getDates(idProduit, idParametre, idSecteur, idRcp, nomprod); 
     263                } catch (PersistanceException e) { 
     264                        e.printStackTrace(); 
     265                        return null; 
     266                } 
     267 
     268                return dates; 
     269        } 
    153270} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/dao/ColorTabDAO.java

    r68 r70  
    88 
    99public interface ColorTabDAO { 
    10         public abstract ColorTab getColorMapByID(long id)  throws PersistanceException; 
     10        public abstract ColorTab getColorMapByID(long id, long idClass)  throws PersistanceException; 
    1111        public abstract ColorTab getColorMapByParam(int idparam) throws PersistanceException; 
    12         public abstract ColorTab getColorMapByGrille(long id_grille) throws PersistanceException; 
    13         public abstract List<ColorMap> getListColorTabByGrille(long id_grille) throws PersistanceException; 
    14         public abstract List<ColorMap> getListColorTab() throws PersistanceException; 
    15         public abstract List<ColorMap> getListColorMapDynamique() throws PersistanceException; 
     12        public abstract ColorTab getColorMapByGrille() throws PersistanceException; 
     13        public abstract List<ColorMap> getListColorTabByGrille() throws PersistanceException; 
    1614} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/dao/FactoryDAO.java

    r68 r70  
    44        public GrilleDAO getGrilleDAO(); 
    55        public ParametreDAO getParametreDAO(); 
     6        public SecteurDAO getSecteurDAO(); 
    67        public ProduitDAO getProduitDAO(); 
    78} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/dao/GrilleDAO.java

    r68 r70  
    11package org.medias.eccad.persistance.dao; 
    22 
     3import java.util.ArrayList; 
    34import java.util.List; 
    45 
     
    78 
    89public interface GrilleDAO { 
    9         public List<Grille> getListGrille(long id_produit,long id_parametre, String date_debut, String date_fin) throws PersistanceException; 
     10        public List<Grille> getListGrille(long id_produit,long id_parametre, long id_secteur, long id_rcp, String date_debut, String date_fin, String nomProd, String legend, String typeProd) throws PersistanceException; 
    1011        public List<Grille> getListGrille(long id_produit, String date_debut, String date_fin) throws PersistanceException; 
     12        public List<String> getListAlt(long id_secteur, String date_debut) throws PersistanceException; 
     13        public List<Grille> getListMasques(String codifMasque) throws PersistanceException; 
    1114        public float[][] getGrilleValue(int oid) throws PersistanceException; 
    1215        public String getCodification(long id_grille) throws PersistanceException; 
     
    1619        public float getGrilleResolution(long id_grille) throws PersistanceException; 
    1720        public float getProduitResolution(long id_produit) throws PersistanceException; 
     21        public String getTypeCodif(long idGrille) throws PersistanceException; 
     22        public ArrayList<String> getDates(long idProduit, long idParametre,     long idSecteur, long idRcp, String nomProd) throws PersistanceException; 
    1823} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/dummy/ColorTabDAOdummy.java

    r68 r70  
    2121        } 
    2222         
    23         public ColorTab getColorMapByGrille(long oid) { 
     23        public ColorTab getColorMapByGrille() { 
    2424                ColorTab colortab = new ColorTab(); 
    2525                colortab.setMin(min); 
     
    4444 
    4545        public ColorTab getColorMapByParam(int id_param) { 
    46                 return getColorMapByGrille(0); 
     46                return getColorMapByGrille(); 
    4747        } 
    4848 
    49         public List<ColorMap> getListColorTabByGrille(long oid) throws PersistanceException { 
     49        public List<ColorMap> getListColorTabByGrille() throws PersistanceException { 
    5050                List<ColorMap> liste = new LinkedList<ColorMap>(); 
    5151                 
     
    5858        } 
    5959 
    60         public List<ColorMap> getListColorTab() throws PersistanceException { 
    61                 List<ColorMap> liste = new LinkedList<ColorMap>(); 
    62                                  
    63                 return liste; 
    64         } 
    65  
    66         public ColorTab getColorMapByID(long id) throws PersistanceException { 
     60        public ColorTab getColorMapByID(long id, long idClass) throws PersistanceException { 
    6761                // TODO Auto-generated method stub 
    6862                return null; 
     
    7367                return null; 
    7468        } 
    75          
    76          
    7769 
    7870} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/dummy/GrilleDAOdummy.java

    r68 r70  
    11package org.medias.eccad.persistance.dummy; 
    22 
     3import java.util.ArrayList; 
    34import java.util.LinkedList; 
    45import java.util.List; 
     
    2021                return data; 
    2122        } 
    22         public List<Grille> getListGrille(long id_produit,long id_parametre, String date_debut, 
    23                         String date_fin) throws PersistanceException { 
     23        public List<Grille> getListGrille(long id_produit,long id_parametre, long id_secteur, long id_rcp, String date_debut, 
     24                        String date_fin, String nomProd, String legend, String typeProd) throws PersistanceException { 
    2425                 
    2526                Grille grille; 
     
    104105                return 0; 
    105106        } 
     107        public String getTypeCodif(long idGrille) { 
     108                // TODO Auto-generated method stub 
     109                return null; 
     110        } 
     111 
     112        public ArrayList<String> getDates(long idProduit, long idParametre, 
     113                        long idSecteur, long idRcp, String nomProd) 
     114                        throws PersistanceException { 
     115                // TODO Auto-generated method stub 
     116                return null; 
     117        } 
     118        public List<String> getListAlt(long idSecteur, String dateDebut) 
     119                        throws PersistanceException { 
     120                // TODO Auto-generated method stub 
     121                return null; 
     122        } 
     123        public List<Grille> getListMasques(String codifMasque) throws PersistanceException { 
     124                // TODO Auto-generated method stub 
     125                return null; 
     126        } 
     127 
    106128 
    107129} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/HibernateSGBD.java

    r68 r70  
    55 
    66/** 
    7  * Permet l'intéraction avec un système de gestion persistante de l'information 
     7 * Permet l'intï¿œraction avec un systï¿œme de gestion persistante de l'information 
    88 * @author Jean PINAUD 
    99 * 
     
    1414         
    1515        /** 
    16          * Début de la transaction 
     16         * Dï¿œbut de la transaction 
    1717         * 
    1818         */ 
    1919        public void connexion() { 
    20 //              //system.out.println("<<< Hibernate::Connexion >>>"); 
    2120                session = HibernateUtil.currentSession(); 
    2221                tx = session.beginTransaction(); 
     
    4342         
    4443        /** 
    45          * Constructeur par défaut 
     44         * Constructeur par dï¿œfaut 
    4645         * 
    4746         */ 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/HibernateUtil.java

    r68 r70  
    44import org.hibernate.*; 
    55import org.hibernate.cfg.*; 
    6 import org.medias.eccad.helpers.LoggerPerso; 
    76 
    87/** 
     
    2423 public static Session currentSession() 
    2524                throws HibernateException { 
    26          LoggerPerso.log(HibernateUtil.class, LoggerPerso.DEBUG, "--  connexion  --"); 
     25//       LoggerPerso.log(HibernateUtil.class, LoggerPerso.DEBUG, "--  connexion  --"); 
    2726  try { 
    2827           if (sessionFactory == null) { 
     
    3029                   } 
    3130                } catch (HibernateException ex) { 
    32                    throw new RuntimeException("Problème de configuration : " 
     31                   throw new RuntimeException("ProblÚme de configuration : " 
    3332                   + ex.getMessage(), ex); 
    3433                } 
     
    5049 public static void closeSession() 
    5150                throws HibernateException { 
    52          LoggerPerso.log(HibernateUtil.class, LoggerPerso.DEBUG, "--  deconnexion  --"); 
     51//       LoggerPerso.log(HibernateUtil.class, LoggerPerso.DEBUG, "--  deconnexion  --"); 
    5352   Session s = (Session) session.get(); 
    5453   session.set(null); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/XmlDAOhibernate.java

    r68 r70  
    33import java.util.List; 
    44 
    5 import org.medias.eccad.helpers.CharactereHelper; 
    65import org.medias.eccad.persistance.dao.XmlDAO; 
    76import org.medias.eccad.persistance.hibernate.domaine.Produit; 
     
    109 
    1110        public String getXmlByProduit(long id) { 
    12                 List resultat; 
     11                List<?> resultat; 
    1312                Produit produitTO; 
    1413                connexion(); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Categorieparametre.java

    r68 r70  
    1414 
    1515        // Fields     
     16 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
    1621 
    1722        private int idCategorieparametre; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Code.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private int idCode; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Codification.java

    r68 r70  
    1212 
    1313        // Fields     
     14 
     15        /** 
     16         *  
     17         */ 
     18        private static final long serialVersionUID = 1L; 
    1419 
    1520        private int idCodification; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Color.java

    r68 r70  
    1212 
    1313        // Fields     
     14 
     15        /** 
     16         *  
     17         */ 
     18        private static final long serialVersionUID = 1L; 
    1419 
    1520        private int colId; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/ColorIndex.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private ColorIndexId id; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/ColorIndexId.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private int cmId; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Colormap.java

    r68 r70  
    1212 
    1313        // Fields     
     14 
     15        /** 
     16         *  
     17         */ 
     18        private static final long serialVersionUID = 1L; 
    1419 
    1520        private int cmId; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Concerne.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private ConcerneId id; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/ConcerneId.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private int idProduit; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Contact.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private ContactId id; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/ContactId.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private int idProduit; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Domaine.java

    r68 r70  
    1414 
    1515        // Fields     
     16 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
    1621 
    1722        private int idDomaine; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Fichier.java

    r68 r70  
    1111 
    1212        // Fields     
     13 
     14        /** 
     15         *  
     16         */ 
     17        private static final long serialVersionUID = 1L; 
    1318 
    1419        private int idFichier; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Fournit.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private FournitId id; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/FournitId.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private int idProduit; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Grille.java

    r68 r70  
    22 
    33// Generated 1 Juin 2007 15:03:29 by Hibernate Tools 3.2.0.beta7 
    4  
    5 import java.io.Serializable; 
    6 import java.util.Date; 
    74 
    85/** 
     
    129 
    1310        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1416 
    1517        private int idGrille; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/LienpersonneId.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private int idMetadata; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Metadata.hbm.xml

    r68 r70  
    2424            <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Produit" /> 
    2525        </set> 
    26         <set name="lienorganismes" inverse="true"> 
    27             <key> 
    28                 <column name="id_metadata" not-null="true" /> 
    29             </key> 
    30             <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Lienorganisme" /> 
    31         </set> 
    3226        <set name="lienpersonnes" inverse="true"> 
    3327            <key> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Metadata.java

    r68 r70  
    3030        private Set<Produit> produits = new HashSet<Produit>(0); 
    3131 
    32         private Set<Lienorganisme> lienorganismes = new HashSet<Lienorganisme>(0); 
    33  
    3432        private Set<Lienpersonne> lienpersonnes = new HashSet<Lienpersonne>(0); 
    3533 
     
    4846        /** full constructor */ 
    4947        public Metadata(int idMetadata, String nameMetadata, String dateMetadata, 
    50                         String versionMetadata, Set<Produit> produits, 
    51                         Set<Lienorganisme> lienorganismes, Set<Lienpersonne> lienpersonnes) { 
     48                        String versionMetadata, Set<Produit> produits, Set<Lienpersonne> lienpersonnes) { 
    5249                this.idMetadata = idMetadata; 
    5350                this.nameMetadata = nameMetadata; 
     
    5552                this.versionMetadata = versionMetadata; 
    5653                this.produits = produits; 
    57                 this.lienorganismes = lienorganismes; 
    5854                this.lienpersonnes = lienpersonnes; 
    5955        } 
     
    7066                valeur += "\n"; 
    7167                valeur += XmlHelper.createNode("versionMetadata", versionMetadata); 
    72                 valeur += "\n"; 
    73                 valeur += XmlHelper.listToString("organismes", lienorganismes); 
    7468                valeur += "\n"; 
    7569                valeur += XmlHelper.listToString("personnes", lienpersonnes); 
     
    124118        } 
    125119 
    126         public Set<Lienorganisme> getLienorganismes() { 
    127                 return this.lienorganismes; 
    128         } 
    129  
    130         public void setLienorganismes(Set<Lienorganisme> lienorganismes) { 
    131                 this.lienorganismes = lienorganismes; 
    132         } 
    133  
    134120        public Set<Lienpersonne> getLienpersonnes() { 
    135121                return this.lienpersonnes; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Organisme.hbm.xml

    r68 r70  
    4242            <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Fournit" /> 
    4343        </set> 
    44         <set name="lienorganismes" inverse="true"> 
    45             <key> 
    46                 <column name="id_organisme" not-null="true" /> 
    47             </key> 
    48             <one-to-many class="org.medias.eccad.persistance.hibernate.domaine.Lienorganisme" /> 
    49         </set> 
    5044    </class> 
    5145</hibernate-mapping> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Organisme.java

    r68 r70  
    1414 
    1515        // Fields     
     16 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
    1621 
    1722        private int idOrganisme; 
     
    3742        private Set<Fournit> fournits = new HashSet<Fournit>(0); 
    3843 
    39         private Set<Lienorganisme> lienorganismes = new HashSet<Lienorganisme>(0); 
    40  
    4144        // Constructors 
    4245 
     
    5558                        String faxOrganisme, String urlOrganisme, String addressOrganisme, 
    5659                        String zipcodeOrganisme, String cityOrganisme, 
    57                         String countryOrganisme, Set<Fournit> fournits, 
    58                         Set<Lienorganisme> lienorganismes) { 
     60                        String countryOrganisme, Set<Fournit> fournits) { 
    5961                this.idOrganisme = idOrganisme; 
    6062                this.fullnameOrganisme = fullnameOrganisme; 
     
    6870                this.countryOrganisme = countryOrganisme; 
    6971                this.fournits = fournits; 
    70                 this.lienorganismes = lienorganismes; 
    7172        } 
    7273 
     
    194195        } 
    195196 
    196         public Set<Lienorganisme> getLienorganismes() { 
    197                 return this.lienorganismes; 
    198         } 
    199  
    200         public void setLienorganismes(Set<Lienorganisme> lienorganismes) { 
    201                 this.lienorganismes = lienorganismes; 
    202         } 
    203  
    204197} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/ParamColor.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private ParamColorId id; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/ParamColorId.java

    r68 r70  
    99 
    1010        // Fields     
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        private int cmId; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Parametre.java

    r68 r70  
    1414 
    1515        // Fields     
     16 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
    1621 
    1722        private int idParam; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Personne.java

    r68 r70  
    1414 
    1515        // Fields     
     16 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
    1621 
    1722        private int idPersonne; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Produit.java

    r68 r70  
    99 
    1010import org.medias.eccad.helpers.CharactereHelper; 
    11 import org.medias.eccad.helpers.LoggerPerso; 
    1211import org.medias.eccad.helpers.XmlHelper; 
    1312 
     
    159158                valeur += "<metadonnees>" + "\n"; 
    160159                 
    161                 valeur += "<produit>" + "\n";            
    162                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "produit"); 
     160                valeur += "<produit>" + "\n"; 
     161//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "produit"); 
    163162                valeur += XmlHelper.createNode("idProduit", Integer.toString(idProduit)); 
    164163                valeur += XmlHelper.createNode("titleProduit", titleProduit); 
     
    185184                valeur += XmlHelper.createNode("headerProduit", headerProduit); 
    186185                valeur += XmlHelper.createNode("versionProduit", versionProduit); 
    187                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "produit_origine"); 
     186//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "produit_origine"); 
    188187                valeur += XmlHelper.objectToString(produitorig); 
    189                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "reference"); 
     188//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "reference"); 
    190189                valeur += XmlHelper.listToString("referenceses", concernes); 
    191                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "fin produit"); 
     190//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "fin produit"); 
    192191                valeur += "</produit>" + "\n"; 
    193192 
    194                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "domaine"); 
     193//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "domaine"); 
    195194                valeur += XmlHelper.objectToString(domaine); 
    196                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "typeproduit"); 
     195//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "typeproduit"); 
    197196                valeur += XmlHelper.objectToString(typeproduit); 
    198                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "metadata_produit"); 
     197//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "metadata_produit"); 
    199198                valeur += XmlHelper.objectToString(metadata); 
    200199 
    201200                //valeur += "<fichiers>" + listToString(fichiers) + "</fichiers>" + "\n"; 
    202                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "organismes"); 
     201//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "organismes"); 
    203202                valeur += XmlHelper.listToString("organismes", fournits); 
    204                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "parametre"); 
     203//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "parametre"); 
    205204                valeur += XmlHelper.listToString("parametre", grilles, 1) + "\n"; 
    206205                //valeur += "<requetes>" + listToString(requetes) + "</requetes>" + "\n"; 
    207                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "contacts"); 
     206//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "contacts"); 
    208207                valeur += XmlHelper.listToString("contacts", contacts); 
    209208                valeur += "</metadonnees>" + "\n"; 
    210209                 
    211210                valeur = CharactereHelper.getEncodage(valeur, "ISO-8859-1"); 
    212                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "replace all"); 
     211//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "replace all"); 
    213212                valeur = valeur.replaceAll("&", "&amp;"); 
    214                 LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "fin retour valeur"); 
     213//              LoggerPerso.log(Produit.class, LoggerPerso.DEBUG, "fin retour valeur"); 
    215214                return valeur; 
    216215        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Produitorig.hbm.xml

    r68 r70  
    1515            <column name="title_produitorig" length="128" unique="true" /> 
    1616        </property> 
    17         <property name="orgProduitorig" type="string"> 
    18             <column name="org_produitorig" length="128" /> 
    19         </property> 
    20         <property name="dateProduitorig" type="date"> 
    21             <column name="date_produitorig" length="4" /> 
     17        <property name="dateProduitorig" type="string"> 
     18            <column name="date_produitorig" length="128" /> 
    2219        </property> 
    2320        <property name="editionProduitorig" type="string"> 
    2421            <column name="edition_produitorig" length="128" /> 
    2522        </property> 
    26         <property name="begintimeProduitorig" type="date"> 
    27             <column name="begintime_produitorig" length="4" /> 
     23        <property name="begintimeProduitorig" type="string"> 
     24            <column name="begintime_produitorig" length="128" /> 
    2825        </property> 
    29         <property name="endtimeProduitorig" type="date"> 
    30             <column name="endtime_produitorig" length="4" /> 
     26        <property name="endtimeProduitorig" type="string"> 
     27            <column name="endtime_produitorig" length="128" /> 
    3128        </property> 
    3229        <property name="earthellipsProduitorig" type="string"> 
     
    3835        <property name="spatialresProduitorig" type="string"> 
    3936            <column name="spatialres_produitorig" length="128" /> 
    40         </property> 
    41         <property name="projectionProduitorig" type="string"> 
    42             <column name="projection_produitorig" length="128" /> 
    4337        </property> 
    4438        <property name="methodProduitorig" type="string"> 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Produitorig.java

    r68 r70  
    33// Generated 1 Juin 2007 15:03:29 by Hibernate Tools 3.2.0.beta7 
    44 
    5 import java.util.Date; 
    65import java.util.HashSet; 
    76import java.util.Set; 
     
    1615        // Fields     
    1716 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
     21 
    1822        private int idProduitorig; 
    1923 
     
    2226        private String titleProduitorig; 
    2327 
    24         private String orgProduitorig; 
    25  
    26         private Date dateProduitorig; 
     28        private String dateProduitorig; 
    2729 
    2830        private String editionProduitorig; 
    2931 
    30         private Date begintimeProduitorig; 
    31  
    32         private Date endtimeProduitorig; 
     32        private String begintimeProduitorig; 
     33 
     34        private String endtimeProduitorig; 
    3335 
    3436        private String earthellipsProduitorig; 
     
    3739 
    3840        private String spatialresProduitorig; 
    39  
    40         private String projectionProduitorig; 
    4141 
    4242        private String methodProduitorig; 
     
    6161        /** full constructor */ 
    6262        public Produitorig(int idProduitorig, Domaine domaine, 
    63                         String titleProduitorig, String orgProduitorig, 
    64                         Date dateProduitorig, String editionProduitorig, 
    65                         Date begintimeProduitorig, Date endtimeProduitorig, 
     63                        String titleProduitorig, 
     64                        String dateProduitorig, String editionProduitorig, 
     65                        String begintimeProduitorig, String endtimeProduitorig, 
    6666                        String earthellipsProduitorig, String temporalresProduitorig, 
    67                         String spatialresProduitorig, String projectionProduitorig, 
     67                        String spatialresProduitorig, 
    6868                        String methodProduitorig, String dataurlProduitorig, 
    6969                        String documentationProduitorig, Set<Produit> produits) { 
     
    7171                this.domaine = domaine; 
    7272                this.titleProduitorig = titleProduitorig; 
    73                 this.orgProduitorig = orgProduitorig; 
    7473                this.dateProduitorig = dateProduitorig; 
    7574                this.editionProduitorig = editionProduitorig; 
     
    7978                this.temporalresProduitorig = temporalresProduitorig; 
    8079                this.spatialresProduitorig = spatialresProduitorig; 
    81                 this.projectionProduitorig = projectionProduitorig; 
    8280                this.methodProduitorig = methodProduitorig; 
    8381                this.dataurlProduitorig = dataurlProduitorig; 
     
    9593                valeur += XmlHelper.createNode("titleProduitorig", titleProduitorig); 
    9694                valeur += XmlHelper.objectToString(domaine); 
    97                 valeur += XmlHelper.createNode("orgProduitorig", orgProduitorig); 
    9895                valeur += XmlHelper.createNode("dateProduitorig", dateProduitorig); 
    9996                valeur += XmlHelper.createNode("editionProduitorig", editionProduitorig); 
     
    103100                valeur += XmlHelper.createNode("temporalresProduitorig", temporalresProduitorig); 
    104101                valeur += XmlHelper.createNode("spatialresProduitorig", spatialresProduitorig); 
    105                 valeur += XmlHelper.createNode("projectionProduitorig", projectionProduitorig); 
    106102                valeur += XmlHelper.createNode("methodProduitorig", methodProduitorig); 
    107103                valeur += XmlHelper.createNode("dataurlProduitorig", dataurlProduitorig); 
     
    112108                valeur += "<domaine>" + domaine + "</domaine>" + "\n"; 
    113109                valeur += "<titleProduitorig>" + titleProduitorig + "</titleProduitorig>" + "\n"; 
    114                 valeur += "<orgProduitorig>" + orgProduitorig + "</orgProduitorig>" + "\n"; 
    115110                valeur += "<dateProduitorig>" + dateProduitorig + "</dateProduitorig>" + "\n"; 
    116111                valeur += "<editionProduitorig>" + editionProduitorig + "</editionProduitorig>" + "\n"; 
     
    120115                valeur += "<temporalresProduitorig>" + temporalresProduitorig + "</temporalresProduitorig>" + "\n"; 
    121116                valeur += "<spatialresProduitorig>" + spatialresProduitorig + "</spatialresProduitorig>" + "\n"; 
    122                 valeur += "<projectionProduitorig>" + projectionProduitorig + "</projectionProduitorig>" + "\n"; 
    123117                valeur += "<methodProduitorig>" + methodProduitorig + "</methodProduitorig>" + "\n"; 
    124118                valeur += "<dataurlProduitorig>" + dataurlProduitorig + "</dataurlProduitorig>" + "\n"; 
     
    155149        } 
    156150 
    157         public String getOrgProduitorig() { 
    158                 return this.orgProduitorig; 
    159         } 
    160  
    161         public void setOrgProduitorig(String orgProduitorig) { 
    162                 this.orgProduitorig = orgProduitorig; 
    163         } 
    164  
    165         public Date getDateProduitorig() { 
     151        public String getDateProduitorig() { 
    166152                return this.dateProduitorig; 
    167153        } 
    168154 
    169         public void setDateProduitorig(Date dateProduitorig) { 
     155        public void setDateProduitorig(String dateProduitorig) { 
    170156                this.dateProduitorig = dateProduitorig; 
    171157        } 
     
    179165        } 
    180166 
    181         public Date getBegintimeProduitorig() { 
     167        public String getBegintimeProduitorig() { 
    182168                return this.begintimeProduitorig; 
    183169        } 
    184170 
    185         public void setBegintimeProduitorig(Date begintimeProduitorig) { 
     171        public void setBegintimeProduitorig(String begintimeProduitorig) { 
    186172                this.begintimeProduitorig = begintimeProduitorig; 
    187173        } 
    188174 
    189         public Date getEndtimeProduitorig() { 
     175        public String getEndtimeProduitorig() { 
    190176                return this.endtimeProduitorig; 
    191177        } 
    192178 
    193         public void setEndtimeProduitorig(Date endtimeProduitorig) { 
     179        public void setEndtimeProduitorig(String endtimeProduitorig) { 
    194180                this.endtimeProduitorig = endtimeProduitorig; 
    195181        } 
     
    219205        } 
    220206 
    221         public String getProjectionProduitorig() { 
    222                 return this.projectionProduitorig; 
    223         } 
    224  
    225         public void setProjectionProduitorig(String projectionProduitorig) { 
    226                 this.projectionProduitorig = projectionProduitorig; 
    227         } 
    228  
    229207        public String getMethodProduitorig() { 
    230208                return this.methodProduitorig; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Requete.java

    r68 r70  
    1111 
    1212        // Fields     
     13 
     14        /** 
     15         *  
     16         */ 
     17        private static final long serialVersionUID = 1L; 
    1318 
    1419        private int idRequete; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Typecodification.java

    r68 r70  
    1212 
    1313        // Fields     
     14 
     15        /** 
     16         *  
     17         */ 
     18        private static final long serialVersionUID = 1L; 
    1419 
    1520        private int idTypecodification; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Typeproduit.java

    r68 r70  
    1414 
    1515        // Fields     
     16 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
    1621 
    1722        private int idTypeproduit; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/hibernate/domaine/Unite.java

    r68 r70  
    1414 
    1515        // Fields     
     16 
     17        /** 
     18         *  
     19         */ 
     20        private static final long serialVersionUID = 1L; 
    1621 
    1722        private int idUnite; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/CatParametreDAOjdbc.java

    r68 r70  
    88import java.util.List; 
    99 
    10 import org.medias.eccad.helpers.LoggerPerso; 
    1110import org.medias.eccad.modele.CatParametre; 
    1211import org.medias.eccad.persistance.dao.CatParametreDAO; 
     
    3332                conn = getConnection(); 
    3433                 
    35                 try {LoggerPerso.log(CatParametreDAOjdbc.class, LoggerPerso.DEBUG, "DAOjdbc youhou!!"); 
     34                try { 
    3635                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    37                         sql = "select distinct id_categorieparametre, fullname_categorieparametre from categorieparametre join parametre using (id_categorieparametre) join grille using (id_param);"; 
    38                          
     36//                      sql = "select distinct id_categorieparametre, fullname_categorieparametre, order_categorieparametre" + 
     37//                                      " from categorieparametre join parametre using (id_categorieparametre)" + 
     38//                                      " join grille using (id_param) order by order_categorieparametre;"; 
     39                        sql = "select distinct id_categorieparametre, fullname_categorieparametre" + 
     40                                        ", order_categorieparametre from categorieparametre" + 
     41                                        " where id_categorieparametre in (select id_categorieparametre from parametre" + 
     42                                        " where id_param in (select id_param from grille)) order by order_categorieparametre;"; 
    3943                        resultat = requete.executeQuery(sql); 
    4044                 
     
    5155                } 
    5256                 
    53                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListCatParametre::taille::"+liste_catParam.size()); 
     57//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListCatParametre::taille::"+liste_catParam.size()); 
    5458 
    5559                return liste_catParam; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/CodeDAOjdbc.java

    r68 r70  
    2121                try { 
    2222                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    23                         sql = " select legend_code"  
    24                                 + " from grille join codification using (id_codification)" 
    25                                 + " join code using (id_codification) where id_grille = " + id_grille + " order by id_code;"; 
    26                          
     23//                      sql = " select num_code,legend_code"  
     24//                              + " from grille join codification using (id_codification)" 
     25//                              + " join code using (id_codification) where id_grille = " + id_grille + " order by num_code;"; 
     26                        sql = " select number_code,legend_code"  
     27                        + " from grille left join code on id_grille = num_code" 
     28                        + " where id_grille = " + id_grille + " order by number_code;"; 
     29 
    2730                        ResultSet resultat = requete.executeQuery(sql); 
    28                          
     31                        String legend = ""; 
    2932                        while (resultat.next()) { 
    30                                 code.add(resultat.getString("legend_code").toLowerCase()); 
     33                                legend = resultat.getString("legend_code"); 
     34                                code.add(resultat.getString("number_code")+"-"+legend); 
     35                        } 
     36                        if (code.size() == 1) { 
     37                                code.set(0, "1-"+legend); 
    3138                        } 
    3239                } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/ColorTabDAOjdbc.java

    r68 r70  
    99import java.util.List; 
    1010 
    11  
    12 import org.medias.eccad.helpers.LoggerPerso; 
    1311import org.medias.eccad.modele.ColorMap; 
    1412import org.medias.eccad.modele.ColorTab; 
     
    1715 
    1816public class ColorTabDAOjdbc extends GeneriqueDAOjdbc implements ColorTabDAO { 
    19  
    20          
    21          
    22          
    23         public ColorTab getColorMapByGrille(long id_grille) throws PersistanceException { 
     17         
     18        public ColorTab getColorMapByGrille() throws PersistanceException { 
    2419                ColorTab colortab = new ColorTab(); 
    25                 colortab = getTableDefault(id_grille, colortab); 
     20                colortab = getTableDefault(colortab); 
    2621                //colortab = getMinMax(oid, colortab); 
    2722                 
     
    2924        } 
    3025         
    31         public List<ColorMap> getListColorTab() throws PersistanceException { 
    32                 String sql = " select cm_name, "  
    33                            + " from colormap " 
    34                            + " order by cm_id;"; 
    35                            //+ " join grille using (id_param) " 
    36                             
    37                  
    38                 Statement requete = null; 
    39                 ResultSet resultat = null; 
    40                 Connection conn = getConnection(); 
    41                  
    42                 LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, " récupération liste de colortab " + sql); 
     26        public List<ColorMap> getListClassMap() throws PersistanceException { 
     27                String sql = " select clm_id, clm_name, num_order from class_map order by clm_id";               
     28                 
     29                Statement requete = null; 
     30                ResultSet resultat = null; 
     31                Connection conn = getConnection(); 
     32                 
     33//              LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, " récupération liste de colortab " + sql); 
    4334                 
    4435                try { 
     
    5445                try { 
    5546                        while (resultat.next()) { 
    56                                 liste_colormap.add(new ColorMap(resultat.getLong("cm_id"), resultat.getString("cm_name"), resultat.getInt("pc_defaut"))); 
     47                                liste_colormap.add(new ColorMap(resultat.getLong("clm_id"), resultat.getString("clm_name"), resultat.getInt("num_order"))); 
    5748                        } 
    5849                } 
     
    6758        } 
    6859         
    69         public List<ColorMap> getListColorTabByGrille(long id_grille) throws PersistanceException { 
    70                 String sql = " select distinct cm_id, cm_name, pc_defaut"  
     60        public List<ColorMap> getListColorTabByGrille() throws PersistanceException { 
     61                /*String sql = " select distinct cm_id, cm_name, pc_defaut"  
    7162                           + " from colormap join param_color using (cm_id) " 
    7263                           + " join grille using (id_param) " 
    73                            + " where id_grille = " + id_grille + " order by pc_defaut desc;"; 
    74                  
    75                 Statement requete = null; 
    76                 ResultSet resultat = null; 
    77                 Connection conn = getConnection(); 
    78                  
    79                 LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, " récupération liste de colortab " + sql); 
     64                           + " where id_grille = " + id_grille + " order by pc_defaut desc;";*/ 
     65                 
     66                String sql = " select clm_id as cm_id, clm_name as cm_name, num_order as pc_defaut from class_map order by clm_id"; 
     67                 
     68                Statement requete = null; 
     69                ResultSet resultat = null; 
     70                Connection conn = getConnection(); 
     71                 
     72//              LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, " récupération liste de colortab " + sql); 
    8073                 
    8174                try { 
     
    10497        } 
    10598         
    106         private ColorTab getTableDefault(long id_grille, ColorTab colortab) throws PersistanceException { 
    107                 Statement requete = null; 
    108                 String sql = " select distinct col_r, col_g, col_b, ci_min, ci_max"  
     99        private ColorTab getTableDefault(ColorTab colortab) throws PersistanceException { 
     100                Statement requete = null; 
     101                /*String sql = " select distinct col_r, col_g, col_b, ci_min, ci_max"  
    109102                                   + " from color join color_index using (col_id)" 
    110103                                   + " join param_color using (cm_id) " 
    111104                                   + " join grille   using (id_param) " 
    112                                    + " where id_grille = " + id_grille +" and pc_defaut = 1 order by ci_max;"; 
    113                 Connection conn = getConnection(); 
    114                  
    115                 ResultSet resultat = null; 
    116                  
    117                  
    118                 LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, "*************************************REQUETE = " + sql); 
     105                                   + " where id_grille = " + id_grille +" and pc_defaut = 1 order by ci_max;";*/ 
     106 
     107                String sql = " select distinct col_r, col_g, col_b, class_index.num_order" 
     108                                   + " from color join class_index using (col_id)" 
     109                                   + " join class_map using (clm_id) " 
     110                                   + " where class_map.num_order=1 order by class_index.num_order;"; 
     111                Connection conn = getConnection(); 
     112                 
     113                ResultSet resultat = null; 
     114                 
     115//              LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, "*************************************REQUETE = " + sql); 
    119116                try { 
    120117                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     
    129126                int i=0; 
    130127 
    131                  
     128                float ci_min=-1; 
     129                float ci_max=0; 
    132130                 
    133131                try { 
    134132                        while (resultat.next()) { 
    135133                                liste_couleur.add(new Color(resultat.getInt("col_r"), resultat.getInt("col_g"), resultat.getInt("col_b"))); 
    136                                 liste_min.add(resultat.getFloat("ci_min")); 
    137                                 colortab.setMax(resultat.getFloat("ci_max")); 
     134                                //liste_min.add(resultat.getFloat("ci_min")); 
     135                                //colortab.setMax(resultat.getFloat("ci_max")); 
     136                                 
     137                                liste_min.add(ci_min); 
     138                                colortab.setMax(ci_max); 
     139                                 
     140                                if (ci_min==-1) ci_min=0; 
     141                                else ci_min=ci_min+10; 
     142                                 
     143                                ci_max=ci_max+10; 
    138144                                i++; 
    139145                        } 
     
    164170        } 
    165171 
    166         public ColorTab getColorMapByID(long id) throws PersistanceException { 
     172        public ColorTab getColorMapByID(long id, long idClass) throws PersistanceException { 
    167173                Statement requete = null; 
    168174                ColorTab colortab = new ColorTab(); 
    169175                 
    170                 String sql = " select distinct col_r, col_g, col_b, ci_min, ci_max, cm_name"  
     176                /*String sql = " select distinct col_r, col_g, col_b, ci_min, ci_max, cm_name"  
    171177                                   + " from color join color_index using (col_id) join colormap using (cm_id)" 
    172                                    + " where cm_id = " + id +" order by ci_min;"; 
    173                 Connection conn = getConnection(); 
    174                  
    175                 ResultSet resultat = null; 
    176                  
    177                  
    178                 LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, "REQUETE = " + sql); 
     178                                   + " where cm_id = " + id +" order by ci_min;";*/ 
     179 
     180                String sql="select distinct col_r, col_g, col_b, clm_name as cm_name, ci.num_order, val_min, val_max"  
     181                        +" from color as co, class_index as ci, class_map as cm, class_distribution as cd"  
     182                        +" where co.col_id=ci.col_id and ci.clm_id=cm.clm_id and cm.clm_id="+id+" and cd.scl_id="+idClass 
     183                        +" and cd.num_order=ci.num_order order by ci.num_order;"; 
     184                Connection conn = getConnection(); 
     185                 
     186                ResultSet resultat = null; 
     187 
     188//              LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, "REQUETE = " + sql); 
    179189                try { 
    180190                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     
    189199                int i=0; 
    190200 
    191                  
    192                  
    193                 try { 
    194                          
     201                try { 
    195202                        while (resultat.next()) { 
    196203                                colortab.setName(resultat.getString("cm_name")); 
    197204                                liste_couleur.add(new Color(resultat.getInt("col_r"), resultat.getInt("col_g"), resultat.getInt("col_b"))); 
    198                                 liste_min.add(resultat.getFloat("ci_min")); 
    199                                 colortab.setMax(resultat.getFloat("ci_max")); 
     205                                liste_min.add(resultat.getFloat("val_min")); 
     206                                colortab.setMax(resultat.getFloat("val_max")); 
     207//                              LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, "NAME="+resultat.getString("cm_name")+", RANGE = " +resultat.getFloat("val_min")+" - "+resultat.getFloat("val_max")); 
    200208                                i++; 
    201209                        } 
     
    221229        } 
    222230 
    223         public List<ColorMap> getListColorMapDynamique() throws PersistanceException { 
     231/*      public List<ColorMap> getListColorMapDynamique() throws PersistanceException { 
    224232                String sql = " select distinct clm_id, clm_name"  
    225                            + " from class_map " 
    226                            + " where clm_name ilike '%exponential%' or clm_name ilike '%linear%' or clm_name ilike '%logarithm%' order by clm_name;"; 
    227                  
    228                  
    229                  
    230                 Statement requete = null; 
    231                 ResultSet resultat = null; 
    232                 Connection conn = getConnection(); 
    233                  
    234                 LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, " récupération liste de colortab " + sql); 
     233                           + " from class_map order by clm_id"; 
     234                           //+ " where clm_name like '%exponential%' or clm_name like '%linear%' or clm_name like '%logarithm%' order by clm_name;"; 
     235                 
     236                 
     237                Statement requete = null; 
     238                ResultSet resultat = null; 
     239                Connection conn = getConnection(); 
     240                 
     241//              LoggerPerso.log(ColorTabDAOjdbc.class, LoggerPerso.DEBUG, " récupération liste de colortab " + sql); 
    235242                 
    236243                try { 
     
    246253                try { 
    247254                        while (resultat.next()) { 
    248                                 liste_colormap.add(new ColorMap(resultat.getLong("cm_id"), resultat.getString("cm_name"), 0)); 
     255                                liste_colormap.add(new ColorMap(resultat.getLong("clm_id"), resultat.getString("clm_name"), 0)); 
    249256                        } 
    250257                } 
     
    257264                 
    258265                return liste_colormap; 
    259         } 
     266        }*/ 
    260267 
    261268} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/FactoryDAOjdbc.java

    r68 r70  
    44import org.medias.eccad.persistance.dao.GrilleDAO; 
    55import org.medias.eccad.persistance.dao.ParametreDAO; 
     6import org.medias.eccad.persistance.dao.SecteurDAO; 
    67import org.medias.eccad.persistance.dao.ProduitDAO; 
    78 
     
    2425                return new ParametreDAOjdbc(sgbd); 
    2526        } 
     27         
     28        public SecteurDAO getSecteurDAO() { 
     29                return new SecteurDAOjdbc(sgbd); 
     30        } 
    2631 
    2732        public ProduitDAO getProduitDAO() { 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/GeneriqueDAOjdbc.java

    r68 r70  
    44import java.sql.SQLException; 
    55 
    6  
    7 import org.medias.eccad.helpers.LoggerPerso; 
    86import org.medias.eccad.persistance.exception.PersistanceException; 
    97 
     
    4038                        throw new PersistanceException(sqle, "impossible de se connecter au sgbd :: ParametreDAOjdbc.getListParametre"); 
    4139                } 
    42                 LoggerPerso.log(GeneriqueDAOjdbc.class, LoggerPerso.DEBUG, "-- jdbc connexion -- "); 
    4340                return conn; 
    4441        } 
    4542         
    4643        protected void closeConnection() { 
    47                 LoggerPerso.log(GeneriqueDAOjdbc.class, LoggerPerso.DEBUG, "-- jdbc deconnexion -- "); 
    4844                sgbd.deconnexion(); 
    4945        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/GrilleDAOjdbc.java

    r68 r70  
    22 
    33import java.sql.Connection; 
     4import java.sql.Date; 
    45import java.sql.ResultSet; 
    56import java.sql.SQLException; 
    67import java.sql.Statement; 
     8import java.util.ArrayList; 
     9import java.util.Collections; 
    710import java.util.LinkedList; 
    811import java.util.List; 
    912 
    10  
    1113import org.medias.eccad.helpers.Donnees; 
    12 import org.medias.eccad.helpers.LoggerPerso; 
    1314import org.medias.eccad.modele.Grille; 
    1415import org.medias.eccad.persistance.jdbc.SGBD_jdbc; 
     
    2829        } 
    2930         
    30         public List<Grille> getListGrille(long id_produit,long id_parametre, String date_debut, String date_fin)  throws PersistanceException{ 
     31        public List<Grille> getListGrille(long id_produit,long id_parametre, long id_secteur, long id_rcp, String date_debut, String date_fin, String nomProd, String legend, String typeProd)  throws PersistanceException{ 
     32                Statement requete; 
     33                String sql; 
     34                List<Grille> liste_gril = new LinkedList<Grille>(); 
     35                Connection conn = getConnection(); 
     36 
     37                try { 
     38                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     39                        sql = "select distinct date_grille, id_grille, legend_code, number_code" + 
     40                                        " from grille" + 
     41                                        " left join code on ((id_grille = num_code) and (grille.id_codification = code.id_codification))" + 
     42                                        " where id_produit = "+id_produit+" and id_param = "+id_parametre; 
     43                        if (nomProd.equals("IPCC")) { 
     44                                if (id_secteur > 0) { 
     45                                        sql+=" and id_secteur="+id_secteur;                                      
     46                                } 
     47                                if (id_rcp > 0 ) { 
     48                                        sql+=" and id_rcp="+id_rcp; 
     49                                } else { 
     50                                        sql+=" and id_rcp is null"; 
     51                                } 
     52                                if (legend != null) { 
     53                                        sql+=" and legend_code = '"+legend+"'"; 
     54                                } 
     55                        } 
     56                        if (date_debut != null) { 
     57                                sql += " and date_grille >= '" + date_debut + "' and date_grille <= '" + date_fin + "'"; 
     58                                if (typeProd.equals("monoplan")) { 
     59                                        sql += " order by id_grille, number_code"; 
     60                                } else { 
     61                                        sql += " order by date_grille, number_code"; 
     62                                } 
     63                        } else { 
     64                                sql += " order by id_grille"; 
     65                        } 
     66                        sql += ";"; 
     67//LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::requete grille :: " + sql); 
     68                        ResultSet resultat = requete.executeQuery(sql); 
     69                         
     70                        Date date; 
     71                        long idGrille, idGrillePrec = 0; 
     72                        String datePrec = ""; 
     73                        int numberCode; 
     74                        // NB: On ne stocke qu'une seule grille : 
     75                        // - par plan (dans le cas d'un produit multiplan) 
     76                        // - par date (dans le cas d'un produit temporel) 
     77                        // - par masque (dans le cas d'un produit monoplan) 
     78                        while (resultat.next()) { 
     79                                date = resultat.getDate("date_grille"); 
     80                                idGrille = resultat.getLong("id_grille"); 
     81                                numberCode = resultat.getInt("number_code"); 
     82                                if (typeProd.equals("multiplan") ||  
     83                                        !date.toString().equals(datePrec) ||  
     84                                        (typeProd.equals("monoplan") && idGrille != idGrillePrec)) { 
     85                                        // Cas monoplan: on place la grille contenant l'ensemble des masques en premiÚre position 
     86//                                      if (typeProd.equals("monoplan") && numberCode == 0) { 
     87//                                              liste_gril.add(0,new Grille(idGrille, date, resultat.getString("legend_code"),numberCode)); 
     88//                                      } else { 
     89                                                liste_gril.add(new Grille(idGrille, date, resultat.getString("legend_code"),numberCode)); 
     90//                                      } 
     91                                } 
     92                                datePrec = date.toString(); 
     93                                idGrillePrec = idGrille; 
     94                        } 
     95                        // Pour un produit monoplan, on trie les grilles par numéro de code 
     96                        if (typeProd.equals("monoplan")) { 
     97                                Collections.sort(liste_gril,new Grille().new ComparatorNumberCode()); 
     98                        } 
     99                } 
     100                catch (SQLException sqle) { 
     101                        throw new PersistanceException(sqle, "erreur lors de l'execution de la requete :: GrilleDAOjdbc.getListGrille"); 
     102                } 
     103                finally { 
     104                        closeConnection(); 
     105                } 
     106//System.out.println("nbgrilles="+liste_gril.size()); 
     107                return liste_gril; 
     108        } 
     109 
     110        public List<Grille> getListGrille(long id_produit, String date_debut, String date_fin)  throws PersistanceException{ 
    31111                Statement requete; 
    32112                String sql; 
     
    36116                try { 
    37117                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    38                         sql = "select distinct id_grille, valeurs_grille, date_grille, legend_code from grille left join code on ((id_grille = num_code) and (grille.id_codification = code.id_codification)) where id_produit = " + id_produit+" and id_param = "+id_parametre; 
     118                        sql = "select distinct id_grille, valeurs_grille, date_grille, legend_code, number_code from grille" + 
     119//                              " inner join codification using (id_codification)" + 
     120//                              " inner join type_codification using (id_typecodification)" + 
     121                                " left join code on ((id_grille = num_code)" + 
     122                                " and (grille.id_codification = code.id_codification)) where id_produit = " + id_produit; 
     123//                              " inner join codification using (id_codification) left join code using (id_codification)" + 
     124//                              " where id_produit = " + id_produit; 
    39125                         
    40126                        if (date_debut != null) 
    41                                 sql += " and date_grille >= '" + date_debut + "' and date_grille <= '" + date_fin + "' order by date_grille"; 
     127                                sql += " and date_grille >= '" + date_debut + "' and date_grille <= '" + date_fin + "' order by date_grille, number_code"; 
    42128                        else 
    43                                 sql += " order by id_grille"; 
     129                                sql += " order by number_code, id_grille"; 
    44130                         
    45131                        sql += ";"; 
    46132                         
    47                         LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::requete :: " + sql); 
     133//                      LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille2::requete :: " + sql); 
    48134                        ResultSet resultat = requete.executeQuery(sql); 
    49135                         
    50136                        while (resultat.next()) { 
    51                                 liste_param.add(new Grille(resultat.getLong("id_grille"), resultat.getDate("date_grille"), resultat.getString("legend_code"))); 
     137                                liste_param.add(new Grille(resultat.getLong("id_grille"), resultat.getDate("date_grille"), resultat.getString("legend_code"), resultat.getInt("number_code"))); 
    52138                        } 
    53139                } 
     
    58144                        closeConnection(); 
    59145                } 
    60                          
    61                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::taille::"+liste_param.size() + "id_produit::" + id_produit); 
     146 
     147//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::taille::"+liste_param.size() + "id_produit::" + id_produit); 
    62148                return liste_param; 
    63149        } 
    64150 
    65          
    66          
    67         public List<Grille> getListGrille(long id_produit, String date_debut, String date_fin)  throws PersistanceException{ 
    68                 Statement requete; 
    69                 String sql; 
    70                 List<Grille> liste_param = new LinkedList<Grille>(); 
    71                 Connection conn = getConnection(); 
    72                  
    73                 try { 
    74                         requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    75                         sql = "select distinct id_grille, valeurs_grille, date_grille, legend_code from grille left join code on ((id_grille = num_code) and (grille.id_codification = code.id_codification)) where id_produit = " + id_produit; 
    76                          
     151        public List<String> getListAlt(long id_secteur, String date_debut) throws PersistanceException{ 
     152                Statement requete; 
     153                String sql; 
     154                List<String> liste_alt = new LinkedList<String>(); 
     155                Connection conn = getConnection(); 
     156 
     157                try { 
     158                        // On récupÚre les altitudes 
     159                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     160                        //sql = "select distinct cast(legend_code as decimal) as altitude from grille" + 
     161                        sql = "select distinct legend_code, number_code from grille" + 
     162                                        " left join code on ((id_grille = num_code) and (grille.id_codification = code.id_codification))" + 
     163                                        " where id_secteur = "+id_secteur; 
    77164                        if (date_debut != null) 
    78                                 sql += " and date_grille >= '" + date_debut + "' and date_grille <= '" + date_fin + "' order by date_grille"; 
    79                         else 
    80                                 sql += " order by id_grille"; 
    81                          
    82                         sql += ";"; 
    83                          
    84                         LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::requete :: " + sql); 
    85                         ResultSet resultat = requete.executeQuery(sql); 
    86                          
     165                                sql += " and date_grille = '" + date_debut+"'"; 
     166                        sql += " order by number_code;"; 
     167                        ResultSet resultat = requete.executeQuery(sql); 
    87168                        while (resultat.next()) { 
    88                                 liste_param.add(new Grille(resultat.getLong("id_grille"), resultat.getDate("date_grille"), resultat.getString("legend_code"))); 
    89                         } 
    90                 } 
    91                 catch (SQLException sqle) { 
    92                         throw new PersistanceException(sqle, "erreur lors de l'execution de la requete :: GrilleDAOjdbc.getListGrille"); 
    93                 } 
    94                 finally { 
    95                         closeConnection(); 
    96                 } 
    97                          
    98                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListGrille::taille::"+liste_param.size() + "id_produit::" + id_produit); 
    99                 return liste_param; 
    100         } 
    101  
    102          
    103          
     169                                liste_alt.add(resultat.getString("legend_code")); 
     170                        } 
     171                } 
     172                catch (SQLException sqle) { 
     173                        throw new PersistanceException(sqle, "erreur lors de l'execution de la requete :: GrilleDAOjdbc.getListAlt"); 
     174                } 
     175                finally { 
     176                        closeConnection(); 
     177                } 
     178                return liste_alt; 
     179        } 
     180 
     181        public List<Grille> getListMasques(String codifMasque) throws PersistanceException{ 
     182                Statement requete; 
     183                String sql; 
     184                List<Grille> liste_reg = new LinkedList<Grille>(); 
     185                Connection conn = getConnection(); 
     186 
     187                try { 
     188                        // On récupÚre les régions 
     189                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     190                        sql = "select distinct legend_code, number_code, id_grille from grille" + 
     191                        " inner join codification using (id_codification) left join code on (id_grille = num_code)" + 
     192                        " where nom_codification = '"+codifMasque+"' order by id_grille, number_code;"; 
     193                        ResultSet resultat = requete.executeQuery(sql); 
     194                        long idGrille, idGrillePrec = 0; 
     195                        while (resultat.next()) { 
     196                                idGrille = resultat.getLong("id_grille"); 
     197                                if (idGrille != idGrillePrec) { 
     198                                        liste_reg.add(new Grille(idGrille, null, resultat.getString("legend_code"),resultat.getInt("number_code"))); 
     199                                } 
     200                                idGrillePrec = idGrille; 
     201                        } 
     202                        Collections.sort(liste_reg,new Grille().new ComparatorNumberCode()); 
     203                } 
     204                catch (SQLException sqle) { 
     205                        throw new PersistanceException(sqle, "erreur lors de l'execution de la requete :: GrilleDAOjdbc.getListAlt"); 
     206                } 
     207                finally { 
     208                        closeConnection(); 
     209                } 
     210                return liste_reg; 
     211        } 
    104212         
    105213        public float[][] getGrilleValue(int oid) throws PersistanceException { 
     
    184292                try { 
    185293                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    186                         sql = " select name_typeCodification" +""  
     294                        sql = " select name_typecodification" 
    187295                                + " from grille join codification using (id_codification)" 
    188296                                + " join typecodification using (id_typeCodification) where id_grille = " + id_grille + ";"; 
    189297                         
    190298                        ResultSet resultat = requete.executeQuery(sql); 
    191                         LoggerPerso.log(GrilleDAOjdbc.class, LoggerPerso.DEBUG, "getCodification :: " + sql);    
     299//                      LoggerPerso.log(GrilleDAOjdbc.class, LoggerPerso.DEBUG, "getCodification :: " + sql);    
    192300                        if (resultat.next()) { 
    193301                                codification = resultat.getString("name_typeCodification").toLowerCase(); 
     
    216324                         
    217325                        ResultSet resultat = requete.executeQuery(sql); 
    218                         LoggerPerso.log(GrilleDAOjdbc.class, LoggerPerso.DEBUG, "getCodification :: " + sql);    
     326//                      LoggerPerso.log(GrilleDAOjdbc.class, LoggerPerso.DEBUG, "getCodification :: " + sql);    
    219327                        if (resultat.next()) { 
    220328                                date = resultat.getString("date_grille").toLowerCase(); 
     
    237345 
    238346        public Grille getGrille(long id_grille) throws PersistanceException { 
    239                 String sql = "select * from grille where id_grille = " + id_grille + ";"; 
     347                 
     348                String sql = "select * from grille"; 
     349                sql += " left join code on id_grille = num_code"; 
     350                sql += " where id_grille = " + id_grille + ";"; 
    240351                Statement requete; 
    241352                Connection conn = getConnection(); 
     
    252363                                grille.setId_param(resultat.getLong("id_param")); 
    253364                                grille.setId_produit(resultat.getLong("id_produit")); 
     365                                grille.setId_secteur(resultat.getLong("id_secteur")); 
     366                                grille.setId_rcp(resultat.getLong("id_rcp")); 
     367                                grille.setLegend(resultat.getString("legend_code")); 
    254368                        } 
    255369                } 
     
    275389                        if (resultat.next()) { 
    276390                                resol = (float)360/resultat.getLong("ncol_grille"); 
    277                                 resultat.getLong("nlign_grille"); 
     391                        //      resultat.getLong("nlign_grille"); 
    278392                        } 
    279393                } 
     
    299413                        if (resultat.next()) { 
    300414                                resol = (float)360/resultat.getLong("ncol_grille"); 
    301                                 resultat.getLong("nlign_grille"); 
     415//                              resultat.getLong("nlign_grille"); 
    302416                        } 
    303417                } 
     
    310424                return resol; 
    311425        } 
    312          
    313          
     426 
     427        public String getTypeCodif(long idGrille) throws PersistanceException { 
     428                String sql = "select name_typecodification from grille" + 
     429                                " inner join codification using (id_codification)" + 
     430                                " inner join typecodification using (id_typecodification)" + 
     431                                " where id_grille = " + idGrille + ";"; 
     432                Statement requete; 
     433                Connection conn = getConnection(); 
     434                String typeCodif = null; 
     435                try { 
     436                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     437                         
     438                         
     439                        ResultSet resultat = requete.executeQuery(sql); 
     440                                 
     441                        if (resultat.next()) { 
     442                                typeCodif = resultat.getString("name_typecodification"); 
     443                        } 
     444                } 
     445                catch (SQLException sqle) { 
     446                        throw new PersistanceException(sqle, "getTypeCodif " + sql); 
     447                } 
     448                finally { 
     449                        closeConnection(); 
     450                } 
     451                return typeCodif; 
     452        } 
     453 
     454        public ArrayList<String> getDates(long idProduit, long idParametre,     long idSecteur, long idRcp, String nomProd) throws PersistanceException { 
     455                Statement requete; 
     456                String sql; 
     457                ArrayList<String> dates = new ArrayList<String>(); 
     458                Connection conn = getConnection(); 
     459 
     460                try { 
     461                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
     462//                      sql = "select min(date_grille) as min, max(date_grille) as max from grille" + 
     463                        sql = "select min(date_grille) as min, (cast(max(date_grille+deltadate_grille) as date)-1) as max, min(deltadate_grille) as delta from grille" + 
     464                                " where id_produit = "+idProduit+" and id_param = "+idParametre; 
     465                        if (nomProd.equals("IPCC")) { 
     466                                if (idSecteur > 0) { 
     467                                        sql+=" and id_secteur="+idSecteur;                                       
     468                                } 
     469                                if (idRcp > 0 ) { 
     470                                        sql+=" and id_rcp="+idRcp; 
     471                                } else { 
     472                                        sql+=" and id_rcp is null"; 
     473                                } 
     474                        } 
     475                        sql += ";"; 
     476                        ResultSet resultat = requete.executeQuery(sql); 
     477                        if (resultat.next()) { 
     478                                dates.add(resultat.getDate("min").toString()); 
     479                                dates.add(resultat.getDate("max").toString()); 
     480                                dates.add(resultat.getString("delta")); 
     481                        } 
     482                } 
     483                catch (SQLException sqle) { 
     484                        throw new PersistanceException(sqle, "erreur lors de l'execution de la requete :: GrilleDAOjdbc.getDates"); 
     485                } 
     486                finally { 
     487                        closeConnection(); 
     488                } 
     489                return dates; 
     490        } 
    314491} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/ParametreDAOjdbc.java

    r68 r70  
    99import java.util.List; 
    1010 
    11  
    12 import org.medias.eccad.helpers.LoggerPerso; 
    1311import org.medias.eccad.modele.Parametre; 
    1412import org.medias.eccad.persistance.jdbc.SGBD_jdbc; 
     
    6260                } 
    6361                 
    64                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListParametre::taille::"+liste_param.size()); 
     62//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListParametre::taille::"+liste_param.size()); 
    6563 
    6664                return liste_param; 
     
    8482                try { 
    8583                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    86                         sql = "select distinct id_param, fullname_param, shortname_param, order_param from parametre join grille using (id_param) join produit using (id_produit) join typeproduit using (id_typeproduit) where id_categorieparametre= "+id_CatParam+" and name_typeproduit not ilike 'array' order by order_param;"; 
    87                          
     84//                      sql = "select distinct id_param, fullname_param, shortname_param, order_param from parametre" + 
     85//                                      " join grille using (id_param) join produit using (id_produit)" + 
     86//                                      " join typeproduit using (id_typeproduit)" + 
     87//                                      " where id_categorieparametre= "+id_CatParam+ 
     88//                                      " and name_typeproduit not ilike 'array' order by order_param;"; 
     89                        sql = "select distinct id_param, fullname_param, shortname_param, order_param from parametre" + 
     90                        " where id_param in (select id_param from grille join produit using (id_produit)" + 
     91                        " join typeproduit using (id_typeproduit)" + 
     92                        " where name_typeproduit not ilike 'array')" + 
     93                        " and id_categorieparametre="+id_CatParam+" order by order_param;"; 
    8894                        resultat = requete.executeQuery(sql); 
    8995                 
    9096                         
    9197                        while (resultat.next()) { 
    92                                 if (resultat.getString("shortname_param").equals("NULL")) 
     98                                if (resultat.getString("shortname_param").equals("NULL") || resultat.getString("shortname_param").equals("")) 
    9399                                        liste_param.add(new Parametre(resultat.getInt("id_param"), resultat.getString("fullname_param"))); 
    94100                                else 
     
    103109                } 
    104110                 
    105                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListParametre::taille::"+liste_param.size()); 
     111//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListParametre::taille::"+liste_param.size()); 
    106112 
    107113                return liste_param; 
     
    126132                try { 
    127133                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    128                         sql = "select distinct id_param, fullname_param, shortname_param, order_param, shortName_unite from parametre join unite using (id_unite) where id_param = " + id_param + " order by order_param;"; 
    129                         LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "sql getParametreById="+sql); 
     134                        sql = "select distinct id_param, fullname_param, shortname_param, order_param, shortName_unite, clm_default_id, scl_default_id" + 
     135                                        " from parametre p" + 
     136                                        " inner join unite using (id_unite)" + 
     137                                        " where id_param = " + id_param + " order by order_param;"; 
    130138                         
    131139                        ResultSet resultat = requete.executeQuery(sql); 
    132140                         
    133141                        if (resultat.next()) { 
    134                                 param = new Parametre(resultat.getInt("id_param"), resultat.getString("fullname_param"), resultat.getString("shortname_param"),resultat.getString("order_param")); 
     142                                param = new Parametre(resultat.getInt("id_param"), resultat.getString("fullname_param") 
     143                                                , resultat.getString("shortname_param"),resultat.getString("order_param")); 
    135144                                param.setUnite(resultat.getString("shortName_unite")); 
     145                                param.setColormapDefault(resultat.getInt("clm_default_id")); 
     146                                param.setClassdisDefault(resultat.getInt("scl_default_id")); 
    136147                        } 
    137148                } 
     
    142153                        closeConnection(); 
    143154                } 
    144                          
    145                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
     155 
     156//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
    146157 
    147158                return param; 
     
    159170                try { 
    160171                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    161                         sql = "select distinct id_param, fullname_param, shortname_param, order_param, shortName_unite from parametre join grille using (id_param) join unite using (id_unite) where id_grille = " + id_grille + " order by order_param;"; 
     172                        sql = "select distinct id_param, fullname_param, shortname_param, order_param, shortname_unite from parametre join grille using (id_param) join unite using (id_unite) where id_grille = " + id_grille + " order by order_param;"; 
    162173                         
    163174                        ResultSet resultat = requete.executeQuery(sql); 
     
    168179                                String unite = null; 
    169180                                try { 
    170                                          temp = resultat.getString("shortName_unite").getBytes("ISO-8859-1"); 
    171                                 } catch (UnsupportedEncodingException e) {      } 
     181                                         temp = resultat.getString("shortname_unite").getBytes("ISO-8859-1"); 
     182                                } catch (UnsupportedEncodingException e) {e.printStackTrace();} 
    172183                                 
    173184                                if (temp != null) 
     
    182193                        closeConnection(); 
    183194                } 
    184                          
    185                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
     195 
     196//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
    186197 
    187198                return param; 
     
    213224                        closeConnection(); 
    214225                } 
    215                          
    216                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
     226 
     227//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getParametreById::nom::"+ param.getNom()); 
    217228 
    218229                return param; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/ProduitDAOjdbc.java

    r68 r70  
    1010 
    1111import org.medias.eccad.helpers.CharactereHelper; 
    12 import org.medias.eccad.helpers.LoggerPerso; 
    1312import org.medias.eccad.modele.Produit; 
    1413import org.medias.eccad.persistance.jdbc.SGBD_jdbc; 
     
    3433                try { 
    3534                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    36                         sql = "select distinct id_produit, title_produit, begintime_produit, endtime_produit, header_produit from produit join grille using (id_produit) where id_param = " + id_param + ";"; 
    37                          
     35                        sql = "select distinct id_produit, title_produit, begintime_produit, endtime_produit, header_produit, order_produit from produit join grille using (id_produit) where id_param = " + id_param + " order by order_produit;"; 
    3836                        ResultSet resultat = requete.executeQuery(sql); 
    3937                         
     
    5553                } 
    5654                 
    57                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListProduit::taille::"+liste_param.size()+"\nSQL::" + sql); 
    5855                return liste_param; 
    5956        } 
     
    8986                try { 
    9087                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    91                         sql = "select distinct id_produit, title_produit, begintime_produit, endtime_produit, header_produit, temporalRes_produit, name_typeproduit from produit join typeproduit using (id_typeproduit) where id_produit = " + id_produit + ";"; 
     88                        sql = "select distinct id_produit, title_produit, begintime_produit" + 
     89                                        ", endtime_produit, header_produit, temporalRes_produit, name_typeproduit" + 
     90                                        ", textcitation_produit, useconst_produit, informpub_produit" + 
     91                                        " from produit join typeproduit using (id_typeproduit)" + 
     92                                        " where id_produit = " + id_produit + ";"; 
    9293                         
    9394                        ResultSet resultat = requete.executeQuery(sql); 
     
    101102                                produit.setTemporalres(CharactereHelper.getEncodage(resultat.getString("temporalRes_produit"), "ISO-8859-1")); 
    102103                                produit.setType(CharactereHelper.getEncodage(resultat.getString("name_typeproduit"), "ISO-8859-1")); 
     104                                produit.setCitation(CharactereHelper.getEncodage(resultat.getString("textcitation_produit"), "ISO-8859-1")); 
     105                                produit.setUseconst(CharactereHelper.getEncodage(resultat.getString("useconst_produit"), "ISO-8859-1")); 
     106                                produit.setInformpub(CharactereHelper.getEncodage(resultat.getString("informpub_produit"), "ISO-8859-1")); 
    103107                        } 
    104108                } 
     
    109113                        closeConnection(); 
    110114                } 
    111                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
     115//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getProduitById::nom::"+ produit.getNom() + "::date::" + produit.getBeginDate()); 
    112116 
    113117                return produit; 
     
    122126                try { 
    123127                        requete = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); 
    124                         sql = "select distinct id_produit, title_produit, begintime_produit, endtime_produit, header_produit from produit join lienproduit using (id_produit) "; 
     128                        sql = "select distinct id_produit, title_produit, begintime_produit, endtime_produit, header_produit from produit join lienproduit using (id_produit)"; 
    125129                         
    126130                        if (id_produit != null) { 
     
    149153                } 
    150154                 
    151                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListProductByLink::taille::"+liste_produit.size()); 
     155//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "getListProductByLink::taille::"+liste_produit.size()); 
    152156                return liste_produit; 
    153157        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/jdbc/SGBD_jdbc.java

    r68 r70  
    1616        public SGBD_jdbc(InfoConnectBean n_info) { 
    1717                con = null; 
    18                 LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "construction connection"); 
     18//              LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "construction connection"); 
    1919                if (pooling == null) { 
    2020                        info = n_info; 
    21                         LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "creation pooling :: " + info); 
     21//                      LoggerPerso.log(SGBD_jdbc.class, LoggerPerso.DEBUG, "creation pooling :: " + info); 
    2222                        pooling = new PGPoolingDataSource(); 
    2323                        pooling.setDatabaseName(info.getDb_name()); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/test/MainTest.java

    r68 r70  
    11package org.medias.eccad.persistance.test; 
    22 
    3 import java.util.List; 
    43 
    54import org.medias.eccad.helpers.SpringBeanFactory; 
    6 import org.medias.eccad.modele.Grille; 
    75import org.medias.eccad.persistance.exception.PersistanceException; 
    86import org.medias.eccad.persistance.jdbc.GrilleTestjdbc; 
     
    1715                //system.out.println(System.currentTimeMillis()); 
    1816                GrilleTestjdbc grilletest = (GrilleTestjdbc) SpringBeanFactory.getXmlFactory("test").getBean("grilleDAO"); 
    19                 List<Grille> liste = grilletest.getListGrille(27,3, "2003-11-01", "2008-01-01"); 
     17//              List<Grille> liste = grilletest.getListGrille(27,3, "2003-11-01", "2008-01-01"); 
    2018                //system.out.println(System.currentTimeMillis()); 
    2119                //system.out.println(liste.size()); 
    2220                grilletest.connection(); 
    2321                 
    24                 for (Grille grille : liste) { 
     22//              for (Grille grille : liste) { 
    2523                        //grilletest.getGrilleValue(grille.getOid()); 
    26                 } 
     24//              } 
    2725                //system.out.println(System.currentTimeMillis()); 
    2826                grilletest.disconnect(); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/test/TestColorTabDAO.java

    r68 r70  
    11package org.medias.eccad.persistance.test; 
    2  
    3 import java.util.List; 
    4  
    5 import org.medias.eccad.helpers.SpringBeanFactory; 
    6 import org.medias.eccad.modele.ColorMap; 
    7 import org.medias.eccad.modele.ColorTab; 
    8 import org.medias.eccad.persistance.dao.CodeDAO; 
    9 import org.medias.eccad.persistance.dao.ColorTabDAO; 
    10 import org.medias.eccad.persistance.exception.PersistanceException; 
    112 
    123import junit.framework.TestCase; 
     
    1910 
    2011        public void testGetColorMapByGrille() { 
    21                 ColorTabDAO colortabDAO = (ColorTabDAO) SpringBeanFactory.getXmlFactory("test").getBean("colorTabDAO"); 
    22                 ColorTab colortab = null; 
    23                 try { 
    24                         colortab = colortabDAO.getColorMapByGrille(845767287); 
    25                 } catch (PersistanceException e) { 
     12//              ColorTabDAO colortabDAO = (ColorTabDAO) SpringBeanFactory.getXmlFactory("test").getBean("colorTabDAO"); 
     13//              ColorTab colortab = null; 
     14//              try { 
     15//                      colortab = colortabDAO.getColorMapByGrille(845767287); 
     16//              } catch (PersistanceException e) { 
    2617                        // TODO Auto-generated catch block 
    27                         e.printStackTrace(); 
    28                 } 
     18//                      e.printStackTrace(); 
     19//              } 
    2920                //system.out.println(colortab.toString()); 
    3021        } 
    3122 
    3223        public void testGetListColorMapByGrille() { 
    33                 ColorTabDAO colortabDAO = (ColorTabDAO) SpringBeanFactory.getXmlFactory("test").getBean("colorTabDAO"); 
    34                 List<ColorMap> colortab = null; 
    35                 try { 
    36                         colortab = colortabDAO.getListColorTabByGrille(10); 
    37                 } catch (PersistanceException e) { 
     24//              ColorTabDAO colortabDAO = (ColorTabDAO) SpringBeanFactory.getXmlFactory("test").getBean("colorTabDAO"); 
     25//              List<ColorMap> colortab = null; 
     26//              try { 
     27//                      colortab = colortabDAO.getListColorTabByGrille(10); 
     28//              } catch (PersistanceException e) { 
    3829                        // TODO Auto-generated catch block 
    39                         e.printStackTrace(); 
    40                 } 
     30//                      e.printStackTrace(); 
     31//              } 
    4132                 
    4233                //system.out.println(colortab.size()); 
     
    4536         
    4637        public void testGetCode() { 
    47                 CodeDAO codedao = (CodeDAO) SpringBeanFactory.getXmlFactory("test").getBean("codeDAO"); 
    48                 List<String> codes = null; 
     38//              CodeDAO codedao = (CodeDAO) SpringBeanFactory.getXmlFactory("test").getBean("codeDAO"); 
     39//              List<String> codes = null; 
    4940         
    50                 try { 
    51                         codes = codedao.getListCodeByGrille(845767287); 
    52                 } catch (PersistanceException e) { 
     41//              try { 
     42//                      codes = codedao.getListCodeByGrille(845767287); 
     43//              } catch (PersistanceException e) { 
    5344                // TODO Auto-generated catch block 
    54                 e.printStackTrace(); 
    55         } 
     45//              e.printStackTrace(); 
     46//      } 
    5647        //system.out.println(codes.toString()); 
    5748        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/test/TestMetierDessin.java

    r68 r70  
    11package org.medias.eccad.persistance.test; 
    22 
    3  
    4 import org.medias.eccad.helpers.LoggerPerso; 
    5 import org.medias.eccad.metier.ServiceMetier; 
    6 import org.medias.eccad.modele.Zone; 
    73 
    84import junit.framework.TestCase; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/test/TestPerformance.java

    r68 r70  
    11package org.medias.eccad.persistance.test; 
    22 
    3 import java.sql.Date; 
    4 import java.util.GregorianCalendar; 
    5 import java.util.List; 
    6  
    73import org.medias.eccad.helpers.SpringBeanFactory; 
    8 import org.medias.eccad.modele.Grille; 
    94import org.medias.eccad.persistance.exception.PersistanceException; 
    105import org.medias.eccad.persistance.jdbc.GrilleTestjdbc; 
     
    2318                //system.out.println(System.currentTimeMillis()); 
    2419                GrilleTestjdbc grilletest = (GrilleTestjdbc) SpringBeanFactory.getXmlFactory("test").getBean("grilleDAO"); 
    25                 List<Grille> liste = grilletest.getListGrille(27,3, "2003-11-01", "2008-01-01"); 
     20//              List<Grille> liste = grilletest.getListGrille(27,3, "2003-11-01", "2008-01-01"); 
    2621                //system.out.println(System.currentTimeMillis()); 
    2722                //system.out.println(liste.size()); 
    2823                grilletest.connection(); 
    2924                 
    30                 for (Grille grille : liste) { 
     25//              for (Grille grille : liste) { 
    3126                        //grilletest.getGrilleValue(grille.getId_grille()); 
    32                 } 
     27//              } 
    3328                //system.out.println(System.currentTimeMillis()); 
    3429                grilletest.disconnect(); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/test/TestServiceMetadata.java

    r68 r70  
    11package org.medias.eccad.persistance.test; 
    2  
    3 import org.medias.eccad.metier.ServiceMetadata; 
    42 
    53import junit.framework.TestCase; 
     
    1311 
    1412        public void testGetXMLTransformResult() { 
    15                 ServiceMetadata service_meta = new ServiceMetadata(); 
    16                         String xml = service_meta.getXmlMetadata(4); 
     13//              ServiceMetadata service_meta = new ServiceMetadata(); 
     14//                      String xml = service_meta.getXmlMetadata(4); 
    1715                //system.out.println(xml); 
    1816                //system.out.println(service_meta.getXMLTransformResult(xml, "metadata.xslt")); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/persistance/test/TestXmlDAOhibernate.java

    r68 r70  
    11package org.medias.eccad.persistance.test; 
    22 
    3 import org.medias.eccad.persistance.dao.XmlDAO; 
    4 import org.medias.eccad.persistance.hibernate.XmlDAOhibernate; 
    53 
    64import junit.framework.TestCase; 
     
    1311 
    1412        public void testGetXmlByProduit() { 
    15                 XmlDAO xmldao = new XmlDAOhibernate(); 
     13//              XmlDAO xmldao = new XmlDAOhibernate(); 
    1614                //system.out.println(xmldao.getXmlByProduit(4)); 
    1715        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/AbstractVueBean.java

    r68 r70  
    1010         */ 
    1111        protected void controleSession() { 
    12                 if (FacesContext.getCurrentInstance() == null) 
     12                if (FacesContext.getCurrentInstance() == null) { 
    1313                        throw new DeconnectionException(); 
    14                  
    15                 if (FacesContext.getCurrentInstance().getExternalContext() == null) 
     14                } 
     15                if (FacesContext.getCurrentInstance().getExternalContext() == null) { 
    1616                        throw new DeconnectionException(); 
    17                  
    18                 if ((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false) == null) 
     17                } 
     18                if ((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false) == null) { 
    1919                        throw new DeconnectionException(); 
    20                  
     20                } 
    2121                 
    2222                SessionBean sessionbean = (SessionBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("sessionBean"); 
    2323                 
    24                 if (sessionbean == null) 
     24                if (sessionbean == null) { 
    2525                        throw new DeconnectionException(); 
    26                  
    27                 if (sessionbean.getEmail() == null || sessionbean.getEmail() == "") 
     26                } 
     27                if (sessionbean.getEmail() == null || sessionbean.getEmail() == "") { 
    2828                        throw new DeconnectionException(); 
     29                } 
    2930        } 
    3031} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/CarteBean.java

    r68 r70  
    77import javax.faces.component.UIInput; 
    88import javax.faces.component.UIOutput; 
    9 import javax.faces.component.UISelectItem; 
    109import javax.faces.component.UISelectOne; 
    1110import javax.faces.context.FacesContext; 
     
    1514import javax.servlet.http.HttpSession; 
    1615 
    17  
    18 import org.medias.eccad.helpers.LoggerPerso; 
    1916import org.medias.eccad.metier.ServiceMetier; 
    2017import org.medias.eccad.metier.dessinCarte.ServiceCarte; 
    21 import org.medias.eccad.metier.generationRaster.ServiceRaster; 
    22 import org.medias.eccad.metier.statistique.ServiceStatistique; 
    2318import org.medias.eccad.modele.Parametre; 
    2419import org.medias.eccad.modele.Produit; 
     20import org.medias.eccad.modele.Rcp; 
     21import org.medias.eccad.modele.Secteur; 
    2522import org.medias.eccad.modele.StatReponse; 
     23import org.medias.eccad.modele.Visualisation; 
    2624import org.medias.eccad.modele.Zone; 
    27 import org.medias.eccad.persistance.dao.GrilleDAO; 
    28 import org.medias.eccad.persistance.exception.PersistanceException; 
    2925import org.medias.eccad.presentation.traducteur.TraducteurCarte; 
    30 import org.springframework.beans.factory.xml.XmlBeanFactory; 
    31  
    3226 
    3327public class CarteBean extends AbstractVueBean { 
    3428 
    35         private XmlBeanFactory xmlbean; 
    36          
     29//      private XmlBeanFactory xmlbean; 
     30 
    3731        private String url; 
    3832        private ServiceMetier smp; 
    3933        private ServiceCarte serv_carte; 
    4034        private String parametre; 
     35        private String secteur; 
     36        private String rcp; 
    4137        private String produit; 
    42         private Zone zone_affichee; 
     38        private String unite; 
     39        private Long colormapDefault; 
     40        private Long classdisDefault; 
     41        private Zone zone_demandee; 
     42        private Zone zone_visible; 
    4343        private Zone zone_click; 
    4444        private int clicX; 
     
    4646        private String visu; 
    4747        private String url_legend; 
    48          
     48 
    4949        private UIOutput northbc; 
    5050        private UIOutput southbc; 
    5151        private UIOutput eastbc; 
    5252        private UIOutput westbc; 
    53          
    54         private boolean gridOn; 
    55         private boolean statOn; 
    56          
     53 
     54//      private boolean gridOn; 
     55//      private boolean statOn; 
     56        private boolean showPosPixel; 
     57 
    5758        private List<SelectItem> liste_colormap; 
     59        private List<SelectItem> liste_classdis; 
    5860        private Long colormap_id; 
     61        private String colormap_txt; 
     62        private Long classdis_id; 
    5963        private UISelectOne colormapUI; 
    60          
     64        private UISelectOne classdisUI; 
     65 
     66        private List<SelectItem> liste_region; 
     67        private Long region; 
     68        private String regionName; 
     69        private UISelectOne regionUI; 
     70        private List<SelectItem> liste_country; 
     71        private Long country; 
     72        private String countryName; 
     73        private UISelectOne countryUI; 
     74         
     75        private String mode; 
     76        private UISelectOne modeUI; 
    6177        private String statistique; 
    6278        private UISelectOne statistiqueUI; 
     79        private String total; 
     80        private UISelectOne totalUI; 
     81        private List<SelectItem> liste_mask; 
     82        private String mask; 
     83        private UISelectOne maskUI; 
    6384         
    6485        private int nbrGrille; 
    65          
     86        public int nbrAlt; 
     87 
    6688        private String mapTitle; 
    6789        private UIOutput mapTitleUI; 
    68          
     90 
    6991        private double minParam; 
    7092        private UIInput minParamUI; 
    7193        private double maxParam; 
    7294        private UIInput maxParamUI; 
    73          
     95 
    7496        private Long nbrClasses; 
    7597        private UISelectOne nbrClassesUI; 
    76          
     98 
    7799        private double resolution; 
    78          
     100 
    79101        private String pixelCenter; 
    80         private double centerLat; 
    81         private double centerLon; 
     102        private String centerLat; 
     103        private String centerLon; 
     104        private String globalSum; 
    82105        private double centerLatClick; 
    83106        private double centerLonClick; 
    84          
     107 
    85108        private UIOutput pixelCenterUI; 
    86          
    87  
     109 
     110        private String typeCodif; 
     111         
    88112        /** 
    89113         * Initialisation de la carte 
     
    92116        public CarteBean() { 
    93117                controleSession(); 
    94                 CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    95                 smp = critereBean.getSmp();      
     118                CritereBean critereBean = (CritereBean) ((HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     119                smp = critereBean.getSmp(); 
    96120                serv_carte = new ServiceCarte(); 
    97121                initStatistiqueList(); 
     
    101125                centerLatClick = 0; 
    102126                centerLonClick = 0; 
    103                  
    104127                nbrGrille = 0; 
    105         } 
    106          
     128                nbrAlt = 0; 
     129        } 
    107130 
    108131        /** 
     
    113136         */ 
    114137        public void dessinCarteInitiale(ActionEvent event) { 
    115                 CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    116                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "dessin initial"); 
    117                 Produit prod = smp.getProduitById(critereBean.getProduit().intValue()); 
     138                CritereBean critereBean = (CritereBean) ((HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     139                Produit prod = critereBean.getProduitbean(); 
    118140                initStatistiqueList(); 
    119                 critereBean.majGrille(); 
    120                 zone_affichee = new Zone(critereBean.getNorthbc(), critereBean.getSouthbc(), critereBean.getEastbc(), critereBean.getWestbc()); 
    121                 nbrGrille = critereBean.getListe_grille().size(); 
    122                  
    123                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "nbr grilles ="+nbrGrille); 
    124                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "id parametre="+critereBean.getParametre().intValue()); 
     141                zone_demandee = new Zone(critereBean.getNorthbc(), critereBean.getSouthbc(), critereBean.getEastbc(), critereBean.getWestbc()); 
    125142                // récupération des informations sur les données 
    126143                Parametre param = smp.getParametreById(critereBean.getParametre().intValue()); 
    127144                parametre = param.getNom(); 
     145                unite = param.getUnite(); 
     146                Secteur sect = smp.getSecteurById((critereBean.getSector()==null?0:critereBean.getSector().intValue())); 
     147                secteur = sect.getNom(); 
     148                Rcp rc = smp.getRcpById(critereBean.getRcp().intValue()); 
     149                rcp = rc.getNom(); 
     150                colormapDefault = new Long(param.getColormapDefault()); 
     151                classdisDefault = new Long(param.getClassdisDefault()); 
     152                critereBean.majAlt(secteur); 
     153                critereBean.majGrille(null); 
     154//System.out.println("init, date="+critereBean.getDate()+", alt="+critereBean.getAlt()+", grille="+critereBean.getGrille()); 
     155                nbrGrille = critereBean.getListe_grille().size(); 
     156                nbrAlt = (critereBean.getListe_alt()==null?0:critereBean.getListe_alt().size()-1); 
     157//LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "nbr grilles ="+nbrGrille); 
    128158                 
    129                 produit   = prod.getNom(); 
    130                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "produit="+produit); 
    131                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "produit type="+prod.getType()); 
    132                 visu = smp.getVisuByTypeProduct(prod.getType()).getPage_jsp(); 
    133                 majColorMap(-1); 
    134                  
    135                 if (statistiqueUI != null) 
    136                         statistiqueUI.setValue("none"); 
    137                 statistique = "none"; 
     159//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "secteur int value="+critereBean.getSector().intValue()); 
     160//              secteur=""; 
     161//              if ( critereBean.getSector().intValue() > 0 ) {  
     162//                      Secteur sec = smp.getSecteurById(critereBean.getSector().intValue()); 
     163//                      LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "id secteur="+critereBean.getSector().intValue()); 
     164//                      secteur = sec.getNom(); 
     165//              } 
     166 
     167                produit = prod.getNom(); 
     168//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "produit="+produit); 
     169//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG , "produit type="+prod.getType()); 
     170 
     171                Visualisation visual = smp.getVisuByTypeProduct(prod.getType()); 
     172                visu = visual.getPage_jsp(); 
     173                critereBean.majDayMonthYear(visual.getTraducteur()); 
     174                typeCodif = smp.getTypeCodif((critereBean.getGrille()==null?0:critereBean.getGrille().longValue())); 
     175                majColorMap(); 
     176                majClassDistribution(); 
     177//              statistique = "moyenneCarte"; 
     178//              if (statistiqueUI != null) 
     179//                      statistiqueUI.setValue(statistique); 
     180//              mode = "date"; 
     181//              if (modeUI != null) 
     182//                      modeUI.setValue(mode); 
     183                total = "totalYear"; 
     184                if (totalUI != null) 
     185                        totalUI.setValue(total); 
     186                if (critereBean.getGrille() == null) { 
     187                        url = "/images/nodata.png"; 
     188                } else { 
     189                        resolution = serv_carte.getResolution(critereBean.getGrille().longValue()); 
     190                } 
     191                majMask(); 
     192//              mask = "none"; 
     193//              if (maskUI != null) 
     194//                      maskUI.setValue(mask); 
     195                majMaskRegion(); 
     196                majMaskCountry(); 
    138197                dessinCarte(event); 
    139198        } 
    140199 
    141          
    142200        /** 
    143201         * Change le mode de visualisation de statistique en normal 
    144202         * @param event 
    145203         */ 
    146         public void stopStatistique(ActionEvent event) { 
    147                 initStatistiqueList(); 
    148                 majColorMap(-1); 
     204//      public void stopStatistique(ActionEvent event) { 
     205//              initStatistiqueList(); 
     206//              majColorMap(); 
     207//              majClassDistribution(); 
     208//              CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     209//              if (critereBean.getGrille() == null) 
     210//                      url = "/images/nodata.png"; 
     211//              else 
     212//                      setImageURL(false); 
     213//              clicX = -1; 
     214//              clicY = -1; 
     215//      } 
     216 
     217        /** 
     218         * permet de savoir s'il faut modifier les échelles 
     219         * @param a_tester 
     220         * @return 
     221         */ 
     222        private boolean testChangeScale(String a_tester) { 
     223                return (a_tester.equals("ecartCarte") || a_tester.equals("sommeCarte")  
     224                                || a_tester.equals("region") || a_tester.equals("country")); 
     225        } 
     226 
     227        /** 
     228         * Détermine le mode d'affichage sélectionné 
     229         * @param event 
     230         */ 
     231        public void selectMode(ValueChangeEvent event) { 
     232                if (modeUI.getValue().toString().equals("date")) { 
     233                        mode = "date"; 
     234                        changeGrille(null); 
     235                } else if (modeUI.getValue().toString().equals("stats")) { 
     236                        mode = "stats"; 
     237                        changeStatistique(null); 
     238                } else if (modeUI.getValue().toString().equals("totals")) { 
     239                        mode = "totals"; 
     240                        changeTotal(null); 
     241                } 
     242//              System.out.println("changemode="+mode); 
     243        } 
     244         
     245        /** 
     246         * Activer lors du changement de la statistique visualisé 
     247         * @param event 
     248         */ 
     249        public void changeStatistique(ValueChangeEvent event) { 
    149250                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    150                 if (critereBean.getGrille() == null)  
     251//              majColorMap(); 
     252                if (event != null) { 
     253                        statistique = (String)event.getNewValue(); 
     254                } 
     255                if (testChangeScale(statistique)) { 
     256                        majClassDistributionStat(); 
     257                } else { 
     258                        majClassDistribution(); 
     259                } 
     260 
     261                if (critereBean.getGrille() == null) 
    151262                        url = "/images/nodata.png"; 
    152263                else 
    153                         setImageURL(critereBean.getGrille().longValue(), false); 
     264                        setImageURL(false); 
     265        } 
     266 
     267        /** 
     268         * Activer lors du changement du total 
     269         * @param event 
     270         */ 
     271        public void changeTotal(ValueChangeEvent event) { 
     272                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     273                if (event != null) { 
     274                        total = (String)event.getNewValue(); 
     275                } 
     276                majClassDistributionStat(); 
     277 
     278                if (critereBean.getGrille() == null) 
     279                        url = "/images/nodata.png"; 
     280                else 
     281                        setImageURL(false); 
     282        } 
     283         
     284        /** 
     285         * Modification de la grille sélectionnée 
     286         * @param event 
     287         */ 
     288        public void changeGrille(ValueChangeEvent event) { 
     289                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     290//              if (mode.equals("stats") && testStatistique(statistique)) { 
     291//                      majColorMap(critereBean.getGrille().longValue()); 
     292                        majClassDistribution(); 
     293//              } 
     294 
     295//              zone_affichee = new Zone(critereBean.getNorthbc(), critereBean.getSouthbc(), critereBean.getEastbc(), critereBean.getWestbc()); 
     296                Long idGrille; 
     297                if (event == null) { 
     298                        idGrille = critereBean.getGrille(); 
     299                } else { 
     300                        idGrille = (Long)event.getNewValue(); 
     301                        critereBean.setGrille(idGrille); 
     302                        String dateLabel; 
     303                        if (critereBean.getProduitbean().getType().equals("temporal")) { 
     304                                for (int num = 0; num < critereBean.getListe_grille().size(); num++) { 
     305                                        if (critereBean.getListe_grille().get(num).getValue().equals(idGrille)) { 
     306                                                dateLabel = critereBean.getListe_grille().get(num).getLabel(); 
     307                                                if (dateLabel.length() == 7) { 
     308                                                        dateLabel += "-01"; 
     309                                                } else if (dateLabel.length() == 4) { 
     310                                                        dateLabel += "-01-01"; 
     311                                                } 
     312                                                critereBean.setDate(dateLabel); 
     313                                                break; 
     314                                        } 
     315                                } 
     316                                critereBean.setDay(critereBean.getDate()); 
     317                                critereBean.getDayUI().setValue(critereBean.getDay()); 
     318                                critereBean.setMonth(critereBean.getDate().substring(0,7)); 
     319                                critereBean.getMonthUI().setValue(critereBean.getMonth()); 
     320                                critereBean.setYear(new Integer(critereBean.getDate().substring(0,4))); 
     321                                critereBean.getYearUI().setValue(critereBean.getYear()); 
     322                        } else { 
     323                                for (int num = 0; num < critereBean.getListe_grille().size(); num++) { 
     324                                        if (critereBean.getListe_grille().get(num).getValue().equals(idGrille)) { 
     325                                                dateLabel = critereBean.getListe_grille().get(num).getLabel(); 
     326                                                critereBean.setDate(dateLabel); 
     327                                                break; 
     328                                        } 
     329                                } 
     330                        } 
     331                } 
     332//              gridOn = true; 
     333//              statOn = false; 
     334                if (idGrille == null) 
     335                        url = "/images/nodata.png"; 
     336                else 
     337                        setImageURL(false); 
     338//              System.out.println("changeGrille, nouvelle date="+critereBean.getDate()+", alt="+critereBean.getAlt()+", grille="+critereBean.getGrille()+", day="+critereBean.getDay()+", month="+critereBean.getMonth()+", year="+critereBean.getYear()+", grilleUI="+critereBean.getGrilleUI().getValue()); 
     339        } 
     340 
     341        /** 
     342         * Modification de l'altitude sélectionnée 
     343         * @param event 
     344         */ 
     345        public void changeAlt(ValueChangeEvent event) { 
     346                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     347 
     348                String alt ; 
     349                if (event == null) { 
     350                        alt = critereBean.getAlt(); 
     351                } else { 
     352                        alt = (String)event.getNewValue(); 
     353                        critereBean.setAlt(alt); 
     354                } 
     355                String date = critereBean.getDate(); 
     356                critereBean.majGrille(date); 
     357                if (critereBean.getGrille() == null) 
     358                        url = "/images/nodata.png"; 
     359                else 
     360                        setImageURL(false); 
     361//              System.out.println("changeAlt, date="+date+", alt="+critereBean.getAlt()+", grille="+critereBean.getGrille()+", day="+critereBean.getDay()+", month="+critereBean.getMonth()+", year="+critereBean.getYear()); 
     362        } 
     363         
     364        /** 
     365         * Activer lors du changement du jour 
     366         * @param event 
     367         */ 
     368        public void changeDay(ValueChangeEvent event) { 
     369                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     370                if (event != null && mode.equals("totals")) { 
     371                        String day = (String)event.getNewValue(); 
     372                        critereBean.setDay(day); 
     373                        String dateLabel; 
     374                        for (int num = 0; num < critereBean.getListe_grille().size(); num++) { 
     375                                dateLabel = critereBean.getListe_grille().get(num).getLabel(); 
     376                                if (dateLabel.length() == 7) { 
     377                                        dateLabel += "-01"; 
     378                                } else if (dateLabel.length() == 4) { 
     379                                        dateLabel += "-01-01"; 
     380                                } 
     381                                if (dateLabel.equals(day)) { 
     382                                        critereBean.setGrille((Long)critereBean.getListe_grille().get(num).getValue()); 
     383                                        critereBean.getGrilleUI().setValue(critereBean.getGrille()); 
     384                                        critereBean.setDate(day); 
     385                                        break; 
     386                                } 
     387                        } 
     388                        critereBean.setMonth(critereBean.getDate().substring(0,7)); 
     389                        critereBean.getMonthUI().setValue(critereBean.getMonth()); 
     390                        critereBean.setYear(new Integer(critereBean.getDate().substring(0,4))); 
     391                        critereBean.getYearUI().setValue(critereBean.getYear()); 
     392                } 
     393                if (critereBean.getGrille() == null) 
     394                        url = "/images/nodata.png"; 
     395                else 
     396                        setImageURL(false); 
     397//              System.out.println("changeDay, grille="+critereBean.getGrille()+", day="+critereBean.getDay()+", month="+critereBean.getMonth()+", year="+critereBean.getYear()); 
     398        } 
     399         
     400        /** 
     401         * Activer lors du changement du mois 
     402         * @param event 
     403         */ 
     404        public void changeMonth(ValueChangeEvent event) { 
     405                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     406                if (event != null && mode.equals("totals")) { 
     407                        String month = (String)event.getNewValue(); 
     408                        critereBean.setMonth(month); 
     409                        critereBean.setYear(new Integer(month.substring(0,4))); 
     410                        critereBean.getYearUI().setValue(critereBean.getYear()); 
     411                        String dateLabel; 
     412                        for (int num = 0; num < critereBean.getListe_grille().size(); num++) { 
     413                                dateLabel = critereBean.getListe_grille().get(num).getLabel(); 
     414                                if (dateLabel.length() == 7) { 
     415                                        dateLabel += "-01"; 
     416                                } else if (dateLabel.length() == 4) { 
     417                                        dateLabel += "-01-01"; 
     418                                } 
     419                                if (dateLabel.substring(0,7).equals(month)) { 
     420                                        critereBean.setDate(dateLabel); 
     421                                        critereBean.setGrille((Long)critereBean.getListe_grille().get(num).getValue()); 
     422                                        critereBean.getGrilleUI().setValue(critereBean.getGrille()); 
     423                                        critereBean.setDay(dateLabel); 
     424                                        critereBean.getDayUI().setValue(critereBean.getDay()); 
     425                                        break; 
     426                                } 
     427                        } 
     428                } 
     429                if (critereBean.getGrille() == null) 
     430                        url = "/images/nodata.png"; 
     431                else 
     432                        setImageURL(false); 
     433//              System.out.println("changeMonth, grille="+critereBean.getGrille()+", day="+critereBean.getDay()+", month="+critereBean.getMonth()+", year="+critereBean.getYear()); 
     434        } 
     435         
     436        /** 
     437         * Activer lors du changement de l'année 
     438         * @param event 
     439         */ 
     440        public void changeYear(ValueChangeEvent event) { 
     441                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     442                if (event != null && mode.equals("totals")) { 
     443                        Integer year = (Integer)event.getNewValue(); 
     444                        critereBean.setYear(year); 
     445                        String dateLabel; 
     446                        for (int num = 0; num < critereBean.getListe_grille().size(); num++) { 
     447                                dateLabel = critereBean.getListe_grille().get(num).getLabel(); 
     448                                if (dateLabel.length() == 7) { 
     449                                        dateLabel += "-01"; 
     450                                } else if (dateLabel.length() == 4) { 
     451                                        dateLabel += "-01-01"; 
     452                                } 
     453                                if (Integer.parseInt(dateLabel.substring(0,4)) == year.intValue()) { 
     454                                        critereBean.setDate(dateLabel); 
     455                                        critereBean.setGrille((Long)critereBean.getListe_grille().get(num).getValue()); 
     456                                        critereBean.getGrilleUI().setValue(critereBean.getGrille()); 
     457                                        critereBean.setDay(dateLabel); 
     458                                        critereBean.getDayUI().setValue(critereBean.getDay()); 
     459                                        critereBean.setMonth(critereBean.getDate().substring(0,7)); 
     460                                        critereBean.getMonthUI().setValue(critereBean.getMonth()); 
     461                                        break; 
     462                                } 
     463                        } 
     464                } 
     465                if (critereBean.getGrille() == null) 
     466                        url = "/images/nodata.png"; 
     467                else 
     468                        setImageURL(false); 
     469//              System.out.println("changeYear, grille="+critereBean.getGrille()+", day="+critereBean.getDay()+", month="+critereBean.getMonth()+", year="+critereBean.getYear()); 
     470        } 
     471         
     472        /** 
     473         * Modification du masque 
     474         * @param event 
     475         */ 
     476        public void changeMask(ValueChangeEvent event) { 
     477                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     478                if (event != null) { 
     479                        mask = (String)event.getNewValue(); 
     480                } 
     481//              if (testChangeScale(mask)) { 
     482//                      majClassDistributionStat(); 
     483//              } else { 
     484//                      majClassDistribution(); 
     485//              } 
     486                if (mask.equals("region")) { 
     487                        majMaskRegion(); 
     488                } else if (mask.equals("country")) { 
     489                        majMaskCountry(); 
     490                } 
     491                if (critereBean.getGrille() == null) 
     492                        url = "/images/nodata.png"; 
     493                else 
     494                        setImageURL(false); 
     495        } 
     496         
     497        /** 
     498         * Modification de la région sélectionnée 
     499         * @param event 
     500         */ 
     501        public void changeRegion(ValueChangeEvent event) { 
     502                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     503                if (event != null) { 
     504                        region = (Long)event.getNewValue(); 
     505                        for (SelectItem si: liste_region) { 
     506                                if (region.equals(si.getValue())) { 
     507                                        regionName = si.getLabel(); 
     508                                        break; 
     509                                } 
     510                        } 
     511                } 
     512                if (critereBean.getGrille() == null) 
     513                        url = "/images/nodata.png"; 
     514                else 
     515                        setImageURL(false); 
     516        } 
     517         
     518        /** 
     519         * Modification du pays sélectionné 
     520         * @param event 
     521         */ 
     522        public void changeCountry(ValueChangeEvent event) { 
     523                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     524                if (event != null) { 
     525                        country = (Long)event.getNewValue(); 
     526                        for (SelectItem si: liste_country) { 
     527                                if (country.equals(si.getValue())) { 
     528                                        countryName = si.getLabel(); 
     529                                        break; 
     530                                } 
     531                        } 
     532                } 
     533                if (critereBean.getGrille() == null) 
     534                        url = "/images/nodata.png"; 
     535                else 
     536                        setImageURL(false); 
     537        } 
     538         
     539        /** 
     540         * Modification de la colormap 
     541         * @param event 
     542         */ 
     543        public void changeColormap(ValueChangeEvent event) { 
     544                if (event != null) { 
     545                        colormap_id = (Long)event.getNewValue(); 
     546                } 
     547                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     548                if (critereBean.getGrille() == null) 
     549                        url = "/images/nodata.png"; 
     550                else 
     551                        setImageURL(false); 
    154552                clicX = -1; 
    155553                clicY = -1; 
    156554        } 
    157          
    158         /** 
    159          * permet de savoir si les statistiques font partie d'une exception (par exemple si elles vont utiliser une colormap dynamique) 
    160          * il faudrai modifier cela car ce n'est pas propre du tout  
    161          * de plus il faut penser à le modifier au niveau du service carte dans la fonction getLegendStat 
    162          * @param a_tester 
    163          * @return 
    164          */ 
    165         private boolean testStatistique(String a_tester) { 
    166                 return (a_tester.equals("ecartCarte") || a_tester.equals("moyenneCarte") || a_tester.equals("sommeCarte")); 
    167         } 
    168          
    169         /** 
    170          * Activer lors du changement de la statistique visualisé 
    171          * @param event 
    172          */ 
    173         public void changeStatistique(ValueChangeEvent event) { 
    174                 LoggerPerso.log(CarteBean.class,LoggerPerso.DEBUG, "change statistique"); 
    175                 CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    176                  
    177                 if (testStatistique(statistiqueUI.getValue().toString())) 
    178                         majColorMapStat(); 
    179                 else 
    180                         if (testStatistique(statistique)) 
    181                                 majColorMap(critereBean.getGrille().longValue()); 
    182                          
    183                 if (critereBean.getGrille() == null)  
     555 
     556        public void changeClassdis(ValueChangeEvent event) { 
     557                if (event != null) { 
     558                        classdis_id = (Long)event.getNewValue(); 
     559                } 
     560                CritereBean critereBean = (CritereBean) ((HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     561                if (critereBean.getGrille() == null) 
    184562                        url = "/images/nodata.png"; 
    185563                else 
    186                         setImageURL(critereBean.getGrille().longValue(), false); 
    187         } 
    188          
    189         /** 
    190          * Modification de la grille sélectionnée 
    191          * @param event 
    192          */ 
    193         public void dessinCarte(ValueChangeEvent event) { 
    194                 CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    195                  
    196                 if (testStatistique(statistique)) 
    197                         majColorMap(critereBean.getGrille().longValue()); 
    198  
    199                 zone_affichee = new Zone(critereBean.getNorthbc(), critereBean.getSouthbc(), critereBean.getEastbc(), critereBean.getWestbc()); 
    200                 critereBean.setGrille((Long)event.getNewValue()); 
    201                  
    202                 initStatistiqueList(); 
    203                  
    204                 setImageURL((Long)event.getNewValue(), false); 
    205         } 
    206          
    207          
    208          
    209          
     564                        setImageURL(false); 
     565                clicX = -1; 
     566                clicY = -1; 
     567        } 
     568 
    210569        /** 
    211570         * Modification de la colormap 
    212571         * @param event 
    213572         */ 
    214         public void changeColormap(ValueChangeEvent event) { 
     573/*      public void changeColormapDynamic(ValueChangeEvent event) { 
    215574                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    216                 if (critereBean.getGrille() == null)  
     575                if (critereBean.getGrille() == null) 
    217576                        url = "/images/nodata.png"; 
    218577                else 
    219                         setImageURL(critereBean.getGrille().longValue(), false); 
    220                  
     578                        setImageURL(false); 
    221579                clicX = -1; 
    222580                clicY = -1; 
    223         } 
    224          
    225         /** 
    226          * Modification de la colormap 
     581        }*/ 
     582 
     583        /** 
     584         * Sur clique sur la carte 
    227585         * @param event 
    228586         */ 
    229         public void changeColormapDynamic(ValueChangeEvent event) { 
     587        public void dessinCarte(ActionEvent event) { 
    230588                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    231                 if (critereBean.getGrille() == null)  
    232                         url = "/images/nodata.png"; 
    233                 else 
    234                         setImageURL(critereBean.getGrille().longValue(), false); 
    235                  
     589                if (critereBean.getGrille() != null) { 
     590//                      url = "/images/nodata.png"; 
     591//              } else { 
     592                        // init resol 
     593//                      LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "get grille value ="+critereBean.getGrille().longValue()); 
     594//                      resolution = serv_carte.getResolution(critereBean.getGrille().longValue()); 
     595//System.out.println("zoom ou unzoom, date="+critereBean.getDate()+", alt="+critereBean.getAlt()+", grille="+critereBean.getGrille()+", day="+critereBean.getDay()+", month="+critereBean.getMonth()+", year="+critereBean.getYear()); 
     596                        setImageURL(true); 
     597                } 
     598 
    236599                clicX = -1; 
    237600                clicY = -1; 
    238601        } 
    239          
    240         /** 
    241          * Sur clique sur la carte 
    242          * @param event 
    243          */ 
    244         public void dessinCarte(ActionEvent event) { 
    245                 CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    246                 if (critereBean.getGrille() == null)  
    247                         url = "/images/nodata.png"; 
    248                 else{ 
    249                         //init resol 
    250                         resolution = serv_carte.getResolution(critereBean.getGrille().longValue()); 
    251                         setImageURL(critereBean.getGrille().longValue(), true); 
    252                 } 
    253                 clicX = -1; 
    254                 clicY = -1; 
    255         } 
    256  
     602 
     603        /** 
     604         * permet de charger les types de masques 
     605         */ 
     606        private void majMask() { 
     607                liste_mask = new LinkedList<SelectItem>(); 
     608                liste_mask.add(new SelectItem("none", "None")); 
     609                if (resolution == 0.5) { 
     610                        liste_mask.add(new SelectItem("region","Region")); 
     611                        liste_mask.add(new SelectItem("country","Country")); 
     612                } 
     613                mask = "none"; 
     614                if (maskUI != null) 
     615                        maskUI.setValue(mask); 
     616        } 
     617         
     618        /** 
     619         * permet de charger les masques des régions 
     620         */ 
     621        private void majMaskRegion() { 
     622                liste_region = smp.getListRegion(); 
     623                if (liste_region.size() != 0) { 
     624                        region = (Long)liste_region.get(0).getValue(); 
     625                        regionName = liste_region.get(0).getLabel(); 
     626                        if (regionUI != null) 
     627                                regionUI.setValue(region); 
     628                }                        
     629        } 
     630 
     631        /** 
     632         * permet de charger les masques des pays 
     633         */ 
     634        private void majMaskCountry() { 
     635                liste_country = smp.getListCountry(); 
     636                if (liste_country.size() != 0) { 
     637                        country = (Long)liste_country.get(0).getValue(); 
     638                        countryName = liste_region.get(0).getLabel(); 
     639                        if (countryUI != null) 
     640                                countryUI.setValue(country); 
     641                } 
     642        } 
     643         
    257644        /** 
    258645         * permet de charger la colormap en fonction de la grille visualisée 
    259          * @param oid l'identifiant de la grille 
    260          */ 
    261         private void majColorMap(long identifiant) { 
    262                 CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    263                 if (identifiant == -1 && critereBean.getGrille() != null)  
    264                         identifiant = critereBean.getGrille().intValue(); 
    265                  
    266                 liste_colormap = smp.getListMappingColor(identifiant); 
    267                  
     646         */ 
     647        private void majColorMap() { 
     648//              CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     649//              if (identifiant == -1 && critereBean.getGrille() != null) 
     650//                      identifiant = critereBean.getGrille().intValue(); 
     651 
     652                liste_colormap = smp.getListMappingColor(); 
     653 
    268654                if (liste_colormap.size() != 0) { 
    269                         colormap_id = (Long) liste_colormap.get(0).getValue(); 
     655                        colormap_id = colormapDefault; 
     656                        for (int num_col = 0; num_col < liste_colormap.size(); num_col++) { 
     657                                if ( Long.parseLong(liste_colormap.get(num_col).getValue().toString()) == colormap_id.longValue() ) { 
     658                                        colormap_txt = liste_colormap.get(num_col).getLabel(); 
     659                                        break; 
     660                                } 
     661                        } 
     662//                      colormap_id = (Long) liste_colormap.get(0).getValue(); 
    270663                        if (colormapUI != null) 
    271664                                colormapUI.setValue(colormap_id); 
    272665                } 
    273666        } 
    274          
     667 
     668        private void majClassDistribution() { 
     669                CritereBean critereBean = (CritereBean) ((HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     670 
     671                // récupération des informations sur les données 
     672                Parametre param = smp.getParametreById(critereBean.getParametre().intValue()); 
     673 
     674                liste_classdis = smp.getListClassDistribution(param.getIdentifiant()); 
     675 
     676                if (liste_classdis.size() != 0) { 
     677                        boolean trouve = false; 
     678                        // On recherche l'échelle de valeur déjà sélectionnée dans la liste 
     679                        // Si on ne le trouve pas, on prend l'echelle par défaut 
     680                        // Si on le trouve, on conserve la même echelle 
     681                        for (int i=0; !trouve && i<liste_classdis.size();i++) { 
     682                                if (liste_classdis.get(i).getValue().equals(classdis_id)) { 
     683                                        trouve = true; 
     684                                } 
     685                        } 
     686                        if (!trouve) 
     687                                classdis_id = classdisDefault; 
     688//                      classdis_id = (Long) liste_classdis.get(0).getValue(); 
     689                        if (classdisUI != null) 
     690                                classdisUI.setValue(classdis_id); 
     691                } 
     692//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "distrib ID !!! :: " + classdis_id); 
     693        } 
     694 
    275695        /** 
    276696         * Permet d'obtenir les colormaps disponible pour les statistiques 
    277697         * 
    278698         */ 
    279         private void majColorMapStat() { 
    280                 // FIXME : normalement il faudrai que la base de donnée retourne les colormaps qui correspondent au produit utilisé...  
    281                 liste_colormap = smp.getListColorDynamique(); 
     699/*      private void majColorMapStat() { 
     700                // FIXME : normalement il faudrai que la base de donnée retourne les colormaps qui correspondent au produit utilisé... 
     701                liste_colormap = smp.getListColorDynamique();*/ 
    282702                /*SelectItem temp = null; 
    283                 if (testStatistique(statistiqueUI.getValue().toString())) { 
     703                if (testStatistique(statistique)) { 
    284704                        for (SelectItem iterable_element : liste_colormap) { 
    285705                                if (iterable_element.getLabel().equalsIgnoreCase("logarithm")) 
     
    293713                        liste_colormap.add(temp); 
    294714                }*/ 
    295                  
    296                  
    297                 if (liste_colormap.size() != 0) { 
    298                         colormap_id = (Long) liste_colormap.get(0).getValue(); 
     715 
     716/*              if (liste_colormap.size() != 0) { 
     717                        colormap_id = colormapDefault; 
     718//                      colormap_id = (Long) liste_colormap.get(0).getValue(); 
    299719                        if (colormapUI != null) 
    300720                                colormapUI.setValue(colormap_id); 
    301721                } 
     722        }*/ 
     723 
     724        private void majClassDistributionStat() { 
     725                liste_classdis = smp.getListClassDynamique(); 
     726 
     727                if (liste_classdis.size() != 0) { 
     728                        boolean trouve = false; 
     729                        for (int i=0; !trouve && i<liste_classdis.size();i++) { 
     730                                if (liste_classdis.get(i).getValue().equals(classdis_id)) { 
     731                                        trouve = true; 
     732                                } 
     733                        } 
     734                        if (!trouve) 
     735                                classdis_id = (Long) liste_classdis.get(1).getValue(); 
     736                        if (classdisUI != null) 
     737                                classdisUI.setValue(classdis_id); 
     738                } 
    302739        } 
    303740         
     
    308745        private String getIdUnique() { 
    309746                HttpSession session = (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false); 
    310                 if (session==null) 
     747                if (session == null) 
    311748                        return ""; 
    312                  
    313                 String imageID; 
    314                  
    315                  
    316                 imageID = session.getId() + session.getLastAccessedTime() ; 
    317                  
     749                String imageID = session.getId() + session.getLastAccessedTime(); 
    318750                return imageID; 
    319751        } 
    320          
     752 
    321753        /** 
    322754         * Permet de générer l'image. 
    323755         * Cette fonction détecte s'il s'agit d'une statistique ou d'une carte normale, leur traitement sera différent par la suite 
    324756         * @param id_grille de la grille 
    325          * @param updateAffiche détermine si la zone affichée sera mise à jour ou non (zoom, déplacement, etc...) 
    326          */ 
    327         private void setImageURL(Long id_grille, boolean updateAffiche) { 
     757         * @param firstAff détermine si la zone affichée sera mise à jour ou non (zoom, déplacement, etc...) 
     758         */ 
     759        private void setImageURL(boolean firstAff) { 
    328760                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     761                Long id_grille = critereBean.getGrille(); 
    329762                if (smp == null) { 
    330763                        smp = critereBean.getSmp(); 
    331                         LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "smp null dans setImageURL"); 
    332                 } 
    333                  
    334                 if (statistique.equals("none")) 
    335                         mapTitle = parametre + " : " + produit; 
    336                 else 
    337                         mapTitle = "statistics on " + parametre + " : " + produit; 
    338                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "mapTitleUI :: " + mapTitleUI); 
    339                 if (mapTitleUI != null) 
    340                                 mapTitleUI.setValue(mapTitle); 
    341                  
    342                 if (colormapUI != null) 
    343                         colormap_id = (Long) colormapUI.getValue(); 
    344                 if (colormap_id == null) 
    345                         colormap_id = new Long(-1); 
    346                  
    347                  
    348                 Zone zone_selection = new Zone(critereBean.getNorthbc(), critereBean.getSouthbc(), critereBean.getEastbc(), critereBean.getWestbc()); 
    349                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "\nstatistiqueUI="+statistiqueUI); 
    350                 if (statistiqueUI != null && !statistiqueUI.getValue().toString().equals("none")) { 
    351                         gridOn = false; 
    352                         statOn = true; 
    353                         gestionCarteStat(updateAffiche); 
    354                          
    355  
    356                         zone_affichee = serv_carte.getCarteCoordinate(); 
    357                          
    358                          
    359                         } 
    360                 else { 
    361                         gridOn = true; 
    362                         statOn = false; 
    363                         if (clicX != -1 && clicY != -1) 
    364                                 makeZoom(id_grille, getIdUnique(), resolution); 
    365                         else { 
    366                                          
    367                                  
    368                                 //pixelCenterUI.setValue(pixelCenter); 
    369                                  
    370                                 if  (updateAffiche) {//=========================== ici 
    371                                         url =serv_carte.getCarte(id_grille, colormap_id.longValue(), zone_selection, getIdUnique()).getUrlImage(); 
    372  
     764                } 
     765                setTitleMap(critereBean); 
     766 
     767//              if (colormapUI != null) 
     768//                      colormap_id = (Long) colormapUI.getValue(); 
     769//              if (colormap_id == null) 
     770//                      colormap_id = new Long(-1); 
     771 
     772//              if (classdisUI != null) 
     773//                      classdis_id = (Long) classdisUI.getValue(); 
     774//              if (classdis_id == null) 
     775//                      classdis_id = new Long(-1); 
     776//System.out.println("setImageURL->mode="+mode+", modeUI="+(modeUI==null?"null":modeUI.getValue())+", stats="+statistique+", statsUI="+(statistiqueUI==null?"null":statistiqueUI.getValue())+", grille="+id_grille); 
     777                if (mode.equals("stats")) { 
     778//                      gridOn = false; 
     779//                      statOn = true; 
     780                        gestionCarteStat(firstAff); 
     781                } else if (mode.equals("totals")) { 
     782//                      gridOn = false; 
     783//                      statOn = true; 
     784                        gestionCarteTotal(firstAff); 
     785                } else { 
     786//                      gridOn = true; 
     787//                      statOn = false; 
     788                        String idUnique = getIdUnique(); 
     789                        boolean zoom = false; 
     790                        if (clicX != -1 && clicY != -1) { 
     791                                makeZoom(id_grille, idUnique, resolution); 
     792                                zoom = true; 
     793                        } else { 
     794                                // pixelCenterUI.setValue(pixelCenter); 
     795                                if (firstAff) { 
    373796                                        centerLatClick = 0; 
    374797                                        centerLonClick = 0; 
    375798                                } 
    376                                 else{ 
    377                                         url = serv_carte.getCarte(id_grille, colormap_id.longValue(), null, getIdUnique()).getUrlImage(); 
    378                                          
    379                                 } 
    380                                  
    381                         } 
    382                         url_legend = serv_carte.getLegend(id_grille, colormap_id.longValue()); 
    383                          
    384                          
    385                          
    386                         zone_affichee = serv_carte.getCarteCoordinate(); 
    387                         LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "************DEBUT " + id_grille); 
    388                          
    389                          
    390                          
    391                         zone_click = new Zone(centerLatClick, centerLatClick , centerLonClick, centerLonClick); 
    392                          
    393                         StatReponse statReponse = serv_carte.getStatReponse(id_grille, colormap_id.longValue(), zone_click); 
    394                          
    395                         String aPixelCenter = (String)Double.toString(statReponse.getCenter()); 
    396                          
    397                          
    398                         pixelCenter = fixeDecimal(aPixelCenter); 
    399                         centerLat = statReponse.getCenterLat(); 
    400                         centerLon = statReponse.getCenterLon(); 
    401                         LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********pixelCenter :: " +pixelCenter); 
    402                         LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLat  :: " +centerLat ); 
    403                         LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLon :: " +centerLon); 
    404  
    405                 } 
    406                  
     799                        } 
     800                        StatReponse statReponse = serv_carte.getCarte(id_grille, colormap_id.longValue(), classdis_id.longValue(), zone_demandee, idUnique, produit, critereBean.getSector().longValue(), zoom, firstAff, getMaskId()); 
     801 
     802                        url = statReponse.getUrlImage(); 
     803                        url_legend = serv_carte.getLegend(id_grille,colormap_id.longValue(),classdis_id.longValue()); 
     804 
     805//System.out.println("*** latclick="+centerLatClick+", lonclick="+centerLonClick); 
     806                        zone_click = new Zone(centerLatClick, centerLatClick, centerLonClick, centerLonClick); 
     807                        statReponse = serv_carte.getStatReponse(id_grille,colormap_id.longValue(), classdis_id.longValue(), zone_click, produit, critereBean.getSector().longValue(), getMaskId()); 
     808                        // On n'affiche la valeur du pixel cliqué que lors d'un clic sur la carte 
     809                        //ou bien lors d'un recalcul d'un point déjà cliqué 
     810                        if ((clicX != -1 && clicY != -1) || (!firstAff && !pixelCenter.equals(""))) { 
     811                                showPosPixel = true; 
     812                                String aPixelCenter = Double.toString(statReponse.getCenter()); 
     813                                pixelCenter = fixeDecimal(aPixelCenter); 
     814                                centerLat = String.valueOf(statReponse.getCenterLat()); 
     815                                centerLon = String.valueOf(statReponse.getCenterLon()); 
     816                        } else if (firstAff){ 
     817                                showPosPixel = false; 
     818                                pixelCenter = ""; 
     819                                centerLat = ""; 
     820                                centerLon = ""; 
     821                        } 
     822//                      LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********pixelCenter :: " + pixelCenter); 
     823//                      LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLat  :: " + centerLat); 
     824//                      LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLon :: " + centerLon); 
     825                } 
     826                zone_visible = serv_carte.getCarteCoordinate(); 
     827//              System.out.println("zone demandée="+zone_demandee); 
     828//              System.out.println("zone visible="+zone_visible); 
    407829                if (northbc != null) { 
    408                         northbc.setValue(zone_affichee.getNorthbcN()); 
    409                         southbc.setValue(zone_affichee.getSouthbcN()); 
    410                         eastbc.setValue(zone_affichee.getEastbcN()); 
    411                         westbc.setValue(zone_affichee.getWestbcN()); 
    412                 } 
    413                  
    414  
    415                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne affichee: getEastbcN "+ zone_affichee.getEastbcN()); 
    416                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne affichee: getWestbcN "+ zone_affichee.getWestbcN()); 
    417                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne affichee: getNorthbcN "+ zone_affichee.getNorthbcN()); 
    418                 LoggerPerso.log(LoggerPerso.class, LoggerPerso.DEBUG, "zonnnnnnnnnnnnnnnnnnnnnnnne affichee: getSouthbcN "+ zone_affichee.getSouthbcN()); 
    419                  
    420  
    421                 //pixelCenter = serv_carte.getCarte(id_grille, colormap_id, zone_affichee, getIdUnique()+1).getCenter(); 
    422                 //LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "pixelCenter zoom :: " + pixelCenter); 
    423                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "************setImageURL.zone :: " + zone_affichee); 
    424                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "************FIN " ); 
    425                  
    426         } 
    427          
     830                        northbc.setValue(zone_demandee.getNorthbcN()); 
     831                        southbc.setValue(zone_demandee.getSouthbcN()); 
     832                        eastbc.setValue(zone_demandee.getEastbcN()); 
     833                        westbc.setValue(zone_demandee.getWestbcN()); 
     834                } 
     835                // pixelCenter = serv_carte.getCarte(id_grille, colormap_id, zone_affichee, getIdUnique()+1).getCenter(); 
     836                // LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "pixelCenter zoom :: " + pixelCenter); 
     837                // LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "zone :: " + zone_affichee); 
     838        } 
     839         
     840        /** 
     841         * Permet de définir le titre de la carte 
     842         */ 
     843        public void setTitleMap(CritereBean critereBean) { 
     844                String modeDisplay = ""; 
     845                if (secteur.equals("Aviation")) { 
     846                        modeDisplay += ", "+(critereBean.getAlt().equals("Sum")?"sum altitude":critereBean.getAlt()+" km"); 
     847                } 
     848                if (mode.equals("date")) { 
     849                        modeDisplay += ", "+critereBean.getDate(); 
     850                } else if (mode.equals("stats")) { 
     851                        modeDisplay += ", statistics"; 
     852                        if (statistique.equals("moyenneCarte")) { 
     853                                modeDisplay += " - mean"; 
     854                        } else if (statistique.equals("ecartCarte")) { 
     855                                modeDisplay += " - standard deviation"; 
     856                        } else if (statistique.equals("minimumCarte")) { 
     857                                modeDisplay += " - minimum"; 
     858                        } else if (statistique.equals("maximumCarte")) { 
     859                                modeDisplay += " - maximum"; 
     860                        } else if (statistique.equals("sommeCarte")) { 
     861                                modeDisplay += " - sum"; 
     862                        } 
     863                } else { 
     864                        modeDisplay += ", totals"; 
     865                        if (total.equals("totalDay")) { 
     866                                modeDisplay += " over day "+critereBean.getDay(); 
     867                        } else if (total.equals("totalMonth")) { 
     868                                modeDisplay += " over month "+critereBean.getMonth(); 
     869                        } else if (total.equals("totalYear")) { 
     870                                modeDisplay += " over year "+critereBean.getYear(); 
     871                        } else if (total.equals("totalPeriod")) { 
     872                                modeDisplay += " over period from "+critereBean.getBegDate()+" to "+critereBean.getEndDate(); 
     873                        } 
     874                } 
     875                if (mask.equals("region")) { 
     876                        modeDisplay += ", mask: "+regionName; 
     877                } else if (mask.equals("country")) { 
     878                        modeDisplay += ", mask: "+countryName; 
     879                } 
     880                if (produit.equals("IPCC")) { 
     881                        if (!rcp.equals("None")) { 
     882                                mapTitle = produit+": "+parametre + ", "+secteur + ", RCP "+rcp + modeDisplay; 
     883                        } else { 
     884                                mapTitle = produit+": "+parametre + ", "+secteur + modeDisplay; 
     885                        } 
     886                } else { 
     887                        mapTitle = produit+": "+parametre+modeDisplay;                           
     888                } 
     889 
     890                if (mapTitleUI != null) 
     891                        mapTitleUI.setValue(mapTitle); 
     892        } 
     893 
    428894        /** 
    429895         * Permet de zoomer 
     
    432898         */ 
    433899        public void makeZoom(long id_grille, String imageID, double resol) { 
    434          
    435         /*      StatReponse statReponse = serv_carte.getCarte(id_grille, colormap_id.longValue(), zone_selection, getIdUnique()); 
     900 
     901                /* StatReponse statReponse = serv_carte.getCarte(id_grille, colormap_id.longValue(), zone_selection, getIdUnique()); 
    436902                pixelCenter = statReponse.getCenter(); 
    437903                centerLat = statReponse.getCenterLat(); 
    438904                centerLon = statReponse.getCenterLon();*/ 
    439                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "-------------------------------------------> clicX :: " +clicX); 
    440                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "-------------------------------------------> clicY  :: " + clicY); 
    441  
    442                 Zone aZone = serv_carte.getCarteCoordinate(); 
    443                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->  getEastbc  :: " +aZone.getEastbc()); 
    444                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->  getNorthbc :: " +aZone.getNorthbc() ); 
    445                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->  getSouthbc :: " +aZone.getSouthbc()); 
    446                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->   getWestbc :: " +aZone.getWestbc() ); 
     905//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "-------------------------------------------> clicX :: " + clicX); 
     906//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "-------------------------------------------> clicY  :: " + clicY); 
     907 
     908//              Zone aZone = serv_carte.getCarteCoordinate(); 
     909//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->  getEastbc  :: " + aZone.getEastbc()); 
     910//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->  getNorthbc :: " + aZone.getNorthbc()); 
     911//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->  getSouthbc :: " + aZone.getSouthbc()); 
     912//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "------------------------------------------->   getWestbc :: " + aZone.getWestbc()); 
    447913 
    448914                serv_carte.zoomCarte(2, clicX, clicY, resol); 
    449                 url = serv_carte.getCarte(id_grille, colormap_id, null, imageID).getUrlImage(); 
    450         } 
    451          
     915        } 
     916 
    452917        /** 
    453918         * Permet de générer une carte statistique 
    454          * @param updateAffiche permet de savoir si la zone visualisé doit être modifié ou non  
    455          */ 
    456         public void gestionCarteStat(boolean updateAffiche) { 
     919         * @param updateAffiche permet de savoir si la zone visualisé doit être modifié ou non 
     920         */ 
     921        public void gestionCarteStat(boolean firstAff) { 
    457922                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     923                String alt = (critereBean.getAlt()==null?"0":critereBean.getAlt()); 
    458924                /* 
    459                  * Traduction des paramêtres... Bon ça serai mieux de faire ça dans un traducteur dédié quand même :) 
     925                 * Traduction des paramÚtres... Bon ça serai mieux de faire ça dans un traducteur dédié quand même :) 
    460926                 */ 
    461927                Map<String, String> critere = new TraducteurCarte().tradCritere2Stat(critereBean, this); 
    462                 Long id_param = critereBean.getParametre(); 
    463                 Long id_produit = critereBean.getProduit(); 
    464                 Zone zone_selection = new Zone(critereBean.getNorthbc(), critereBean.getSouthbc(), critereBean.getEastbc(), critereBean.getWestbc()); 
    465                  
    466                 String url_retourne; 
     928                long id_param = critereBean.getParametre().longValue(); 
     929                long id_produit = critereBean.getProduit().longValue(); 
     930                long id_secteur = (critereBean.getSector()==null?0:critereBean.getSector().longValue()); 
     931                long id_rcp = critereBean.getRcp().longValue(); 
     932 
     933                StatReponse statReponse; 
     934                String idUnique = getIdUnique(); 
     935                boolean zoom = false; 
    467936                if (clicX != -1 && clicY != -1) { // en cas de zoom 
    468937                        serv_carte.zoomCarte(2, clicX, clicY, resolution); 
    469                         url_retourne = serv_carte.getCarteStat(critere, id_param, id_produit, getColormap_id(), getStatistiqueUI().getValue().toString(), getIdUnique(), null).getUrlImage(); 
    470                  
    471  
    472                  
    473                 } 
    474                 else if (updateAffiche) { // sans zoom mais on fait un update sur la zone affiché (on revient sur la zone sélectionnée) 
    475                         Map<String, String> critere2 = new TraducteurCarte().tradCritere2StatReinit(critereBean, this); 
    476                         url_retourne = serv_carte.getCarteStat(critere2, id_param, id_produit, getColormap_id(), getStatistiqueUI().getValue().toString(), getIdUnique(), zone_selection).getUrlImage();                         
    477  
    478                         centerLatClick = 0; 
    479                         centerLonClick = 0; 
    480                 } 
    481                 else // sans zoom et on reste sur la zone actuellement visible 
    482                         url_retourne = serv_carte.getCarteStat(critere, id_param, id_produit, getColormap_id(), getStatistiqueUI().getValue().toString(), getIdUnique(), null).getUrlImage(); 
    483                          
    484                          
    485                  
    486                 ////system.out.println(url_retourne); 
    487                 clicX = -1; 
    488                 clicY = -1; 
    489                  
    490                 url = url_retourne; 
    491                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "::CarteBean::ChangeStatistique::ok::\n" + critere + "::" + id_param + "::" + id_produit + "::" + getStatistiqueUI().getValue().toString()); 
    492                 url_legend = serv_carte.getLegendStat(critereBean.getGrille().longValue(), colormap_id.longValue(), getStatistiqueUI().getValue().toString(), getIdUnique()); 
    493                 if (mapTitleUI != null) 
    494                         mapTitleUI.setValue("statitics on " + parametre + " : " + produit); 
    495                 mapTitle = "statitics on " + parametre + " : " + produit;        
    496                  
     938                        zoom = true; 
     939//              } else if (updateAffiche) { // sans zoom mais on fait un update sur la zone affiché (on revient sur la zone sélectionnée) 
     940//                      Map<String, String> critere2 = new TraducteurCarte().tradCritere2StatReinit(critereBean, this); 
     941//                      statReponse = serv_carte.getCarteStat(critere, id_param, id_produit, colormap_id.longValue(),classdis_id.longValue(), id_secteur, id_rcp, statistique, idUnique, zone_selection); 
     942//                      centerLatClick = 0; 
     943//                      centerLonClick = 0; 
     944                } else { 
     945                        if (firstAff) { 
     946                                centerLatClick = 0; 
     947                                centerLonClick = 0; 
     948                        } 
     949                } 
     950                statReponse = serv_carte.getCarteStat(critere, id_param, id_produit, colormap_id.longValue(),classdis_id.longValue(), id_secteur, id_rcp, alt,statistique, idUnique, zone_demandee, zoom, firstAff, getMaskId()); 
     951//              clicX = -1; 
     952//              clicY = -1; 
     953 
     954                url = statReponse.getUrlImage(); 
     955//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "::CarteBean::ChangeStatistique::ok::\n" + critere + "::" + id_param + "::" + id_produit + "::" + statistique); 
     956                url_legend = serv_carte.getLegendStat(critereBean.getGrille().longValue(), colormap_id.longValue(),classdis_id.longValue(), statistique, idUnique); 
     957 
    497958                ///initialisation du pixel du centre de la zone 
    498  
    499                  
    500                 zone_affichee = serv_carte.getCarteCoordinate(); 
    501                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "************DEBUT " ); 
     959//              zone_affichee = serv_carte.getCarteCoordinate(); 
     960//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "************DEBUT "); 
    502961                CritereBean critereBeanProvisoire = new CritereBean(); 
    503962                critereBeanProvisoire.setBegDate(critereBean.getBegDate()); 
    504963                critereBeanProvisoire.setEndDate(critereBean.getEndDate()); 
    505                  
    506                 Zone zone_click = new Zone(centerLatClick, centerLatClick , centerLonClick, centerLonClick); 
    507                  
     964 
     965                Zone zone_click = new Zone(centerLatClick, centerLatClick, centerLonClick, centerLonClick); 
     966 
    508967                critereBeanProvisoire.setEastbc(zone_click.getEastbc()); 
    509968                critereBeanProvisoire.setWestbc(zone_click.getWestbc()); 
    510969                critereBeanProvisoire.setNorthbc(zone_click.getNorthbc()); 
    511970                critereBeanProvisoire.setSouthbc(zone_click.getSouthbc()); 
    512                  
     971 
    513972                Map<String, String> critereProvisoire = new TraducteurCarte().tradCritere2StatReinit(critereBeanProvisoire, this); 
    514                  
    515                 StatReponse statReponse = serv_carte.getStatReponse(critereProvisoire, id_param, id_produit, getColormap_id(), getStatistiqueUI().getValue().toString(), getIdUnique(), null); 
    516                  
    517  
    518                 String aPixelCenter = (String)Double.toString(statReponse.getCenter()); 
    519                  
    520                 pixelCenter = fixeDecimal(aPixelCenter); 
    521                 centerLat = statReponse.getCenterLat(); 
    522                 centerLon = statReponse.getCenterLon(); 
    523                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********pixelCenter stat  :: " +pixelCenter); 
    524                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLat stat :: " +centerLat ); 
    525                 LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLon  stat :: " +centerLon); 
     973                statReponse = serv_carte.getStatReponse(critereProvisoire, id_param, id_produit, colormap_id.longValue(), classdis_id.longValue(), id_secteur, id_rcp, alt, statistique, getMaskId()); 
     974 
     975                // On n'affiche la valeur du pixel cliqué que lors d'un clic sur la carte 
     976                //ou bien lors d'un recalcul d'un point déjà cliqué 
     977                if ((clicX != -1 && clicY != -1) || (!firstAff && !pixelCenter.equals(""))) { 
     978                        showPosPixel = true; 
     979                        String aPixelCenter = Double.toString(statReponse.getCenter()); 
     980                        pixelCenter = fixeDecimal(aPixelCenter); 
     981                        centerLat = String.valueOf(statReponse.getCenterLat()); 
     982                        centerLon = String.valueOf(statReponse.getCenterLon()); 
     983                } else if (firstAff){ 
     984                        showPosPixel = false; 
     985                        pixelCenter = ""; 
     986                        centerLat = ""; 
     987                        centerLon = ""; 
     988                } 
     989//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********pixelCenter stat  :: " + pixelCenter); 
     990//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLat stat :: " + centerLat); 
     991//              LoggerPerso.log(CarteBean.class, LoggerPerso.DEBUG, "***********centerLon  stat :: " + centerLon); 
     992        } 
     993 
     994        /** 
     995         * Permet de générer une carte de totaux 
     996         * @param updateAffiche permet de savoir si la zone visualisé doit être modifié ou non 
     997         */ 
     998        public void gestionCarteTotal(boolean firstAff) { 
     999                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     1000                String alt = (critereBean.getAlt()==null?"0":critereBean.getAlt()); 
     1001                Map<String, String> critere = new TraducteurCarte().tradCritere2Total(critereBean, this); 
     1002                long id_param = critereBean.getParametre().longValue(); 
     1003                long id_produit = critereBean.getProduit().longValue(); 
     1004                long id_secteur = (critereBean.getSector()==null?0:critereBean.getSector().longValue()); 
     1005                long id_rcp = critereBean.getRcp().longValue(); 
     1006 
     1007                StatReponse statReponse; 
     1008                String idUnique = getIdUnique(); 
     1009                boolean zoom = false; 
     1010                if (clicX != -1 && clicY != -1) { // en cas de zoom 
     1011                        serv_carte.zoomCarte(2, clicX, clicY, resolution); 
     1012                        zoom = true; 
     1013                } else { 
     1014                        if (firstAff) { 
     1015                                centerLatClick = 0; 
     1016                                centerLonClick = 0; 
     1017                        } 
     1018                } 
     1019                statReponse = serv_carte.getCarteStat(critere, id_param, id_produit, colormap_id.longValue(),classdis_id.longValue(), id_secteur, id_rcp, alt, total, idUnique, zone_demandee, zoom, firstAff, getMaskId()); 
     1020                String sumStr = Double.toString(statReponse.getGlobalSum()); 
     1021                globalSum = fixeDecimal(sumStr); 
     1022                url = statReponse.getUrlImage(); 
     1023                url_legend = serv_carte.getLegendStat(critereBean.getGrille().longValue(), colormap_id.longValue(),classdis_id.longValue(), total, idUnique); 
     1024 
     1025                ///initialisation du pixel du centre de la zone 
     1026//              zone_affichee = serv_carte.getCarteCoordinate(); 
     1027                CritereBean critereBeanProvisoire = new CritereBean(); 
     1028                critereBeanProvisoire.setBegDate(critereBean.getBegDate()); 
     1029                critereBeanProvisoire.setEndDate(critereBean.getEndDate()); 
     1030 
     1031                Zone zone_click = new Zone(centerLatClick, centerLatClick, centerLonClick, centerLonClick); 
     1032 
     1033                critereBeanProvisoire.setEastbc(zone_click.getEastbc()); 
     1034                critereBeanProvisoire.setWestbc(zone_click.getWestbc()); 
     1035                critereBeanProvisoire.setNorthbc(zone_click.getNorthbc()); 
     1036                critereBeanProvisoire.setSouthbc(zone_click.getSouthbc()); 
     1037                critereBeanProvisoire.setDay(critereBean.getDay()); 
     1038                critereBeanProvisoire.setMonth(critereBean.getMonth()); 
     1039                critereBeanProvisoire.setYear(critereBean.getYear()); 
     1040                Map<String, String> critereProvisoire = new TraducteurCarte().tradCritere2TotalReinit(critereBeanProvisoire, this); 
     1041                statReponse = serv_carte.getStatReponse(critereProvisoire, id_param, id_produit, getColormap_id(), getClassdis_id(), id_secteur, id_rcp, alt, total, getMaskId()); 
     1042 
     1043                // On n'affiche la valeur du pixel cliqué que lors d'un clic sur la carte 
     1044                //ou bien lors d'un recalcul d'un point déjà cliqué 
     1045                if ((clicX != -1 && clicY != -1) || (!firstAff && !pixelCenter.equals(""))) { 
     1046                        showPosPixel = true; 
     1047                        String aPixelCenter = Double.toString(statReponse.getCenter()); 
     1048                        pixelCenter = fixeDecimal(aPixelCenter); 
     1049                        centerLat = String.valueOf(statReponse.getCenterLat()); 
     1050                        centerLon = String.valueOf(statReponse.getCenterLon()); 
     1051                } else if (firstAff){ 
     1052                        showPosPixel = false; 
     1053                        pixelCenter = ""; 
     1054                        centerLat = ""; 
     1055                        centerLon = ""; 
     1056                } 
     1057        } 
     1058         
     1059        /** 
     1060         * Méthode fournissant l'identifiant de la grille correspondant au masque sélectionné 
     1061         * Si aucun masque n'est sélectionné, retourne 0 
     1062         */ 
     1063        private long getMaskId() { 
     1064                if (mask.equals("region")) return region.longValue(); 
     1065                else if (mask.equals("country")) return country.longValue(); 
     1066                else return 0; 
    5261067        } 
    5271068         
     
    5311072         */ 
    5321073        private void initStatistiqueList() { 
    533                 gridOn = true; 
    534                 statOn = false; 
     1074//              gridOn = true; 
     1075//              statOn = false; 
     1076                statistique = "moyenneCarte"; 
    5351077                if (statistiqueUI != null) 
    536                         statistiqueUI.setValue("none"); 
    537                 statistique = "none"; 
    538         } 
    539          
    540          
    541          
    542          
    543          
    544          
     1078                        statistiqueUI.setValue(statistique); 
     1079                mode = "date"; 
     1080                if (modeUI != null) 
     1081                        modeUI.setValue(mode); 
     1082        } 
     1083 
    5451084        private String fixeDecimal(String entree) { 
    546                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "-------------------------------------******------>entree "+entree); 
     1085//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "-------------------------------------******------>entree "+entree); 
    5471086                if (entree == null) 
    5481087                        return "nc"; 
    5491088                int index = entree.lastIndexOf("."); 
    5501089                int indexE = entree.lastIndexOf("E"); 
    551                 LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree  --lll-->2 "+indexE+"  "+index+"  "+entree.length()); 
    552                 if ( indexE == -1 && index != -1 && entree.length() >= index + 5) 
     1090//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree  ----> == "+indexE+"  "+index+"  "+entree.length()); 
     1091                if (indexE == -1 && index != -1 && entree.length() >= index + 5) { 
    5531092                        entree = entree.substring(0, entree.lastIndexOf(".")+5); 
    554                 if ( indexE != -1 && index != -1 && entree.length() >= index + 5) 
    555                 { 
     1093                } else if (indexE != -1 && index != -1 && entree.length() >= index + 5) { 
    5561094                        String aEntree = entree; 
    557                         LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "aEntree "+aEntree.lastIndexOf("E")+"  "+aEntree.length()+"    "+aEntree.lastIndexOf("E")+"  "+aEntree.length()); 
    558                         aEntree=aEntree.substring(aEntree.lastIndexOf("E"), aEntree.lastIndexOf("E")+aEntree.length()-aEntree.lastIndexOf("E")); 
     1095//                      LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "aEntree "+aEntree.lastIndexOf("E")+"  "+aEntree.length()+"    "+aEntree.lastIndexOf("E")+"  "+aEntree.length()); 
     1096                        aEntree = aEntree.substring(aEntree.lastIndexOf("E"), aEntree.lastIndexOf("E")+aEntree.length()-aEntree.lastIndexOf("E")); 
    5591097                        entree = entree.substring(0, entree.lastIndexOf(".")+5)+aEntree; 
    5601098                } 
    561                         LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree "+entree); 
     1099//              LoggerPerso.log(ServiceStatistique.class, LoggerPerso.DEBUG, "entree "+entree); 
    5621100                return entree; 
    5631101        } 
    564          
    565          
     1102 
    5661103        /*===================================================== 
    5671104         * Getter and Setter 
    5681105         ======================================================*/ 
    569          
     1106 
     1107        public String getUnite() { 
     1108                controleSession(); 
     1109                return unite; 
     1110        } 
     1111 
     1112        public void setUnite(String unite) { 
     1113                this.unite = unite; 
     1114        } 
     1115 
    5701116        public String getParametre() { 
    5711117                controleSession(); 
     
    6401186                this.colormapUI = colormapUI; 
    6411187        } 
    642          
     1188 
     1189        public UISelectOne getClassdisUI() { 
     1190                return classdisUI; 
     1191        } 
     1192 
     1193        public void setClassdisUI(UISelectOne classdisUI) { 
     1194                this.classdisUI = classdisUI; 
     1195        } 
     1196 
    6431197        public String getUrl() { 
    6441198                return url; 
     
    6481202                this.url = url; 
    6491203        } 
     1204 
    6501205        public Long getColormap_id() { 
    6511206                return colormap_id; 
     
    6561211        } 
    6571212 
     1213        public Long getClassdis_id() { 
     1214                return classdis_id; 
     1215        } 
     1216 
     1217        public void setClassdis_id(Long classdis_id) { 
     1218                this.classdis_id = classdis_id; 
     1219        } 
     1220 
    6581221        public List<SelectItem> getListe_colormap() { 
    6591222                return liste_colormap; 
     
    6641227        } 
    6651228 
     1229        public List<SelectItem> getListe_classdis() { 
     1230                return liste_classdis; 
     1231        } 
     1232 
     1233        public void setListe_classdis(List<SelectItem> liste_classdis) { 
     1234                this.liste_classdis = liste_classdis; 
     1235        } 
     1236 
    6661237        public int getClicX() { 
    6671238                return clicX; 
     
    6801251        } 
    6811252 
    682         public Zone getZone_affichee() { 
    683                 return zone_affichee; 
    684         } 
    685  
    686         public void setZone_affichee(Zone zone_affichee) { 
    687                 this.zone_affichee = zone_affichee; 
     1253        public Zone getZone_demandee() { 
     1254                return zone_demandee; 
     1255        } 
     1256 
     1257        public void setZone_demandee(Zone zone_demandee) { 
     1258                this.zone_demandee = zone_demandee; 
    6881259        } 
    6891260 
     
    7121283        } 
    7131284 
    714         public boolean isGridOn() { 
    715                 return gridOn; 
    716         } 
    717  
    718         public void setGridOn(boolean gridOn) { 
    719                 this.gridOn = gridOn; 
    720         } 
    721  
    722         public boolean isStatOn() { 
    723                 return statOn; 
    724         } 
    725  
    726         public void setStatOn(boolean statOn) { 
    727                 this.statOn = statOn; 
    728         } 
    729  
     1285//      public boolean isGridOn() { 
     1286//              return gridOn; 
     1287//      } 
     1288 
     1289//      public void setGridOn(boolean gridOn) { 
     1290//              this.gridOn = gridOn; 
     1291//      } 
     1292 
     1293//      public boolean isStatOn() { 
     1294//              return statOn; 
     1295//      } 
     1296 
     1297//      public void setStatOn(boolean statOn) { 
     1298//              this.statOn = statOn; 
     1299//      } 
    7301300 
    7311301        public String getMapTitle() { 
     
    7331303        } 
    7341304 
    735  
    7361305        public void setMapTitle(String mapTitle) { 
    7371306                this.mapTitle = mapTitle; 
    7381307        } 
    7391308 
    740  
    7411309        public UIOutput getMapTitleUI() { 
    7421310                return mapTitleUI; 
    7431311        } 
    7441312 
    745  
    7461313        public void setMapTitleUI(UIOutput mapTitleUI) { 
    7471314                this.mapTitleUI = mapTitleUI; 
    7481315        } 
    749          
    7501316 
    7511317        public double getMinParam() { 
     
    7561322                this.minParam = aMinParam; 
    7571323        } 
     1324 
    7581325        public UIInput getMinParamUI() { 
    7591326                return minParamUI; 
     
    7631330                this.minParamUI = aMinParamUI; 
    7641331        } 
     1332 
    7651333        public double getMaxParam() { 
    7661334                return maxParam; 
     
    7701338                this.maxParam = aMaxParam; 
    7711339        } 
     1340 
    7721341        public UIInput getMaxParamUI() { 
    7731342                return maxParamUI; 
     
    7771346                this.maxParamUI = aMaxParamUI; 
    7781347        } 
    779          
     1348 
    7801349        public Long getNbrClasses() { 
    7811350                return nbrClasses; 
     
    7851354                this.nbrClasses = aNbrClasses; 
    7861355        } 
    787          
     1356 
    7881357        public UISelectOne getNbrClassesUI() { 
    7891358                return nbrClassesUI; 
     
    7931362                this.nbrClassesUI = aNbrClassesUI; 
    7941363        } 
    795          
     1364 
    7961365        public String getPixelCenter() { 
    7971366                return pixelCenter; 
    7981367        } 
     1368 
    7991369        public void setPixelCenter(String aPixelCenter) { 
    8001370                this.pixelCenter = aPixelCenter; 
    8011371        } 
    802          
    803         public double getCenterLon() { 
     1372 
     1373        public String getCenterLon() { 
    8041374                return centerLon; 
    8051375        } 
    806         public void setCenterLon(double aCenterLon) { 
     1376 
     1377        public void setCenterLon(String aCenterLon) { 
    8071378                this.centerLon = aCenterLon; 
    8081379        } 
    809          
    810         public double getCenterLat() { 
     1380 
     1381        public String getCenterLat() { 
    8111382                return centerLat; 
    8121383        } 
    813         public void setCenterLat(double aCenterLat) { 
     1384 
     1385        public void setCenterLat(String aCenterLat) { 
    8141386                this.centerLat = aCenterLat; 
    8151387        } 
    816          
     1388 
    8171389        public double getCenterLonClick() { 
    8181390                return centerLonClick; 
    8191391        } 
     1392 
    8201393        public void setCenterLonClick(double aCenterLonClick) { 
    8211394                this.centerLonClick = aCenterLonClick; 
    8221395        } 
    823          
     1396 
    8241397        public double getCenterLatClick() { 
    8251398                return centerLatClick; 
    8261399        } 
     1400 
    8271401        public void setCenterLatClick(double aCenterLatClick) { 
    8281402                this.centerLatClick = aCenterLatClick; 
    8291403        } 
    830          
     1404 
    8311405        public UIOutput PixelCenterUI() { 
    8321406                return pixelCenterUI; 
     
    8361410                this.pixelCenterUI = aPixelCenterUI; 
    8371411        } 
    838          
    839          
     1412 
    8401413        public double getResolution() { 
    8411414                return resolution; 
    8421415        } 
     1416 
    8431417        public void setResolution(double aResolution) { 
    8441418                this.resolution = aResolution; 
    8451419        } 
    846          
     1420 
     1421        public String getSecteur() { 
     1422                return secteur; 
     1423        } 
     1424 
     1425        public void setSecteur(String secteur) { 
     1426                this.secteur = secteur; 
     1427        } 
     1428 
     1429        public String getRcp() { 
     1430                return rcp; 
     1431        } 
     1432 
     1433        public void setRcp(String rcp) { 
     1434                this.rcp = rcp; 
     1435        } 
     1436 
     1437        public String getColormap_txt() { 
     1438                return colormap_txt; 
     1439        } 
     1440 
     1441        public void setColormap_txt(String colormapTxt) { 
     1442                colormap_txt = colormapTxt; 
     1443        } 
     1444 
     1445        public String getTypeCodif() { 
     1446                return typeCodif; 
     1447        } 
     1448 
     1449        public void setTypeCodif(String typeCodif) { 
     1450                this.typeCodif = typeCodif; 
     1451        } 
     1452 
     1453        public String getMode() { 
     1454                return mode; 
     1455        } 
     1456 
     1457        public void setMode(String mode) { 
     1458                this.mode = mode; 
     1459        } 
     1460 
     1461        public UISelectOne getModeUI() { 
     1462                return modeUI; 
     1463        } 
     1464 
     1465        public void setModeUI(UISelectOne modeUI) { 
     1466                this.modeUI = modeUI; 
     1467        } 
     1468 
     1469        public boolean isShowPosPixel() { 
     1470                return showPosPixel; 
     1471        } 
     1472 
     1473        public void setShowPosPixel(boolean showPosPixel) { 
     1474                this.showPosPixel = showPosPixel; 
     1475        } 
     1476 
     1477        public String getTotal() { 
     1478                return total; 
     1479        } 
     1480 
     1481        public void setTotal(String total) { 
     1482                this.total = total; 
     1483        } 
     1484 
     1485        public UISelectOne getTotalUI() { 
     1486                return totalUI; 
     1487        } 
     1488 
     1489        public void setTotalUI(UISelectOne totalUI) { 
     1490                this.totalUI = totalUI; 
     1491        } 
     1492 
     1493        public int getNbrAlt() { 
     1494                return nbrAlt; 
     1495        } 
     1496 
     1497        public void setNbrAlt(int nbrAlt) { 
     1498                this.nbrAlt = nbrAlt; 
     1499        } 
     1500 
     1501        public String getGlobalSum() { 
     1502                return globalSum; 
     1503        } 
     1504 
     1505        public void setGlobalSum(String globalSum) { 
     1506                this.globalSum = globalSum; 
     1507        } 
     1508 
     1509        public Zone getZone_visible() { 
     1510                return zone_visible; 
     1511        } 
     1512 
     1513        public void setZone_visible(Zone zoneVisible) { 
     1514                zone_visible = zoneVisible; 
     1515        } 
     1516 
     1517        public String getMask() { 
     1518                return mask; 
     1519        } 
     1520 
     1521        public void setMask(String mask) { 
     1522                this.mask = mask; 
     1523        } 
     1524 
     1525        public UISelectOne getMaskUI() { 
     1526                return maskUI; 
     1527        } 
     1528 
     1529        public void setMaskUI(UISelectOne maskUI) { 
     1530                this.maskUI = maskUI; 
     1531        } 
     1532 
     1533        public List<SelectItem> getListe_region() { 
     1534                return liste_region; 
     1535        } 
     1536 
     1537        public void setListe_region(List<SelectItem> listeRegion) { 
     1538                liste_region = listeRegion; 
     1539        } 
     1540 
     1541        public Long getRegion() { 
     1542                return region; 
     1543        } 
     1544 
     1545        public void setRegion(Long region) { 
     1546                this.region = region; 
     1547        } 
     1548 
     1549        public UISelectOne getRegionUI() { 
     1550                return regionUI; 
     1551        } 
     1552 
     1553        public void setRegionUI(UISelectOne regionUI) { 
     1554                this.regionUI = regionUI; 
     1555        } 
     1556 
     1557        public List<SelectItem> getListe_country() { 
     1558                return liste_country; 
     1559        } 
     1560 
     1561        public void setListe_country(List<SelectItem> listeCountry) { 
     1562                liste_country = listeCountry; 
     1563        } 
     1564 
     1565        public Long getCountry() { 
     1566                return country; 
     1567        } 
     1568 
     1569        public void setCountry(Long country) { 
     1570                this.country = country; 
     1571        } 
     1572 
     1573        public UISelectOne getCountryUI() { 
     1574                return countryUI; 
     1575        } 
     1576 
     1577        public void setCountryUI(UISelectOne countryUI) { 
     1578                this.countryUI = countryUI; 
     1579        } 
     1580 
     1581        public String getRegionName() { 
     1582                return regionName; 
     1583        } 
     1584 
     1585        public void setRegionName(String regionName) { 
     1586                this.regionName = regionName; 
     1587        } 
     1588 
     1589        public String getCountryName() { 
     1590                return countryName; 
     1591        } 
     1592 
     1593        public void setCountryName(String countryName) { 
     1594                this.countryName = countryName; 
     1595        } 
     1596 
     1597        public List<SelectItem> getListe_mask() { 
     1598                return liste_mask; 
     1599        } 
     1600 
     1601        public void setListe_mask(List<SelectItem> listeMask) { 
     1602                liste_mask = listeMask; 
     1603        } 
    8471604} 
    848  
    849  
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/CritereBean.java

    r68 r70  
    11package org.medias.eccad.presentation.bean; 
    22 
     3import java.util.ArrayList; 
    34import java.util.List; 
    45 
     
    1213import javax.faces.model.SelectItem; 
    1314import javax.faces.validator.ValidatorException; 
    14 //import javax.servlet.http.HttpSession; 
    15  
    16  
    17 import org.medias.eccad.helpers.LoggerPerso; 
     15 
    1816import org.medias.eccad.metier.ServiceMetier; 
    1917import org.medias.eccad.modele.Produit; 
     
    3634        private List<SelectItem> liste_catparametre; 
    3735        private Long catparametre; 
    38  
     36         
     37        private List<SelectItem> liste_sector; 
     38        private Long sector; 
     39 
     40        private List<SelectItem> liste_rcp; 
     41        private Long rcp; 
     42         
    3943        private List<SelectItem> liste_grille; 
    4044        private Long grille; 
    4145 
     46        private List<SelectItem> liste_alt; 
     47        private String alt; 
     48 
     49        private List<SelectItem> liste_day; 
     50        private String day; 
     51         
     52        private List<SelectItem> liste_month; 
     53        private String month; 
     54         
     55        private List<SelectItem> liste_year; 
     56        private Integer year; 
     57         
    4258        private ServiceMetier smp; 
    43          
    44         private String ipcc_selection; 
    4559         
    4660        //private String produit_header; 
     
    5973        private UISelectOne  produitUI; 
    6074        private UISelectOne  parametreUI; 
     75        private UISelectOne  sectorUI; 
     76        private UISelectOne  rcpUI; 
     77        private UISelectOne  grilleUI; 
     78        private UISelectOne  altUI; 
     79        private UISelectOne  dayUI; 
     80        private UISelectOne  monthUI; 
     81        private UISelectOne  yearUI; 
    6182         
    6283        // date 
    6384        private String begDate; 
    6485        private String endDate; 
     86        private String date; 
     87        private String deltaDate; 
    6588         
    6689        private String begDateSauv; 
     
    7396        private UIInput uiEndDateSauv; 
    7497         
    75         private boolean prod_change; 
    76  
    7798        private Produit produitbean; 
    7899        private UIOutput produit_temp; 
     
    83104         */ 
    84105        public CritereBean() throws DeconnectionException { 
    85                  
    86106                smp = new ServiceMetier(); 
    87                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "creation"); 
    88107                majcatParam(); 
    89108                majParam(); 
    90109                majProduit(); 
     110                majSector(); 
     111                majRcp(); 
    91112                majDate(); 
    92113                majHeader(); 
    93114                majProduitTemp(); 
    94                 LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "size liste parametre fin " + liste_parametre.size()); 
    95                 prod_change = false; 
    96115                northbc = 90; 
    97116                southbc = -90; 
     
    106125         */ 
    107126        public void catParametreChangement(ValueChangeEvent even) throws DeconnectionException { 
    108                  
    109  
    110                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "fonction ::  catParametreChangement"); 
    111                  
    112                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, ""); 
    113                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "catParametre changement :: " + even.getNewValue() + " :: old :: " + catparametre); 
    114127                catparametre = (Long) even.getNewValue(); 
    115                 majParam();              
     128                majParam(); 
    116129                majProduit(); 
     130                majSector(); 
     131                majRcp(); 
    117132                majDate(); 
    118133                majHeader(); 
    119134                majProduitTemp(); 
    120                 prod_change=true; 
    121135        } 
    122136         
    123137        public void parametreChangement(ValueChangeEvent even) throws DeconnectionException { 
    124                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "parametreChangement"); 
    125                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "parametre changement :: " + even.getNewValue() + " :: old :: " + parametre); 
    126138                parametre = (Long) even.getNewValue(); 
    127139                majProduit(); 
     140                majSector(); 
     141                majRcp(); 
    128142                majDate(); 
    129143                majHeader(); 
    130144                majProduitTemp(); 
    131                 prod_change=true; 
    132145        } 
    133146 
     
    137150         */ 
    138151        public void produitChangement(ValueChangeEvent even) { 
    139                  
    140  
    141                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "fonction ::  produitChangement"); 
    142                  
    143                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "produit changement avant :: " + produit + " event " + even.getNewValue() + " uiselect " + produitUI.getValue()); 
    144                 if (prod_change) { 
    145                         LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "produit changement non réalisé :: " + produit); 
    146                         prod_change = false; 
    147                         //return; 
    148                 } 
    149                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "produit changement ok :: " + produit); 
    150152                produit = (Long) even.getNewValue(); 
    151153                if (produit != null) { 
     
    155157                        produitbean = new Produit(-1, "none", null, null); 
    156158                } 
     159                majSector(); 
     160                majRcp(); 
    157161                majDate();       
    158162                majHeader(); 
     
    160164        } 
    161165 
    162          
    163         /** 
    164          * met à jour la liste des catï¿œgories de parametres (initialisation de la liste) 
     166        /** 
     167         * Activé lors du changement du secteur 
     168         * @param even la nouvelle valeur du secteur 
     169         */ 
     170        public void secteurChangement(ValueChangeEvent even) { 
     171                sector = (Long) even.getNewValue(); 
     172                majRcp(); 
     173                majDate(); 
     174        } 
     175 
     176        /** 
     177         * Activé lors du changement du RCP 
     178         * @param even la nouvelle valeur du RCP 
     179         */ 
     180        public void rcpChangement(ValueChangeEvent even) { 
     181                rcp = (Long) even.getNewValue(); 
     182                majSector(); 
     183                majDate(); 
     184        } 
     185         
     186        private boolean identInList(Long identifiant,List<SelectItem> list) { 
     187                if (identifiant == null) { 
     188                        return false; 
     189                } 
     190                Long idCurrent; 
     191                for (int num = 0; num < list.size(); num++) { 
     192                        idCurrent = (Long)list.get(num).getValue(); 
     193                        if (idCurrent.longValue() == identifiant.longValue()) 
     194                                return true; 
     195                } 
     196                return false; 
     197        } 
     198         
     199        /** 
     200         * met à jour la liste des catégories de parametres (initialisation de la liste) 
    165201         * 
    166202         */ 
    167203        public void majcatParam() { 
    168  
    169204                controleSession(); 
    170                  
    171                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "fonction ::  majcatParam"); 
    172                  
    173                  
    174                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "-8-*catparametre maj :: "); 
    175205                liste_catparametre = smp.getListCatParametre(); 
    176                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "------*SIZE catparametre maj :: "+liste_catparametre.size()); 
    177206                if (liste_catparametre.size() > 0) { 
    178207                        catparametre= (Long) liste_catparametre.get(0).getValue(); 
     
    188217         */ 
    189218        public void majParam() { 
    190                  
    191                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "fonction :: majParam"); 
    192                  
    193219                controleSession(); 
    194                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "parametre maj Catparam :: " + catparametre); 
    195220                if (catparametre == null) { 
    196221                        liste_parametre = null; 
     
    198223                        return; 
    199224                } 
    200                  
    201                  
     225 
    202226                liste_parametre = smp.getListParamByCatParam(catparametre.intValue()); 
    203                 LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "liste parametre valeur 0>>>>>>" + liste_parametre.get(0).getValue()); 
    204227                if (liste_parametre.size() > 0) { 
    205                         LoggerPerso.log(this.getClass(), LoggerPerso.DEBUG, "liste parametre > 0"); 
    206                         parametre= (Long) liste_parametre.get(0).getValue(); 
     228                        if (!identInList(parametre, liste_parametre)) { 
     229                                parametre= (Long) liste_parametre.get(0).getValue(); 
     230                        } 
    207231                        if (parametreUI != null) 
    208                                 parametreUI.setValue(new Long(parametre)); 
    209                          
     232                                parametreUI.setValue(parametre); 
    210233                } 
    211234                else 
     
    214237        } 
    215238         
     239        /** 
     240         * met à jour la liste des secteurs (initialisation de la liste) 
     241         * 
     242         */ 
     243        public void majSector() { 
     244                controleSession(); 
     245                if (catparametre == null) { 
     246                        liste_sector = null; 
     247                        sector = null; 
     248                        return; 
     249                } 
     250                liste_sector = smp.getListSectorByParam(parametre.intValue(),produit.intValue(),(rcp==null?0:rcp.intValue())); 
     251                if (liste_sector.size() > 0) { 
     252                        if (!identInList(sector, liste_sector)) { 
     253                                sector= (Long) liste_sector.get(0).getValue(); 
     254                        } 
     255                        if (sectorUI != null) 
     256                                sectorUI.setValue(sector); 
     257                } 
     258                else { 
     259                        sector = new Long(0); 
     260                } 
     261        } 
     262         
     263        /** 
     264         * met à jour la liste des rcp 
     265         * 
     266         */ 
     267        public void majRcp() { 
     268                controleSession(); 
     269                if (catparametre == null) { 
     270                        liste_rcp = null; 
     271                        rcp = null; 
     272                        return; 
     273                } 
     274                liste_rcp = smp.getListRcpByParam(parametre.intValue(),produit.intValue(),(sector==null?0:sector.intValue())); 
     275                if (liste_rcp.size() > 0) { 
     276                        if (!identInList(rcp, liste_rcp)) { 
     277                                rcp= (Long) liste_rcp.get(0).getValue(); 
     278                        } 
     279                        if (rcpUI != null) 
     280                                rcpUI.setValue(rcp);                     
     281                } 
     282                else { 
     283                        rcp = new Long(0); 
     284                } 
     285        } 
    216286         
    217287        /** 
     
    220290         */ 
    221291        public void majProduit() throws DeconnectionException { 
    222                  
    223                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "fonction ::  majProduit"); 
    224                  
    225292                controleSession(); 
    226                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "produit maj param :: " + parametre); 
    227293                if (parametre == null) { 
    228294                        liste_produit = null; 
     
    231297                } 
    232298                liste_produit = smp.getListProduit(parametre.intValue()); 
    233                 if (liste_produit.size() > 0) {  
    234                         produit = (Long) liste_produit.get(0).getValue(); 
     299                if (liste_produit.size() > 0) { 
     300                        if (!identInList(produit, liste_produit)) { 
     301                                produit = (Long) liste_produit.get(0).getValue(); 
     302                        } 
    235303                        if (produitUI != null) 
    236                                 produitUI.setValue(new Long(produit)); 
     304                                produitUI.setValue(produit); 
    237305                        produitbean = smp.getProduitById(produit.intValue()); 
    238306                } 
     
    245313         * 
    246314         */ 
    247         public void majGrille() { 
    248                 LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "produit maj grille :: " + grille); 
     315        public void majGrille(String dateGrille) { 
    249316                if (produit == null) { 
    250317                        liste_grille = null; 
     
    252319                        return; 
    253320                } 
    254                  
    255                 liste_grille = smp.getListGrille(produit.intValue(),parametre.intValue(), begDate, endDate); 
    256                 if (liste_grille.size() > 0) 
    257                         grille = (Long) liste_grille.get(0).getValue(); 
    258                 else 
     321                liste_grille = smp.getListGrille(produit.longValue(),parametre.longValue(),(sector==null?0:sector.longValue()),(rcp==null?0:rcp.longValue()), begDate, endDate, deltaDate, produitbean, alt); 
     322                if (liste_grille.size() > 0) { 
     323                        if (dateGrille == null) { 
     324                                grille = (Long) liste_grille.get(0).getValue(); 
     325                                if (grilleUI != null) 
     326                                        grilleUI.setValue(grille); 
     327                                date = liste_grille.get(0).getLabel(); 
     328                                if (date.length() == 7) { 
     329                                        date += "-01"; 
     330                                } else if (date.length() == 4) { 
     331                                        date += "-01-01"; 
     332                                } 
     333                        } else { 
     334                                String dateLabel; 
     335                                for (int num = 0; num < liste_grille.size(); num++) { 
     336                                        dateLabel = liste_grille.get(num).getLabel(); 
     337                                        if (dateLabel.length() == 7) { 
     338                                                dateLabel += "-01"; 
     339                                        } else if (dateLabel.length() == 4) { 
     340                                                dateLabel += "-01-01"; 
     341                                        } 
     342                                        if (dateLabel.equals(dateGrille)) { 
     343                                                grille = (Long)liste_grille.get(num).getValue(); 
     344                                                if (grilleUI != null) 
     345                                                        grilleUI.setValue(grille); 
     346                                                date = dateLabel;  
     347                                                break; 
     348                                        } 
     349                                } 
     350                        } 
     351                } else { 
    259352                        grille = null; 
    260         } 
    261          
     353                } 
     354//System.out.println("majGrille, nouvelle date="+date+", alt="+alt+", grille="+grille+", day="+day+", month="+month+", year="+year); 
     355        } 
     356 
     357        /** 
     358         * Met à jour la liste des altitudes dans le cas où on a un secteur "Aviation" 
     359         * 
     360         */ 
     361        public void majAlt(String secteur) { 
     362                if (produit == null || !secteur.equals("Aviation")) { 
     363                        liste_alt = null; 
     364                        alt = null; 
     365                        return; 
     366                } 
     367                liste_alt = smp.getListAlt(sector.longValue(),begDate); 
     368                if (liste_alt.size() > 0) { 
     369                        alt = (String) liste_alt.get(0).getValue(); 
     370                        if (altUI != null) 
     371                                altUI.setValue(alt); 
     372                } else { 
     373                        alt = null; 
     374                } 
     375//System.out.println("majAlt, date="+date+", nouveau alt="+alt+", grille="+grille+", day="+day+", month="+month+", year="+year); 
     376        } 
     377         
     378        /** 
     379         * Met à jour la liste des jours/mois/années pour la période sélectionnée 
     380         * 
     381         */ 
     382        public void majDayMonthYear(String traducteur) { 
     383                if (produit == null) { 
     384                        liste_day = null; 
     385                        liste_month = null; 
     386                        liste_year = null; 
     387                        day = null; 
     388                        month = null; 
     389                        year = null; 
     390                        return; 
     391                } 
     392                 
     393                liste_day = new ArrayList<SelectItem>(); 
     394                liste_month = new ArrayList<SelectItem>(); 
     395                liste_year = new ArrayList<SelectItem>(); 
     396                if (traducteur.equals("traducteur_temporel")) { 
     397                        String dateGrille, jourGrille, moisGrille, anneeGrille, moisPrec = "", anneePrec = ""; 
     398                        // On parcourt la liste des dates des grilles 
     399                        for (int num = 0; num < liste_grille.size(); num++) { 
     400                                dateGrille = liste_grille.get(num).getLabel(); 
     401                                // On récupÚre le mois et l'année (AAAA-MM-JJ) suivant la date (AAAA-MM ou AAAA-MM-JJ) 
     402                                if (dateGrille.length() == 7) { 
     403                                        jourGrille = dateGrille+"-01"; 
     404                                        moisGrille = dateGrille; 
     405                                } else if (dateGrille.length() == 4) { 
     406                                        jourGrille = dateGrille+"-01-01"; 
     407                                        moisGrille = dateGrille+"-01"; 
     408                                } else { 
     409                                        jourGrille = dateGrille; 
     410                                        moisGrille = dateGrille.substring(0,7); 
     411                                } 
     412                                anneeGrille = dateGrille.substring(0,4); 
     413                                // On ajoute le jour/ mois / année à la liste si celui-ci n'est pas déjà présent 
     414                                liste_day.add(new SelectItem(jourGrille,jourGrille)); 
     415                                if (!moisGrille.equals(moisPrec)) { 
     416                                        liste_month.add(new SelectItem(moisGrille, moisGrille)); 
     417                                } 
     418                                if (!anneeGrille.equals(anneePrec)) { 
     419                                        liste_year.add(new SelectItem(new Integer(anneeGrille), anneeGrille)); 
     420                                } 
     421                                moisPrec = moisGrille; 
     422                                anneePrec = anneeGrille; 
     423                        } 
     424 
     425                        if (liste_day.size() > 0) { 
     426                                day = date; 
     427                                if (dayUI != null) 
     428                                        dayUI.setValue(day); 
     429                        } else { 
     430                                day = null; 
     431                        } 
     432                        if (liste_month.size() > 0) { 
     433                                month = date.substring(0,7); 
     434                                if (monthUI != null) 
     435                                        monthUI.setValue(month); 
     436                        } else { 
     437                                month = null; 
     438                        } 
     439                        if (liste_year.size() > 0) { 
     440                                year = new Integer(date.substring(0,4)); 
     441                                if (yearUI != null) 
     442                                        yearUI.setValue(year); 
     443                        } else { 
     444                                year = null; 
     445                        } 
     446                } 
     447//System.out.println("majDayMonthYear, date="+date+", alt="+alt+", grille="+grille+", day="+day+", month="+month+", year="+year); 
     448        } 
    262449         
    263450        /** 
     
    276463        private void majDate() { 
    277464                if (produit == null) { 
    278                         LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "maj date produit null"); 
    279465                        begDate = null; 
    280466                        endDate = null; 
     
    288474                        if (uiEndDate != null){ 
    289475                                uiEndDate.setValue(endDate); 
    290                                 } 
     476                        } 
    291477                        if (uiEndDateSauv != null){ 
    292478                                uiEndDateSauv.setValue(endDate); 
    293479                                setEndDateSauv(endDate); 
    294                                 } 
    295                         return; 
    296                 } 
    297  
    298                 if (produitbean != null) { 
    299                         LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "majDATE::nom::"+ produitbean.getNom() + "::date::" + produitbean.getBeginDate()); 
    300                         LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "majDATE::nom::"+ produitbean.getNom() + "::date::" + produitbean.getEndDate()); 
    301                         begDate = produitbean.getBeginDate().toString(); 
    302                         endDate = produitbean.getEndDate().toString(); 
    303  
     480                        } 
     481                        return; 
     482                } 
     483 
     484                ArrayList<String> dates = smp.getDates(produit.longValue(),parametre.longValue(),(sector==null?0:sector.longValue()),(rcp==null?0:rcp.longValue()),produitbean.getNom()); 
     485//              if (produitbean != null) { 
     486                if (dates.size() == 3) { 
     487//                      begDate = produitbean.getBeginDate().toString(); 
     488//                      endDate = produitbean.getEndDate().toString(); 
     489                        begDate = dates.get(0); 
     490                        endDate = dates.get(1); 
     491                        deltaDate = dates.get(2); 
    304492                        begDateSauv = begDate; 
    305493                        endDateSauv = endDate; 
    306                                                  
    307494                } 
    308495                else { 
    309496                        begDate = null; 
    310497                        endDate = null; 
     498                        deltaDate = null; 
    311499                        begDateSauv = null; 
    312500                        endDateSauv = null; 
     
    315503                if (uiBegDate != null){ 
    316504                        uiBegDate.setValue(begDate); 
    317                         LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "majDATE::nom::"+ produitbean.getNom() + "::begDate::" +begDate); 
    318                          
    319505                } 
    320506                if (uiBegDateSauv != null){ 
     
    326512                if (uiEndDateSauv != null){ 
    327513                        uiEndDateSauv.setValue(endDateSauv); 
    328                         LoggerPerso.log(CritereBean.class, LoggerPerso.DEBUG, "majDATE::nom::"+ produitbean.getNom() + "::endDateSauv::" +endDateSauv); 
    329                          
    330514                } 
    331515        } 
     
    348532        } 
    349533         
    350          
    351534        /* 
    352535         * GETTER & SETTER + VALIDATOR 
     
    356539        } 
    357540 
    358  
    359541        public void setGrille(Long grille) { 
    360542                this.grille = grille; 
    361543        } 
    362544 
    363  
    364545        public List<SelectItem> getListe_grille() { 
    365546                return liste_grille; 
    366547        } 
    367548 
    368  
    369549        public void setListe_grille(List<SelectItem> liste_grille) { 
    370550                this.liste_grille = liste_grille; 
     
    375555        } 
    376556 
    377  
    378557        public void setProduit(Long produit) { 
    379558                this.produit = produit; 
    380559        } 
    381560 
    382  
    383561        public List<SelectItem> getListe_produit() { 
    384562                return liste_produit; 
     
    405583        } 
    406584         
    407          
    408         ///////////// 
    409585        public UIInput getUiBegDateSauv() { 
    410586                return uiBegDateSauv; 
     
    422598                this.uiEndDateSauv = uiEndDateSauv; 
    423599        } 
    424         //////////// 
    425          
    426          
    427600 
    428601        public int getOid() { 
     
    438611        } 
    439612 
    440  
    441613        public void setListe_catparametre(List<SelectItem> liste_catParametre) { 
    442614                this.liste_catparametre = liste_catParametre; 
    443615        } 
    444          
    445  
    446616 
    447617        public Long getCatParametre() throws DeconnectionException { 
     
    450620        } 
    451621 
    452  
    453622        public void setCatParametre(Long catParametre) { 
    454623                this.catparametre = catParametre; 
     
    459628        } 
    460629 
    461  
    462630        public void setListe_parametre(List<SelectItem> liste_parametre) { 
    463631                this.liste_parametre = liste_parametre; 
    464632        } 
    465633         
    466  
    467  
    468634        public Long getParametre() throws DeconnectionException { 
    469635                controleSession(); 
     
    471637        } 
    472638 
    473  
    474639        public void setParametre(Long parametre) { 
    475640                this.parametre = parametre; 
    476641        } 
    477642 
     643        public List<SelectItem> getListe_sector() { 
     644                return liste_sector; 
     645        } 
     646 
     647        public List<SelectItem> getListe_rcp() { 
     648                return liste_rcp; 
     649        } 
     650         
     651        public void setListe_sector(List<SelectItem> liste_sector) { 
     652                this.liste_sector = liste_sector; 
     653        } 
     654         
     655        public void setListe_rcp(List<SelectItem> liste_rcp) { 
     656                this.liste_rcp= liste_rcp; 
     657        } 
     658         
     659        public Long getSector() throws DeconnectionException { 
     660                return sector; 
     661        } 
     662 
     663        public Long getRcp() throws DeconnectionException { 
     664                return rcp; 
     665        } 
     666         
     667        public void setSector(Long sector) { 
     668                this.sector = sector; 
     669        } 
     670 
     671        public void setRcp(Long rcp) { 
     672                this.rcp = rcp; 
     673        } 
     674         
    478675        public String getBegDate() { 
    479676                return begDate; 
     
    539736        } 
    540737 
    541  
    542  
    543738        public UIInput getEastbcInput() { 
    544739                return eastbcInput; 
    545740        } 
    546741 
    547  
    548  
    549742        public void setEastbcInput(UIInput eastbcInput) { 
    550743                this.eastbcInput = eastbcInput; 
    551744        } 
    552745 
    553  
    554  
    555746        public UIInput getNorthbcInput() { 
    556747                return northbcInput; 
    557748        } 
    558749 
    559  
    560  
    561750        public void setNorthbcInput(UIInput northbcInput) { 
    562751                this.northbcInput = northbcInput; 
    563752        } 
    564753 
    565  
    566  
    567754        public UIInput getSouthbcInput() { 
    568755                return southbcInput; 
    569756        } 
    570757 
    571  
    572  
    573758        public void setSouthbcInput(UIInput southbcInput) { 
    574759                this.southbcInput = southbcInput; 
    575760        } 
    576761 
    577  
    578  
    579762        public UIInput getWestbcInput() { 
    580763                return westbcInput; 
    581764        } 
    582765 
    583  
    584  
    585766        public void setWestbcInput(UIInput westbcInput) { 
    586767                this.westbcInput = westbcInput; 
    587768        } 
    588  
    589769         
    590770        public void validateDate(FacesContext contexte, UIComponent composant, Object objet) throws ValidatorException { 
     
    612792                if (uiBegDate.getValue().toString().compareTo(uiEndDate.getValue().toString()) > 0) { 
    613793                        estValide = false; 
    614                         errMsg = new FacesMessage("begin date must be smaller than end date"); 
    615                 } 
    616                 if ((uiBegDate.getValue().toString().compareTo(uiEndDateSauv.getValue().toString()) > 0) && estValide) { 
     794                        errMsg = new FacesMessage("Begin date must be lower or equal than End date"); 
     795                } 
     796                else if (uiBegDateSauv.getValue().toString().compareTo(uiBegDate.getValue().toString()) > 0) { 
    617797                        estValide = false; 
    618                         errMsg = new FacesMessage(uiEndDateSauv.getValue().toString()+" - "+ uiBegDate.getValue().toString()); 
    619                         //errMsg = new FacesMessage("no data in this Date selection"); 
    620                 } 
    621                  
     798                        errMsg = new FacesMessage("Begin date must be greater or equal than "+uiBegDateSauv.getValue().toString()); 
     799                } 
     800                else if (uiEndDate.getValue().toString().compareTo(uiEndDateSauv.getValue().toString()) > 0) { 
     801                        estValide = false; 
     802                        errMsg = new FacesMessage("End date must be lower or equal than "+uiEndDateSauv.getValue().toString()); 
     803                } 
    622804                if (!estValide) 
    623805                        throw new ValidatorException(errMsg); 
    624                  
    625806        } 
    626807         
     
    634815         
    635816        /** 
    636          * Valide la date 
     817         * Valide la zone de sélection 
    637818         * @param contexte 
    638819         * @param composant 
     
    675856        } 
    676857 
    677  
    678  
    679858        public ServiceMetier getSmp() { 
    680859                return smp; 
     
    687866        public void setProduitUI(UISelectOne produitUI) { 
    688867                this.produitUI = produitUI; 
    689                 ////system.out.println("\n\n\n" + produitUI.getValue()); 
    690868        } 
    691869 
     
    697875        public void setParametreUI(UISelectOne parametreUI) { 
    698876                this.parametreUI = parametreUI; 
    699                 ////system.out.println("\n\n\n" + produitUI.getValue()); 
    700         } 
    701          
    702          
     877        } 
     878         
     879        public UISelectOne getSectorUI() { 
     880                return sectorUI; 
     881        } 
     882 
     883        public UISelectOne getRcpUI() { 
     884                return rcpUI; 
     885        } 
     886         
     887        public void setSectorUI(UISelectOne sectorUI) { 
     888                this.sectorUI = sectorUI; 
     889        } 
     890         
     891        public void setRcpUI(UISelectOne rcpUI) { 
     892                this.rcpUI = rcpUI; 
     893        } 
     894 
    703895/*      public String getProduit_header() { 
    704896                return produit_header; 
     
    732924                this.produit_temp = produit_temp; 
    733925        } 
     926 
     927        public String getDate() { 
     928                return date; 
     929        } 
     930 
     931        public void setDate(String date) { 
     932                this.date = date; 
     933        } 
     934 
     935        public List<SelectItem> getListe_month() { 
     936                return liste_month; 
     937        } 
     938 
     939        public void setListe_month(List<SelectItem> listeMonth) { 
     940                liste_month = listeMonth; 
     941        } 
     942 
     943        public String getMonth() { 
     944                return month; 
     945        } 
     946 
     947        public void setMonth(String month) { 
     948                this.month = month; 
     949        } 
     950 
     951        public List<SelectItem> getListe_year() { 
     952                return liste_year; 
     953        } 
     954 
     955        public void setListe_year(List<SelectItem> listeYear) { 
     956                liste_year = listeYear; 
     957        } 
     958 
     959        public Integer getYear() { 
     960                return year; 
     961        } 
     962 
     963        public void setYear(Integer year) { 
     964                this.year = year; 
     965        } 
     966 
     967        public List<SelectItem> getListe_day() { 
     968                return liste_day; 
     969        } 
     970 
     971        public void setListe_day(List<SelectItem> listeDay) { 
     972                liste_day = listeDay; 
     973        } 
     974 
     975        public String getDay() { 
     976                return day; 
     977        } 
     978 
     979        public void setDay(String day) { 
     980                this.day = day; 
     981        } 
     982 
     983        public UISelectOne getDayUI() { 
     984                return dayUI; 
     985        } 
     986 
     987        public void setDayUI(UISelectOne dayUI) { 
     988                this.dayUI = dayUI; 
     989        } 
     990 
     991        public UISelectOne getMonthUI() { 
     992                return monthUI; 
     993        } 
     994 
     995        public void setMonthUI(UISelectOne monthUI) { 
     996                this.monthUI = monthUI; 
     997        } 
     998 
     999        public UISelectOne getYearUI() { 
     1000                return yearUI; 
     1001        } 
     1002 
     1003        public void setYearUI(UISelectOne yearUI) { 
     1004                this.yearUI = yearUI; 
     1005        } 
     1006 
     1007        public UISelectOne getGrilleUI() { 
     1008                return grilleUI; 
     1009        } 
     1010 
     1011        public void setGrilleUI(UISelectOne grilleUI) { 
     1012                this.grilleUI = grilleUI; 
     1013        } 
     1014 
     1015        public List<SelectItem> getListe_alt() { 
     1016                return liste_alt; 
     1017        } 
     1018 
     1019        public void setListe_alt(List<SelectItem> listeAlt) { 
     1020                liste_alt = listeAlt; 
     1021        } 
     1022 
     1023        public String getAlt() { 
     1024                return alt; 
     1025        } 
     1026 
     1027        public void setAlt(String alt) { 
     1028                this.alt = alt; 
     1029        } 
     1030 
     1031        public UISelectOne getAltUI() { 
     1032                return altUI; 
     1033        } 
     1034 
     1035        public void setAltUI(UISelectOne altUI) { 
     1036                this.altUI = altUI; 
     1037        } 
     1038 
     1039        public String getDeltaDate() { 
     1040                return deltaDate; 
     1041        } 
     1042 
     1043        public void setDeltaDate(String deltaDate) { 
     1044                this.deltaDate = deltaDate; 
     1045        } 
    7341046} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/DeconnectionException.java

    r68 r70  
    33public class DeconnectionException extends RuntimeException { 
    44 
     5        /** 
     6         *  
     7         */ 
     8        private static final long serialVersionUID = 1L; 
     9 
    510} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/ExtractBean.java

    r68 r70  
    33import java.io.IOException; 
    44 
     5import javax.faces.application.FacesMessage; 
     6import javax.faces.component.UIComponent; 
     7import javax.faces.component.UIInput; 
    58import javax.faces.context.FacesContext; 
    69import javax.faces.event.ActionEvent; 
     10import javax.faces.validator.ValidatorException; 
    711import javax.servlet.http.HttpSession; 
    812 
     
    1519import org.medias.eccad.modele.Parametre; 
    1620import org.medias.eccad.modele.Produit; 
     21import org.medias.eccad.modele.Rcp; 
     22import org.medias.eccad.modele.Secteur; 
    1723 
    1824 
     
    2531        public CritereExtractBean critere; 
    2632        public int nbrGrille; 
     33        public int nbrAlt; 
    2734        public Produit produit; 
    2835        public Parametre param; 
     36        public Secteur secteur; 
     37        public Rcp rcp; 
    2938         
    3039        public ExtractBean() throws DeconnectionException { 
    3140                controleSession(); 
    32                  
     41 
    3342                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    3443                SessionBean sessionbean = (SessionBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("sessionBean"); 
    35                  
    36                  
     44                critereBean.majGrille(null); 
    3745                produit = critereBean.getSmp().getProduitById(critereBean.getProduit().intValue()); 
    3846                param = critereBean.getSmp().getParametreById(critereBean.getParametre().intValue()); 
     47                secteur = critereBean.getSmp().getSecteurById(critereBean.getSector().intValue()); 
     48                rcp = critereBean.getSmp().getRcpById(critereBean.getRcp().intValue()); 
    3949                 
    4050                critere = new CritereExtractBean(); 
     
    4757                critere.setParametre(critereBean.getParametre().toString()); 
    4858                critere.setProduit(critereBean.getProduit().toString()); 
     59                critere.setSecteur(critereBean.getSector().toString()); 
     60                critere.setRcp(critereBean.getRcp().toString()); 
    4961                critere.setDataFileFormat("1"); 
    5062                critere.setDataFileCompress("0"); 
     
    5466                 
    5567                critere.setMailUser(sessionbean.getEmail()); 
    56                 nbrGrille = critereBean.getSmp().getListGrille(critereBean.getProduit(),critereBean.getParametre(), critere.getDateDebut(), critere.getDateFin()).size(); 
     68                nbrGrille = (critereBean.getListe_grille()==null?0:critereBean.getListe_grille().size()); 
     69                nbrAlt = (critereBean.getListe_alt()==null?0:critereBean.getListe_alt().size()); 
     70                        //critereBean.getSmp().getListGrille(critereBean.getProduit(),critereBean.getParametre(),  
     71                        //      (critereBean.getSector()==null?0:critereBean.getSector().longValue()),  
     72                        //      (critereBean.getRcp()==null?0:critereBean.getRcp().longValue()),  
     73                        //      critere.getDateDebut(), critere.getDateFin(),critereBean.getProduitbean(),critereBean.getAlt()).size(); 
    5774        } 
    5875         
     
    91108        } 
    92109         
     110        /** 
     111         * Valide la requête d'extraction 
     112         */ 
     113        public void validateRequest(FacesContext contexte, UIComponent composant, Object objet) throws ValidatorException { 
     114                boolean estValide = true; 
     115                 
     116                if ((contexte == null) || (composant == null)) { 
     117                        throw new NullPointerException("composant ou contexte null"); 
     118                } 
     119                 
     120                if (!(composant instanceof UIInput)) 
     121                        return; 
     122                 
     123                FacesMessage errMsg = null; 
     124                 
     125                if ( produit.getNom().equals("Region_IPCC") || produit.getNom().equals("GPW3_Country") || 
     126                                (produit.getNom().equals("IPCC") &&  
     127                                (secteur.getIdentifiant() == 0 || secteur.getNom().equals("Aviation"))) ) { 
     128                        estValide = false; 
     129                        errMsg = new FacesMessage("Sorry, this request is not available yet. Please try later."); 
     130                } 
     131 
     132                if (!estValide) 
     133                        throw new ValidatorException(errMsg); 
     134        } 
     135         
    93136        public CritereExtractBean getCritere() { 
    94137                return critere; 
     
    122165                this.produit = produit; 
    123166        } 
     167 
     168        public Secteur getSecteur() { 
     169                return secteur; 
     170        } 
     171 
     172        public void setSecteur(Secteur secteur) { 
     173                this.secteur = secteur; 
     174        } 
     175 
     176        public Rcp getRcp() { 
     177                return rcp; 
     178        } 
     179 
     180        public void setRcp(Rcp rcp) { 
     181                this.rcp = rcp; 
     182        } 
     183 
     184        public int getNbrAlt() { 
     185                return nbrAlt; 
     186        } 
     187 
     188        public void setNbrAlt(int nbrAlt) { 
     189                this.nbrAlt = nbrAlt; 
     190        } 
    124191} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/GrapheBean.java

    r68 r70  
    11package org.medias.eccad.presentation.bean; 
    22 
     3import java.util.Map; 
     4 
    35import javax.faces.context.FacesContext; 
     6import javax.faces.event.ActionEvent; 
    47import javax.servlet.http.HttpSession; 
    58 
    6 import org.medias.eccad.metier.statistique.ServiceGraphe; 
     9import org.medias.eccad.metier.statistique.ServiceStatistique; 
     10import org.medias.eccad.modele.Parametre; 
     11import org.medias.eccad.modele.Produit; 
     12import org.medias.eccad.modele.ResultatStat; 
     13import org.medias.eccad.persistance.exception.PersistanceException; 
     14import org.medias.eccad.presentation.traducteur.TraducteurCarte; 
    715 
    816public class GrapheBean extends AbstractVueBean{ 
     17        private ResultatStat result; 
     18        private String typeResult; 
     19        private String lat; 
     20        private String lon; 
     21        private Long id_param; 
     22        private Long id_produit; 
     23        private Long id_secteur; 
     24        private Long id_rcp; 
     25        private String alt; 
     26        private String type; 
     27        private String urlGraphe; 
     28        private String infoSup; 
     29        private String unite; 
     30        private String param; 
     31        private String produit; 
     32        private String secteur; 
     33        private String rcp; 
    934         
    10         public GrapheBean() { 
     35        public GrapheBean() throws PersistanceException { 
    1136                controleSession(); 
    1237                //CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    13                 ServiceGraphe service = new ServiceGraphe(); 
    14                 service.genereGraphe(getIdUnique(), null); 
     38//              ServiceGraphe service = new ServiceGraphe(); 
     39//              service.genereGraphe(getIdUnique(), null,"","",""); 
     40 
     41                initializeLatLon(); 
     42                 
     43                urlGraphe = "../images/nographe.png"; 
     44                drawGraph(null); 
     45        } 
     46         
     47        public void initializeLatLon(){ 
     48                CarteBean cartebean = (CarteBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("carteBean"); 
     49                this.setLat(cartebean.getCenterLat()); 
     50                this.setLon(cartebean.getCenterLon()); 
     51        } 
     52         
     53        public void calculateByPeriod() throws PersistanceException { 
     54                controleSession(); 
     55                typeResult = "Statistics"; 
     56//              LoggerPerso.log(GrapheBean.class, LoggerPerso.DEBUG, "calculateByPeriod"); 
     57                getStatistique(genereCritere()); 
     58        } 
     59         
     60        public void drawGraph(ActionEvent event) throws PersistanceException { 
     61                controleSession(); 
     62                calculateByPeriod(); 
     63                getGraphe(genereCritere()); 
     64        } 
     65         
     66        private Map<String, String> genereCritere() throws PersistanceException { 
     67                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
     68                CarteBean carteBean = (CarteBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("carteBean"); 
     69//              LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "cartebean = "+cartebean.getUrl()); 
     70                 
     71                Map<String, String> critere = new TraducteurCarte().tradCritere2Stat(critereBean, carteBean); 
     72                id_param = critereBean.getParametre(); 
     73                id_produit = critereBean.getProduit(); 
     74                id_secteur = critereBean.getSector(); 
     75                id_rcp = critereBean.getRcp(); 
     76                alt = (critereBean.getAlt()==null?"0":critereBean.getAlt()); 
     77                Parametre parametre = critereBean.getSmp().getParametreById(id_param.intValue());                
     78                unite = parametre.getUnite(); 
     79                if (unite.equals("number of fires") || unite.equals("no unit") || unite.equals("code value")) { 
     80                        type = "positive integer"; 
     81                } else { 
     82                        type = "double"; 
     83                } 
     84                param = parametre.getNom(); 
     85                Produit prod = critereBean.getSmp().getProduitById(id_produit.intValue()); 
     86                produit = prod.getNom(); 
     87                secteur = carteBean.getSecteur(); 
     88                rcp = carteBean.getRcp(); 
     89                critere.put("lat-max", lat); 
     90                critere.put("lat-min", lat); 
     91                critere.put("lon-max", lon); 
     92                critere.put("lon-min", lon); 
     93                infoSup = " at " + critere.get("lat-max") + "/" + critere.get("lon-max")  
     94                        +" from " + critere.get("beg-date") + " to " + critere.get("end-date"); 
     95                return critere; 
     96        } 
     97         
     98        private void getStatistique(Map<String, String> critere) { 
     99                ServiceStatistique serviceStat = new ServiceStatistique(); 
     100                result = serviceStat.getStatistique(critere, id_param, id_produit, id_secteur, id_rcp, alt, type, "getStatistique"); 
     101        } 
     102         
     103        private void getGraphe(Map<String, String> critere) { 
     104                ServiceStatistique serviceStat = new ServiceStatistique(); 
     105                urlGraphe = ".." + serviceStat.getGraphe(getIdUnique(), critere, id_param, id_produit, id_secteur, id_rcp, alt, param, produit, unite, secteur, rcp, "getGraphique"); 
     106//              LoggerPerso.log(StatBean.class, LoggerPerso.INFO, "url graphe " + urlGraphe); 
    15107        } 
    16108         
     
    21113                 
    22114                String imageID; 
    23                  
    24                  
    25115                imageID = session.getId() + session.getLastAccessedTime() ; 
    26116                 
    27117                return imageID; 
    28118        } 
     119         
     120        public ResultatStat getResult() { 
     121                return result; 
     122        } 
    29123 
     124        public void setResult(ResultatStat result) { 
     125                this.result = result; 
     126        }        
     127 
     128        public String getTypeResult() { 
     129                return typeResult; 
     130        } 
     131 
     132        public void setTypeResult(String typeResult) { 
     133                this.typeResult = typeResult; 
     134        } 
     135 
     136        public String getLat() { 
     137                return lat; 
     138        } 
     139 
     140        public void setLat(String lat) { 
     141                this.lat = lat; 
     142        } 
     143 
     144        public String getLon() { 
     145                return lon; 
     146        } 
     147 
     148        public void setLon(String lon) { 
     149                this.lon = lon; 
     150        } 
     151         
     152        public String getUrlGraphe() { 
     153                return urlGraphe; 
     154        } 
     155 
     156        public void setUrlGraphe(String urlGraphe) { 
     157                this.urlGraphe = urlGraphe; 
     158        } 
     159 
     160        public String getInfoSup() { 
     161                return infoSup; 
     162        } 
     163 
     164        public void setInfoSup(String infoSup) { 
     165                this.infoSup = infoSup; 
     166        } 
    30167} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/MetadataBean.java

    r68 r70  
    22 
    33import javax.faces.context.FacesContext; 
    4 //import javax.servlet.http.HttpSession; 
    5  
    6  
    7 import org.medias.eccad.helpers.LoggerPerso; 
    84import org.medias.eccad.metier.ServiceMetadata; 
    9 //import org.medias.eccad.presentation.bean.emission.EmissionBean; 
    105 
    116public class MetadataBean { 
     
    138         
    149        public MetadataBean() { 
    15                 LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "initialisation"); 
     10//              LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "initialisation"); 
    1611                ServiceMetadata service_meta = new ServiceMetadata(); 
    17                  
    1812                /*CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    1913                EmissionBean emission = (EmissionBean) ((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("emissionBean"); 
     
    2822                        id_produit = emission.getFacteur().getProduit().getId_item().intValue(); 
    2923                }*/ 
    30                  
    31                 LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "initialisation" + FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("produit")); 
     24//              LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "initialisation" + FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("produit")); 
    3225                String id_produit = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("produit"); 
    3326                ////system.out.println(id_produit); 
    3427                 
    3528                if (id_produit != null) { 
    36                         LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "en attent recuperation"); 
     29//                      LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "en attente de recuperation"); 
    3730                        xmlContent = service_meta.getXmlMetadata(Long.parseLong(id_produit)); 
    38                         LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "en attente transforamtion"); 
     31//                      LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "en attente de transformation"); 
    3932                        xmlContent = service_meta.getXMLTransformResult(xmlContent, "metadata.xslt"); 
    40                         LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "transformation ok"); 
     33//                      LoggerPerso.log(MetadataBean.class, LoggerPerso.DEBUG, "transformation ok"); 
    4134                } 
    4235                else 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/StatBean.java

    r68 r70  
    88import javax.servlet.http.HttpSession; 
    99 
    10  
    11 import org.medias.eccad.helpers.LoggerPerso; 
    1210import org.medias.eccad.helpers.SpringBeanFactory; 
    1311import org.medias.eccad.metier.statistique.ServiceStatistique; 
     12import org.medias.eccad.modele.Parametre; 
     13import org.medias.eccad.modele.Produit; 
    1414import org.medias.eccad.modele.ResultatStat; 
    15 //import org.medias.eccad.modele.Zone; 
    1615import org.medias.eccad.persistance.dao.GrilleDAO; 
    1716import org.medias.eccad.persistance.exception.PersistanceException; 
     
    2221        private String typeResult; 
    2322        private String date; 
    24         private String lat; 
    25         private String lon; 
     23//      private String lat; 
     24//      private String lon; 
    2625        private Long id_param; 
    2726        private Long id_produit; 
    28         private String urlGraphe; 
     27        private Long id_secteur; 
     28        private Long id_rcp; 
     29        private String alt; 
     30        private String type; 
     31//      private String urlGraphe; 
    2932        private String infoSup; 
     33        private String unite; 
     34        private String param; 
     35        private String produit; 
    3036         
    3137        public StatBean() throws PersistanceException { 
    3238                controleSession(); 
    3339                calculateByArea(null); 
    34                 initializeLatLon(); 
    35                  
     40//              initializeLatLon(); 
    3641                 
    3742                /*lat = "0.0"; 
    3843                lon= "0.0";*/ 
    39                 typeResult = "Result by area"; 
    40                 urlGraphe = "../images/nographe.png"; 
    41         } 
    42          
    43         public void initializeLatLon(){ 
    44                 CarteBean cartebean = (CarteBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("carteBean"); 
     44//              typeResult = "Result by area"; 
     45//              urlGraphe = "../images/nographe.png"; 
     46//              drawGraph(null); 
     47        } 
     48         
     49//      public void initializeLatLon(){ 
     50//              CarteBean cartebean = (CarteBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("carteBean"); 
    4551                 
    46                 double lon_zoneAffichee = (cartebean.getCenterLon()); 
    47                 double lat_zoneAffichee = (cartebean.getCenterLat()); 
    48                  
    49                 this.setLat(Double.toString(lat_zoneAffichee)); 
    50                 this.setLon(Double.toString(lon_zoneAffichee)); 
    51          
    52         } 
    53  
    54         public void calculateByPeriod(ActionEvent event) throws PersistanceException { 
    55                 controleSession(); 
    56                 typeResult = "Result by period"; 
    57                 LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "calculateByPeriod"); 
    58                 getStatistique(genereCritere("period")); 
    59         } 
     52//              this.setLat(cartebean.getCenterLat()); 
     53//              this.setLon(cartebean.getCenterLon()); 
     54//      } 
     55 
     56//      public void calculateByPeriod(ActionEvent event) throws PersistanceException { 
     57//              controleSession(); 
     58//              typeResult = "Result by period"; 
     59//              LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "calculateByPeriod"); 
     60//              getStatistique(genereCritere("period")); 
     61//      } 
    6062         
    6163        public void calculateByArea(ActionEvent event) throws PersistanceException { 
    6264                controleSession(); 
    6365                typeResult = "Result by area"; 
    64                 LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "calculateByArea"); 
    65                 getStatistique(genereCritere("area")); 
    66         } 
    67          
    68         public void drawGraph(ActionEvent event) throws PersistanceException { 
    69                 controleSession(); 
    70                 LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "calculateByArea"); 
    71                 getGraphe(genereCritere("period")); 
    72         } 
    73          
    74         private Map<String, String> genereCritere(String from) throws PersistanceException { 
     66//              LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "calculateByArea"); 
     67                getStatistique(genereCritere());//"area")); 
     68        } 
     69         
     70//      public void drawGraph(ActionEvent event) throws PersistanceException { 
     71//              controleSession(); 
     72//              LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "calculateByArea"); 
     73//              if (event == null) { 
     74//                      getGraphe(genereCritere("period_area")); 
     75//              } else { 
     76//                      getGraphe(genereCritere("period")); 
     77//              } 
     78//      } 
     79         
     80        private Map<String, String> genereCritere(/*String from*/) throws PersistanceException { 
    7581                CritereBean critereBean = (CritereBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("critereBean"); 
    7682                CarteBean cartebean = (CarteBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("carteBean"); 
     83//              LoggerPerso.log(StatBean.class, LoggerPerso.DEBUG, "cartebean = "+cartebean.getUrl()); 
     84                 
    7785                Map<String, String> critere = new TraducteurCarte().tradCritere2Stat(critereBean, cartebean); 
    7886                id_param = critereBean.getParametre(); 
    7987                id_produit = critereBean.getProduit(); 
    80                  
    81                  
    82                 if (from.equals("area")) { 
     88                id_secteur = critereBean.getSector(); 
     89                id_rcp = critereBean.getRcp(); 
     90                alt = (critereBean.getAlt()==null?"0":critereBean.getAlt()); 
     91                Parametre parametre = critereBean.getSmp().getParametreById(id_param.intValue());                
     92                unite = parametre.getUnite(); 
     93                if (unite.equals("number of fires") || unite.equals("no unit") || unite.equals("code value")) { 
     94                        type = "positive integer"; 
     95                } else { 
     96                        type = "double"; 
     97                } 
     98                param = parametre.getNom(); 
     99                Produit prod = critereBean.getSmp().getProduitById(id_produit.intValue()); 
     100                produit = prod.getNom(); 
     101//              if (from.equals("area")) { 
    83102                        GrilleDAO grilledao = (GrilleDAO) SpringBeanFactory.getXmlFactory().getBean("grilleDAO"); 
    84                         date = grilledao.getDateGrille(critereBean.getGrille()); 
     103                        date = grilledao.getDateGrille((critereBean.getGrille()==null?0:critereBean.getGrille().longValue())); 
    85104                        critere.put("beg-date", date); 
    86105                        critere.put("end-date", date); 
    87                         infoSup =  " " + critere.get("lat-max") + "/" + critere.get("lat-min") + ", " + 
     106                        infoSup =  critere.get("lat-max") + "/" + critere.get("lat-min") + ", " + 
    88107                                                critere.get("lon-max") + "/" +  critere.get("lon-min") + "" + 
    89108                                                " on date " + critere.get("beg-date"); 
    90         critere.get("end-date");  
    91                 } 
    92                 if (from.equals("period")) { 
    93                         critere.put("lat-max", lat); 
    94                         critere.put("lat-min", lat); 
    95                         critere.put("lon-max", lon); 
    96                         critere.put("lon-min", lon); 
    97                         infoSup = " from " + critere.get("beg-date") + " to " + critere.get("end-date") + " on point " + critere.get("lat-max") + "/" + critere.put("lon-max", lon); 
    98                 } 
    99                  
     109//              } else if (from.equals("period")) { 
     110//                      critere.put("lat-max", lat); 
     111//                      critere.put("lat-min", lat); 
     112//                      critere.put("lon-max", lon); 
     113//                      critere.put("lon-min", lon); 
     114//                      infoSup = " from " + critere.get("beg-date") + " to " + critere.get("end-date")+ 
     115//                      " on point " + critere.get("lat-max") + "/" + critere.get("lon-max"); 
     116//              } else { 
     117//                      infoSup =  critere.get("lat-max") + "/" + critere.get("lat-min") + ", " + 
     118//                      critere.get("lon-max") + "/" +  critere.get("lon-min") + "" + 
     119//                      " on date " + critere.get("beg-date"); 
     120//                      critere.put("lat-max", lat); 
     121//                      critere.put("lat-min", lat); 
     122//                      critere.put("lon-max", lon); 
     123//                      critere.put("lon-min", lon); 
     124//              } 
    100125                return critere; 
    101126        } 
     
    104129                ServiceStatistique serviceStat = new ServiceStatistique(); 
    105130                //serviceStat.getGraphe(getIdUnique(), critere, id_param, id_produit, "getStatistique"); 
    106                 result = serviceStat.getStatistique(critere, id_param, id_produit, "getStatistique"); 
    107         } 
    108          
    109         private void getGraphe(Map<String, String> critere) { 
    110                 ServiceStatistique serviceStat = new ServiceStatistique(); 
    111                 urlGraphe = ".." + serviceStat.getGraphe(getIdUnique(), critere, id_param, id_produit, "getGraphique"); 
    112                 LoggerPerso.log(StatBean.class, LoggerPerso.INFO, "url graphe " + urlGraphe); 
    113         } 
     131                result = serviceStat.getStatistique(critere, id_param, id_produit, id_secteur, id_rcp, alt, type, "getStatistique"); 
     132        } 
     133         
     134//      private void getGraphe(Map<String, String> critere) { 
     135//              ServiceStatistique serviceStat = new ServiceStatistique(); 
     136//              urlGraphe = ".." + serviceStat.getGraphe(getIdUnique(), critere, id_param, id_produit, id_secteur, id_rcp, alt, param, produit, unite, "getGraphique"); 
     137//              LoggerPerso.log(StatBean.class, LoggerPerso.INFO, "url graphe " + urlGraphe); 
     138//      } 
    114139         
    115140        public ResultatStat getResult() { 
     
    137162        } 
    138163 
    139         public String getLat() { 
    140                 return lat; 
    141         } 
    142  
    143         public void setLat(String lat) { 
    144                 this.lat = lat; 
    145         } 
    146  
    147         public String getLon() { 
    148                 return lon; 
    149         } 
    150  
    151         public void setLon(String lon) { 
    152                 this.lon = lon; 
    153         } 
    154          
    155         private String getIdUnique() { 
    156                 HttpSession session = (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(false); 
    157                 if (session==null) 
    158                         return ""; 
    159                  
    160                 String imageID; 
    161                  
    162                  
    163                 imageID = session.getId() + session.getLastAccessedTime() ; 
    164                  
    165                 return imageID; 
    166         } 
    167  
    168         public String getUrlGraphe() { 
    169                 return urlGraphe; 
    170         } 
    171  
    172         public void setUrlGraphe(String urlGraphe) { 
    173                 this.urlGraphe = urlGraphe; 
    174         } 
     164//      public String getLat() { 
     165//              return lat; 
     166//      } 
     167 
     168//      public void setLat(String lat) { 
     169//              this.lat = lat; 
     170//      } 
     171 
     172//      public String getLon() { 
     173//              return lon; 
     174//      } 
     175 
     176//      public void setLon(String lon) { 
     177//              this.lon = lon; 
     178//      } 
     179 
     180//      public String getUrlGraphe() { 
     181//              return urlGraphe; 
     182//      } 
     183 
     184//      public void setUrlGraphe(String urlGraphe) { 
     185//              this.urlGraphe = urlGraphe; 
     186//      } 
    175187 
    176188        public String getInfoSup() { 
     
    181193                this.infoSup = infoSup; 
    182194        } 
     195 
     196        public String getParam() { 
     197                return param; 
     198        } 
     199 
     200        public void setParam(String param) { 
     201                this.param = param; 
     202        } 
     203 
     204        public String getProduit() { 
     205                return produit; 
     206        } 
     207 
     208        public void setProduit(String produit) { 
     209                this.produit = produit; 
     210        } 
    183211         
    184212} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/emission/BurntBean.java

    r68 r70  
    1515        private String date_debut; 
    1616        private String date_fin; 
     17        private String date_debutSauv; 
     18        private String date_finSauv; 
    1719        private UIInput datedebUI; 
    1820        private UIInput datefinUI; 
     
    2931        public void init() { 
    3032                List<Produit> liste = emission.getService().getProduitBurntArea(); 
    31                  
    32                  
    33                  
     33 
    3434                List<SelectItem> liste_finale = new LinkedList<SelectItem>(); 
    3535                for (Produit prod : liste) { 
    3636                        liste_finale.add(new SelectItem(prod.getIdentifiant(), prod.getNom())); 
    3737                } 
    38                  
    3938                if (liste.size() != 0) { 
    40                         Produit product = new ServiceMetier().getProduitById((liste.get(0).getIdentifiant())); 
     39                        Produit product = new ServiceMetier().getProduitById(new Long(liste.get(0).getIdentifiant()).intValue()); 
    4140                        burnt.setId_item(product.getIdentifiant()); 
    4241                        burnt.setHeader_item(product.getHeader()); 
    4342                        burnt.setName_item(product.getNom()); 
     43                        frequence = product.getTemporalres(); 
    4444                        date_debut = product.getBeginDate().toString(); 
    4545                        date_fin = product.getEndDate().toString(); 
    46                         frequence = product.getTemporalres(); 
     46                        date_debutSauv = date_debut; 
     47                        date_finSauv = date_fin; 
     48                        if (datedebUI != null) { 
     49                                datedebUI.setValue(date_debut); 
     50                        }                
     51                        if (datefinUI != null) { 
     52                                datefinUI.setValue(date_fin); 
     53                        } 
    4754                } 
    48                  
    4955                burnt.setListe_item(liste_finale); 
    5056        } 
    5157         
    5258        public void majBurnt(ValueChangeEvent event) { 
    53                 Produit prod = new ServiceMetier().getProduitById((Long)event.getNewValue()); 
     59                Produit prod = new ServiceMetier().getProduitById(((Long)event.getNewValue()).intValue()); 
    5460                burnt.setId_item(prod.getIdentifiant()); 
    5561                burnt.setHeader_item(prod.getHeader()); 
     
    5763                date_debut = prod.getBeginDate().toString(); 
    5864                date_fin   = prod.getEndDate().toString(); 
     65                date_debutSauv = date_debut; 
     66                date_finSauv = date_fin; 
    5967                burnt.setName_item(prod.getNom()); 
    6068                if (datedebUI != null) { 
    6169                        datedebUI.setValue(date_debut); 
    62                 } 
    63                  
     70                }                
    6471                if (datefinUI != null) { 
    6572                        datefinUI.setValue(date_fin); 
     
    114121                this.frequence = frequence; 
    115122        } 
    116          
     123 
     124        public String getDate_debutSauv() { 
     125                return date_debutSauv; 
     126        } 
     127 
     128        public void setDate_debutSauv(String dateDebutSauv) { 
     129                date_debutSauv = dateDebutSauv; 
     130        } 
     131 
     132        public String getDate_finSauv() { 
     133                return date_finSauv; 
     134        } 
     135 
     136        public void setDate_finSauv(String dateFinSauv) { 
     137                date_finSauv = dateFinSauv; 
     138        } 
    117139} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/emission/EmissionBean.java

    r68 r70  
    22 
    33 
    4 //import org.medias.eccad.helpers.LoggerPerso; 
    5 import org.medias.eccad.helpers.LoggerPerso; 
     4import javax.faces.application.FacesMessage; 
     5import javax.faces.component.UIComponent; 
     6import javax.faces.component.UIInput; 
     7import javax.faces.context.FacesContext; 
     8import javax.faces.validator.ValidatorException; 
     9 
    610import org.medias.eccad.metier.emission.ServiceEmission; 
    711import org.medias.eccad.modele.RequeteFacteurEmission; 
     
    2933                return "page_em_landcover"; 
    3034        } 
    31          
     35 
     36        public String prevLandcover() { 
     37                controleSession(); 
     38                return "page_emission"; 
     39        } 
     40 
    3241        public String nextBurntArea() { 
    3342                controleSession(); 
     
    4049                return "page_em_burnt"; 
    4150        } 
    42          
     51 
     52        public String prevBurntArea() { 
     53                controleSession(); 
     54                return "page_em_landcover"; 
     55        } 
     56 
    4357        public String processData() { 
    4458                controleSession(); 
     
    100114        } 
    101115         
     116        /** 
     117         * Valide la zone de sélection 
     118         * @param contexte 
     119         * @param composant 
     120         * @param objet 
     121         * @throws ValidatorException 
     122         */ 
     123        public void validateLatLon(FacesContext contexte, UIComponent composant, Object objet) throws ValidatorException { 
     124                boolean estValide = true; 
     125                 
     126                if ((contexte == null) || (composant == null)) { 
     127                        throw new NullPointerException("composant ou contexte null"); 
     128                } 
     129                 
     130                if (!(composant instanceof UIInput)) 
     131                        return; 
     132                if (!(testExiste(facteur.getNorthbcInput()) || testExiste(facteur.getSouthbcInput()) || testExiste(facteur.getEastbcInput()) || testExiste(facteur.getWestbcInput()))) { 
     133                        return; 
     134                } 
     135                 
     136                double north = Double.parseDouble(facteur.getNorthbcInput().getValue().toString()); 
     137                double south = Double.parseDouble(facteur.getSouthbcInput().getValue().toString()); 
     138                double east  = Double.parseDouble(facteur.getEastbcInput().getValue().toString()); 
     139                double west  = Double.parseDouble(facteur.getWestbcInput().getValue().toString()); 
     140                 
     141                FacesMessage errMsg = null; 
     142                 
     143                if (north<south) { 
     144                        estValide = false; 
     145                        errMsg = new FacesMessage("north value must be greater than south value"); 
     146                } 
     147                 
     148                if (east<west) { 
     149                        estValide = false; 
     150                        errMsg = new FacesMessage("east value must be greater than west value"); 
     151                } 
     152                         
     153                if (!estValide) 
     154                        throw new ValidatorException(errMsg); 
     155        } 
     156         
     157        public void validateDate(FacesContext contexte, UIComponent composant, Object objet) throws ValidatorException { 
     158                boolean estValide = true; 
     159                if ((contexte == null) || (composant == null)) { 
     160                        throw new NullPointerException("composant ou contexte null"); 
     161                } 
     162                if (!(composant instanceof UIInput)) 
     163                        return; 
     164                 
     165                if (burnt.getDatedebUI() == null || burnt.getDatefinUI() == null) 
     166                        return; 
     167         
     168                if (burnt.getDatedebUI().getValue() == null || burnt.getDatefinUI().getValue() == null) 
     169                        return; 
     170                 
     171                FacesMessage errMsg = null; 
     172                if (burnt.getDatedebUI().getValue().toString().compareTo(burnt.getDatefinUI().getValue().toString()) > 0) { 
     173                        estValide = false; 
     174                        errMsg = new FacesMessage("Begin date must be lower or equal than End date"); 
     175                } 
     176                else if (burnt.getDate_debutSauv().compareTo(burnt.getDatedebUI().getValue().toString()) > 0) { 
     177                        estValide = false; 
     178                        errMsg = new FacesMessage("Begin date must be greater or equal than "+burnt.getDate_debutSauv()); 
     179                } 
     180                else if (burnt.getDatefinUI().getValue().toString().compareTo(burnt.getDate_finSauv()) > 0) { 
     181                        estValide = false; 
     182                        errMsg = new FacesMessage("End date must be lower or equal than "+burnt.getDate_finSauv()); 
     183                } 
     184                if (!estValide) 
     185                        throw new ValidatorException(errMsg); 
     186        } 
     187         
     188        private boolean testExiste(UIInput compo) { 
     189                if (compo == null) 
     190                        return false; 
     191                if (compo.getValue() == null) 
     192                        return false; 
     193                return true; 
     194        } 
    102195} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/emission/FacteurEmissionBean.java

    r68 r70  
    44import java.util.List; 
    55 
     6import javax.faces.component.UIInput; 
    67import javax.faces.event.ValueChangeEvent; 
    78import javax.faces.model.SelectItem; 
    89 
    9  
    10 import org.medias.eccad.helpers.LoggerPerso; 
    1110import org.medias.eccad.metier.ServiceMetier; 
    1211import org.medias.eccad.metier.traducteur.TraducteurVisuMultiplan; 
     
    2221        private Zone zone; 
    2322        private EmissionBean emissionbean; 
     23        // binding 
     24        private UIInput northbcInput; 
     25        private UIInput southbcInput; 
     26        private UIInput eastbcInput; 
     27        private UIInput westbcInput; 
    2428         
    2529        public FacteurEmissionBean(EmissionBean emissionbean) { 
     
    3438         
    3539        public void majProduit(ValueChangeEvent event) { 
    36                 Produit prod = new ServiceMetier().getProduitById((Long) event.getNewValue()); 
     40                Produit prod = new ServiceMetier().getProduitById(((Long) event.getNewValue()).intValue()); 
    3741                produit.setId_item(prod.getIdentifiant()); 
    3842                produit.setName_item(prod.getNom()); 
     
    6367                } 
    6468                 
    65                 List<SelectItem> liste_select = new TraducteurVisuMultiplan().getListGrille(liste_temp); 
     69                List<SelectItem> liste_select = new TraducteurVisuMultiplan().getListGrille(liste_temp, null, null); 
    6670                gaz.setListe_item(liste_select); 
    6771                 
     
    7882                List<Produit> liste_temp = emissionbean.getService().getProduitFacteurEmission(); 
    7983                List<SelectItem> liste_select = new LinkedList<SelectItem>(); 
    80                 LoggerPerso.log(FacteurEmissionBean.class, LoggerPerso.DEBUG, "liste " + liste_temp); 
    81                  
    82                  
     84//              LoggerPerso.log(FacteurEmissionBean.class, LoggerPerso.DEBUG, "liste " + liste_temp); 
    8385                 
    8486                for (Produit prod : liste_temp) { 
     
    119121        } 
    120122 
    121  
    122123        public Zone getZone() { 
    123124                return zone; 
    124125        } 
    125126 
    126  
    127127        public void setZone(Zone zone) { 
    128128                this.zone = zone; 
    129129        } 
    130          
    131          
     130 
     131        public UIInput getEastbcInput() { 
     132                return eastbcInput; 
     133        } 
     134 
     135        public void setEastbcInput(UIInput eastbcInput) { 
     136                this.eastbcInput = eastbcInput; 
     137        } 
     138 
     139        public UIInput getNorthbcInput() { 
     140                return northbcInput; 
     141        } 
     142 
     143        public void setNorthbcInput(UIInput northbcInput) { 
     144                this.northbcInput = northbcInput; 
     145        } 
     146 
     147        public UIInput getSouthbcInput() { 
     148                return southbcInput; 
     149        } 
     150 
     151        public void setSouthbcInput(UIInput southbcInput) { 
     152                this.southbcInput = southbcInput; 
     153        } 
     154 
     155        public UIInput getWestbcInput() { 
     156                return westbcInput; 
     157        } 
     158 
     159        public void setWestbcInput(UIInput westbcInput) { 
     160                this.westbcInput = westbcInput; 
     161        }        
    132162} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/emission/FacteurResultatBean.java

    r68 r70  
    2020public class FacteurResultatBean extends AbstractVueBean { 
    2121        private String url; 
    22         private Zone zone_affichee; 
     22        private Zone zone_demandee; 
     23        private Zone zone_visible; 
    2324        private int clicX; 
    2425        private int clicY; 
     
    3334        private Long colormap_id; 
    3435        private UISelectOne colormapUI; 
     36         
     37        private List<SelectItem> liste_classdis; 
     38        private Long classdis_id; 
     39        private UISelectOne classdisUI; 
    3540         
    3641        private List<SelectItem> liste_grille; 
     
    5762        public void initialisation() { 
    5863                // FIXME: virer les colormap exponentielles 
    59                 zone_affichee = new Zone(); 
     64                zone_demandee = new Zone(); 
    6065                Zone zone_init = emission.getFacteur().getZone(); 
    61                 zone_affichee.setNorthbc(zone_init.getNorthbc()); 
    62                 zone_affichee.setSouthbc(zone_init.getSouthbc()); 
    63                 zone_affichee.setEastbc(zone_init.getEastbc()); 
    64                 zone_affichee.setWestbc(zone_init.getWestbc()); 
     66                zone_demandee.setNorthbc(zone_init.getNorthbc()); 
     67                zone_demandee.setSouthbc(zone_init.getSouthbc()); 
     68                zone_demandee.setEastbc(zone_init.getEastbc()); 
     69                zone_demandee.setWestbc(zone_init.getWestbc()); 
    6570                 
    6671                liste_grille = serviceMetier.getListGrille(emission.getBurnt().getBurnt().getId_item(), 
    6772                                                                   emission.getBurnt().getDate_debut(),  
    68                                                                    emission.getBurnt().getDate_fin()); 
     73                                                                   emission.getBurnt().getDate_fin(), null); 
    6974                grille_id = (Long) liste_grille.get(0).getValue(); 
    7075                if (grilleUI != null) 
    7176                        grilleUI.setValue(grille_id); 
    7277 
    73                 liste_colormap = serviceMetier.getListColorDynamique(true); 
     78//              liste_colormap = serviceMetier.getListColorDynamique(true); 
     79                liste_colormap = serviceMetier.getListMappingColor(); 
    7480                colormap_id = (Long) liste_colormap.get(0).getValue(); 
    7581                if (colormapUI != null) 
    7682                        colormapUI.setValue(colormap_id); 
    7783                 
     84                liste_classdis = serviceMetier.getListClassDynamique(); 
     85                classdis_id = (Long) liste_classdis.get(0).getValue(); 
     86                if (classdisUI != null) 
     87                        classdisUI.setValue(classdis_id); 
     88                 
    7889                requete.setDatedeb(liste_grille.get(0).getLabel()); 
    7990                requete.setDatefin(liste_grille.get(0).getLabel()); 
    8091                requete.setColormap(colormap_id); 
    81                  
    82                 majURLCarte(); 
     92                requete.setClassdis(classdis_id); 
     93                 
     94                majURLCarte(false,true); 
    8395        } 
    8496         
     
    89101        public void clicOnCarte(ActionEvent event) { 
    90102                service.zoom(clicX, clicY); 
    91                 zone_affichee = service.getzone(); 
    92          
    93                 majURLCarte(); 
    94         } 
    95          
    96         private void majURLCarte() { 
    97                 url = service.getCarte(requete, zone_affichee, getIdUnique()); 
    98                 url_legend = service.getLegend(colormap_id, 5040, url); 
     103                zone_visible = service.getzone(); 
     104         
     105                majURLCarte(true,false); 
     106        } 
     107         
     108        private void majURLCarte(boolean zoom, boolean firstAff) { 
     109                url = service.getCarte(requete, zone_demandee, getIdUnique(), zoom, firstAff); 
     110                url_legend = service.getLegend(colormap_id, classdis_id, 5040, url); 
     111                zone_visible = service.getzone(); 
    99112                ////system.out.println(url_legend); 
    100113        } 
     
    113126                } 
    114127                 
    115                 majURLCarte(); 
     128                majURLCarte(false,false); 
    116129        } 
    117130         
     
    122135                requete.setColormap(colormap_id); 
    123136                 
    124                 majURLCarte(); 
     137                majURLCarte(false,false); 
    125138        } 
    126139         
     
    211224        public void setWestbc(UIOutput westbc) { 
    212225                this.westbc = westbc; 
    213         } 
    214          
    215         public Zone getZone_affichee() { 
    216                 return zone_affichee; 
    217         } 
    218          
    219         public void setZone_affichee(Zone zone_affichee) { 
    220                 this.zone_affichee = zone_affichee; 
    221226        } 
    222227         
     
    261266                this.liste_grille = liste_grille; 
    262267        } 
    263          
    264          
    265         } 
     268 
     269        public Zone getZone_demandee() { 
     270                return zone_demandee; 
     271        } 
     272 
     273        public void setZone_demandee(Zone zoneDemandee) { 
     274                zone_demandee = zoneDemandee; 
     275        } 
     276 
     277        public Zone getZone_visible() { 
     278                return zone_visible; 
     279        } 
     280 
     281        public void setZone_visible(Zone zoneVisible) { 
     282                zone_visible = zoneVisible; 
     283        } 
     284} 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/emission/LandcoverBean.java

    r68 r70  
    77import javax.faces.model.SelectItem; 
    88 
    9 import org.medias.eccad.helpers.LoggerPerso; 
    109import org.medias.eccad.metier.ServiceMetier; 
    1110import org.medias.eccad.metier.traducteur.TraducteurVisuMultiplan; 
     
    2120        private List<String> selectedClass; 
    2221        private String message; 
    23  
    2422         
    2523        public LandcoverBean(EmissionBean emission) { 
    2624                controleSession(); 
    2725                landproduit = new ProduitBean(); 
    28                 this.emissionbean    = emission; 
     26                this.emissionbean = emission; 
    2927                message = new String(); 
    30                 LoggerPerso.log(LandcoverBean.class, LoggerPerso.DEBUG, "constructeur landcover"); 
     28//              LoggerPerso.log(LandcoverBean.class, LoggerPerso.DEBUG, "constructeur landcover"); 
    3129        } 
    3230 
     
    3634                 
    3735                 
    38                 LoggerPerso.log(FacteurEmissionBean.class, LoggerPerso.DEBUG, "init class landcover " + liste_temp);     
     36//              LoggerPerso.log(FacteurEmissionBean.class, LoggerPerso.DEBUG, "init class landcover " + liste_temp);     
    3937                 
    4038                for (Produit prod : liste_temp) { 
     
    5755         
    5856        public void majLandCover(ValueChangeEvent event) { 
    59                 Produit prod = new ServiceMetier().getProduitById((Long) event.getNewValue()); 
     57                Produit prod = new ServiceMetier().getProduitById(((Long) event.getNewValue()).intValue()); 
    6058                landproduit.setId_item(prod.getIdentifiant()); 
    6159                landproduit.setHeader_item(prod.getHeader()); 
     
    6664        private void initClass(Long id_produit) { 
    6765                List<Grille> liste_temp = emissionbean.getService().getClassEmission(id_produit); 
    68                 liste_classe = new TraducteurVisuMultiplan().getListGrille(liste_temp); 
     66                liste_classe = new TraducteurVisuMultiplan().getListGrille(liste_temp, null, null); 
    6967                selectedClass = new LinkedList<String>(); 
    7068                liste_vegetation = new LinkedList<ClasseBean>(); 
     
    8482                } 
    8583                 
    86                 LoggerPerso.log(FacteurEmissionBean.class, LoggerPerso.DEBUG, "get class landcover >  " + listeId.size() + " :: " + listeId); 
     84//              LoggerPerso.log(FacteurEmissionBean.class, LoggerPerso.DEBUG, "get class landcover >  " + listeId.size() + " :: " + listeId); 
    8785                 
    8886                return listeId; 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/emission/ProduitBean.java

    r68 r70  
    66import javax.faces.model.SelectItem; 
    77 
    8  
    9 import org.medias.eccad.helpers.LoggerPerso; 
    108 
    119public class ProduitBean { 
     
    2220        public ProduitBean() { 
    2321                super(); 
    24                 LoggerPerso.log(ProduitBean.class, LoggerPerso.DEBUG, "construction ProduitBean"); 
     22//              LoggerPerso.log(ProduitBean.class, LoggerPerso.DEBUG, "construction ProduitBean"); 
    2523        } 
    2624 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/bean/emission/traducteur/TraducteurEmission.java

    r68 r70  
    1818                requete.setParamBurnt(emission.getService().getParamIdBurntArea()); 
    1919                requete.setProduitBurnt(burnt.getBurnt().getId_item()); 
     20                requete.setId_rcp(new Long(0)); 
     21                requete.setId_secteur(new Long(0)); 
     22                requete.setAlt("0"); 
     23                requete.setId_mask(new Long(0)); 
    2024                 
    2125                requete.setDatedeb(burnt.getDate_debut()); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/composant/ComposantPopup.java

    r68 r70  
    33import javax.faces.component.*; 
    44import javax.faces.context.*; 
    5 import java.util.*; 
    65import java.io.*; 
    7 import javax.faces.event.*; 
    86 
    97 
     
    1614         
    1715        private String classe; 
    18         private String onclick; 
     16//      private String onclick; 
    1917        private String style; 
    20         private String value; 
     18//      private String value; 
    2119           
    2220//**************************************// 
     
    4341                                style=(String)getAttributes().get("style"); 
    4442                        } 
    45                         if (getAttributes().containsKey("onclick")) 
    46                                 onclick=(String)getAttributes().get("onclick"); 
     43//                      if (getAttributes().containsKey("onclick")) 
     44//                              onclick=(String)getAttributes().get("onclick"); 
    4745                         
    4846                        /** ENCODAGE **/                                 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/composant/TagDivButton.java

    r68 r70  
    4545//      **************************************// 
    4646 
     47        @SuppressWarnings("unchecked") 
    4748        protected void setProperties(UIComponent component){ 
    4849                super.setProperties(component); 
    4950                ComposantPopup compo= (ComposantPopup) component; 
    5051 
    51                 if (classe != null) 
     52                if (classe != null) { 
    5253                        compo.getAttributes().put("styleClass", classe); 
     54                } 
    5355                if (style != null) { 
    5456                        //system.out.println("ajout du style :: " + style); 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/listener/PhaseEcouteur.java

    r68 r70  
    99 
    1010public class PhaseEcouteur implements PhaseListener{ 
     11 
     12        /** 
     13         *  
     14         */ 
     15        private static final long serialVersionUID = 1L; 
    1116 
    1217        public void afterPhase(PhaseEvent pe) { 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/traducteur/TraducteurCarte.java

    r68 r70  
    22 
    33import java.text.NumberFormat; 
     4import java.util.Calendar; 
     5import java.util.GregorianCalendar; 
    46import java.util.HashMap; 
    57import java.util.Map; 
     
    1517 
    1618        public Map<String, String> tradCritere2Stat(CritereBean critereBean, CarteBean carteBean) { 
    17         Map<String, String> critere = new HashMap<String, String>(); 
     19                Map<String, String> critere = new HashMap<String, String>(); 
    1820         
    19         if (critereBean == null) { 
    20                 LoggerPerso.log(TraducteurCarte.class, LoggerPerso.WARN, "criterebean null"); 
     21                if (critereBean == null) { 
     22                        LoggerPerso.log(TraducteurCarte.class, LoggerPerso.WARN, "criterebean null"); 
     23                        return critere; 
     24                } 
     25         
     26                String northbcN =  carteBean.getZone_demandee().getNorthbcN().replace(",","."); 
     27                String southbcN = carteBean.getZone_demandee().getSouthbcN().replace(",","."); 
     28                String eastbcN =  carteBean.getZone_demandee().getEastbcN().replace(",","."); 
     29                String westbcN =  carteBean.getZone_demandee().getWestbcN().replace(",","."); 
     30         
     31                critere.put("lat-max", northbcN); 
     32                critere.put("lat-min", southbcN); 
     33                critere.put("lon-max", eastbcN); 
     34                critere.put("lon-min", westbcN); 
     35//              critere.put("lat-max", "90"); 
     36//              critere.put("lat-min", "-90"); 
     37//              critere.put("lon-max", "180"); 
     38//              critere.put("lon-min", "-180"); 
     39                critere.put("beg-date", critereBean.getBegDate()); 
     40                critere.put("end-date", critereBean.getEndDate()); 
     41                ////system.out.println("TraducteurCarte::" + critere); 
    2142                return critere; 
    2243        } 
     44 
     45        public Map<String, String> tradCritere2Total(CritereBean critereBean, CarteBean carteBean) { 
     46                Map<String, String> critere = new HashMap<String, String>(); 
    2347         
    24         String northbcN =  carteBean.getZone_affichee().getNorthbcN().replace(",","."); 
    25         String southbcN = carteBean.getZone_affichee().getSouthbcN().replace(",","."); 
    26         String eastbcN =  carteBean.getZone_affichee().getEastbcN().replace(",","."); 
    27         String westbcN =  carteBean.getZone_affichee().getWestbcN().replace(",","."); 
     48                if (critereBean == null) { 
     49                        LoggerPerso.log(TraducteurCarte.class, LoggerPerso.WARN, "criterebean null"); 
     50                        return critere; 
     51                } 
     52                String northbcN =  carteBean.getZone_demandee().getNorthbcN().replace(",","."); 
     53                String southbcN = carteBean.getZone_demandee().getSouthbcN().replace(",","."); 
     54                String eastbcN =  carteBean.getZone_demandee().getEastbcN().replace(",","."); 
     55                String westbcN =  carteBean.getZone_demandee().getWestbcN().replace(",","."); 
    2856         
    29         critere.put("lat-max", northbcN); 
    30         critere.put("lat-min", southbcN); 
    31         critere.put("lon-max", eastbcN); 
    32         critere.put("lon-min", westbcN); 
    33         critere.put("beg-date", critereBean.getBegDate()); 
    34         critere.put("end-date", critereBean.getEndDate()); 
    35         ////system.out.println("TraducteurCarte::" + critere); 
    36         return critere; 
     57                critere.put("lat-max", northbcN); 
     58                critere.put("lat-min", southbcN); 
     59                critere.put("lon-max", eastbcN); 
     60                critere.put("lon-min", westbcN); 
     61//              critere.put("lat-max", "90"); 
     62//              critere.put("lat-min", "-90"); 
     63//              critere.put("lon-max", "180"); 
     64//              critere.put("lon-min", "-180"); 
     65                String begDate, endDate; 
     66                if (carteBean.getTotal().equals("totalDay")) { 
     67                        begDate = critereBean.getDay(); 
     68                        endDate = critereBean.getDay(); 
     69                } else if (carteBean.getTotal().equals("totalPeriod")) { 
     70                        begDate = critereBean.getBegDate(); 
     71                        endDate = critereBean.getEndDate(); 
     72                } else if (carteBean.getTotal().equals("totalYear")) { 
     73                        begDate = critereBean.getYear()+"-01-01"; 
     74                        endDate = critereBean.getYear()+"-12-31"; 
     75                } else { 
     76                        begDate = critereBean.getMonth()+"-01"; 
     77                        Calendar cal = new GregorianCalendar(critereBean.getYear().intValue(), Integer.parseInt(critereBean.getMonth().substring(5))-1, 1); 
     78                        int jourMax = cal.getActualMaximum(Calendar.DAY_OF_MONTH); 
     79                        endDate = critereBean.getMonth()+"-"+jourMax; 
     80                } 
     81                critere.put("beg-date", begDate); 
     82                critere.put("end-date", endDate); 
     83                return critere; 
    3784        } 
    38          
    3985         
    4086        public Map<String, String> tradCritere2StatReinit(CritereBean critereBean, CarteBean carteBean) { 
     
    4894                numberFormat = NumberFormat.getNumberInstance(); 
    4995                numberFormat.setMaximumFractionDigits(2); 
    50                 //LoggerPerso.log(TraducteurCarte.class, LoggerPerso.DEBUG, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!lat-max "+ numberFormat.format(Double.toString(critereBean.getNorthbc()))); 
     96                //LoggerPerso.log(TraducteurCarte.class, LoggerPerso.DEBUG, "!!!!lat-max "+ numberFormat.format(Double.toString(critereBean.getNorthbc()))); 
    5197 
    5298                String northbcN = getNorthbcN(critereBean.getNorthbc()).replace(",","."); 
     
    65111                critere.put("lon-min", Double.toString(critereBean.getWestbc())) ;*/ 
    66112                 
    67                 //LoggerPerso.log(TraducteurCarte.class, LoggerPerso.DEBUG, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!lat-max "+ numberFormat.format(Double.toString(critereBean.getNorthbc()))); 
     113                //LoggerPerso.log(TraducteurCarte.class, LoggerPerso.DEBUG, "!!!!lat-max "+ numberFormat.format(Double.toString(critereBean.getNorthbc()))); 
    68114                 
    69115                 
     
    72118                ////system.out.println("TraducteurCarte::" + critere); 
    73119                return critere; 
     120        } 
     121         
     122        public Map<String, String> tradCritere2TotalReinit(CritereBean critereBean, CarteBean carteBean) { 
     123                Map<String, String> critere = new HashMap<String, String>(); 
     124                 
     125                if (critereBean == null) { 
     126                        LoggerPerso.log(TraducteurCarte.class, LoggerPerso.WARN, "criterebean null"); 
     127                        return critere; 
    74128                } 
     129                 
     130                numberFormat = NumberFormat.getNumberInstance(); 
     131                numberFormat.setMaximumFractionDigits(2); 
     132 
     133                String northbcN = getNorthbcN(critereBean.getNorthbc()).replace(",","."); 
     134                String southbcN = getSouthbcN(critereBean.getSouthbc()).replace(",","."); 
     135                String eastbcN =  getEastbcN(critereBean.getEastbc()).replace(",","."); 
     136                String westbcN =  getWestbcN(critereBean.getWestbc()).replace(",","."); 
     137                 
     138                critere.put("lat-max", northbcN) ; 
     139                critere.put("lat-min", southbcN) ; 
     140                critere.put("lon-max", eastbcN) ; 
     141                critere.put("lon-min", westbcN) ; 
     142                 
     143                String begDate, endDate; 
     144                if (carteBean.getTotal().equals("totalDay")) { 
     145                        begDate = critereBean.getDay(); 
     146                        endDate = critereBean.getDay(); 
     147                } else if (carteBean.getTotal().equals("totalPeriod")) { 
     148                        begDate = critereBean.getBegDate(); 
     149                        endDate = critereBean.getEndDate(); 
     150                } else if (carteBean.getTotal().equals("totalYear")) { 
     151                        begDate = critereBean.getYear()+"-01-01"; 
     152                        endDate = critereBean.getYear()+"-12-31"; 
     153                } else { 
     154                        begDate = critereBean.getMonth()+"-01"; 
     155                        Calendar cal = new GregorianCalendar(critereBean.getYear().intValue(), Integer.parseInt(critereBean.getMonth().substring(5))-1, 1); 
     156                        int jourMax = cal.getActualMaximum(Calendar.DAY_OF_MONTH); 
     157                        endDate = critereBean.getMonth()+"-"+jourMax; 
     158                } 
     159                critere.put("beg-date", begDate); 
     160                critere.put("end-date", endDate); 
     161                return critere; 
     162        } 
    75163         
    76164        public String getEastbcN(Double eastbc) { 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/presentation/validation/DateValidation.java

    r68 r70  
    1010import javax.faces.validator.Validator; 
    1111import javax.faces.validator.ValidatorException; 
    12  
    13 import org.medias.eccad.helpers.LoggerPerso; 
    1412 
    1513public class DateValidation implements Validator{ 
     
    3331                 
    3432            if (estValide) { 
    35                 int intYear  = getYear(valeur); 
     33//              int intYear  = getYear(valeur); 
    3634                int intMonth = getMonth(valeur); 
    3735                int intDay   = getDay(valeur); 
    3836                 
    39             //  if (intYear < 1900 || intYear > 2200) 
    40             //          estValide = false; 
    4137                if (intMonth < 1 || intMonth > 12) 
    4238                        estValide = false; 
     
    5349                } 
    5450        } 
    55         private int getYear(String date){ 
     51//      private int getYear(String date){ 
    5652 
    57                 LoggerPerso.log(DateValidation.class, LoggerPerso.DEBUG, "getYear(String date  "+Integer.parseInt(date.substring(0,4))); 
    58                 return Integer.parseInt(date.substring(0,4));  
    59         } 
     53//              LoggerPerso.log(DateValidation.class, LoggerPerso.DEBUG, "getYear(String date  "+Integer.parseInt(date.substring(0,4))); 
     54//              return Integer.parseInt(date.substring(0,4));  
     55//      } 
    6056        private int getMonth(String date){ 
    6157 
    62                 LoggerPerso.log(DateValidation.class, LoggerPerso.DEBUG, "getMonth(String date)  "+Integer.parseInt(date.substring(5,7))); 
     58//              LoggerPerso.log(DateValidation.class, LoggerPerso.DEBUG, "getMonth(String date)  "+Integer.parseInt(date.substring(5,7))); 
    6359                        return Integer.parseInt(date.substring(5,7));  
    6460                } 
    6561        private int getDay(String date){ 
    6662 
    67                 LoggerPerso.log(DateValidation.class, LoggerPerso.DEBUG, "getDay(String date)  "+Integer.parseInt(date.substring(8,10))); 
     63//              LoggerPerso.log(DateValidation.class, LoggerPerso.DEBUG, "getDay(String date)  "+Integer.parseInt(date.substring(8,10))); 
    6864                return Integer.parseInt(date.substring(8,10));  
    6965        } 
  • ether_eccad/trunk/ECCAD_INTERFACE/WEB-INF/src/org/medias/eccad/servlet/ServletService.java

    r68 r70  
    1010import java.io.PrintWriter; 
    1111 
    12 import javax.faces.context.FacesContext; 
    1312import javax.servlet.ServletException; 
    1413import javax.servlet.http.HttpServletRequest; 
    1514import javax.servlet.http.HttpServletResponse; 
    16 import javax.servlet.http.HttpSession; 
    1715 
    1816 
    1917import org.medias.eccad.helpers.LoggerPerso; 
    2018import org.medias.eccad.metier.ServiceMetadata; 
    21 import org.medias.eccad.presentation.bean.CritereBean; 
    22 import org.medias.eccad.presentation.bean.DeconnectionException; 
    2319import org.medias.eccad.presentation.bean.MetadataBean; 
    24 import org.medias.eccad.presentation.bean.SessionBean; 
    2520import org.medias.jni.RasterDAO; 
    2621 
     
    4338         
    4439         
    45         private void controleSession() throws DeconnectionException { 
    46                 SessionBean sessionbean = (SessionBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("sessionBean"); 
    47                 if (sessionbean == null || sessionbean.getEmail() == null || sessionbean.getEmail() == "") 
    48                         throw new DeconnectionException(); 
    49         } 
     40//      private void controleSession() throws DeconnectionException { 
     41//              SessionBean sessionbean = (SessionBean)((HttpSession)FacesContext.getCurrentInstance().getExternalContext().getSession(false)).getAttribute("sessionBean"); 
     42//              if (sessionbean == null || sessionbean.getEmail() == null || sessionbean.getEmail() == "") 
     43//                      throw new DeconnectionException(); 
     44//      } 
    5045         
    5146        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
Note: See TracChangeset for help on using the changeset viewer.