Ignore:
Timestamp:
09/12/11 18:11:46 (13 years ago)
Author:
vmipsl
Message:

Servlet _ Contour en cours

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ether_megapoli/trunk/persistence/implementation/com/ether/dao/ValueDAOImpl.java

    r185 r191  
    33import com.ether.Data; 
    44import com.ether.PersistenceException; 
     5import com.medias.Nombre; 
    56import com.medias.database.objects.Valeur; 
    67import org.hibernate.criterion.DetachedCriteria; 
     
    1112import org.jetbrains.annotations.Nullable; 
    1213 
     14import java.util.ArrayList; 
    1315import java.util.Date; 
    1416import java.util.List; 
     
    4749 
    4850        final List<Object[]> objects = selectAllByCriteria( Object[].class, criteria ); 
    49         // TODO : remove maxResults to 10 
    50 //        final List<Object[]> objects = selectPage( null, 10, criteria ); 
    5151 
    5252        final double[] values = new double[objects.size()]; 
     
    6565 
    6666    @NotNull 
    67     public <T1, T2, T3> Data<T1[], T2[], T3[]> getListsByPlateformByParameterByPeriodFor2D( @NotNull final Integer plateformId, @NotNull final Integer parameterId, @Nullable final Date dateBegin, @Nullable final Date dateEnd ) 
     67    public <T1, T2, T3> Data<T1[], T2[], T3[]> getArraysByPlateformByParameterByPeriodFor2D( @NotNull final Integer plateformId, @NotNull final Integer parameterId, @Nullable final Date dateBegin, @Nullable final Date dateEnd ) 
    6868            throws PersistenceException 
    6969    { 
     
    8989//        final List<Object[]> objects = selectAllByCriteria( Object[].class, criteria ); 
    9090        // TODO : remove maxResults to 10 
    91         final List<Object[]> objects = selectPage( null, 10, criteria ); 
     91        final List<Object[]> objects = selectPage( null, 100, criteria ); 
    9292 
    9393        final double[] latitudeValues = new double[objects.size()]; 
     
    9999        { 
    100100            parameterValues[i] = (Double) value[0]; 
    101             latitudeValues[i] = Double.valueOf( (Integer) value[1] ); 
    102             longitudeValues[i] = Double.valueOf( (Integer) value[2] ); 
     101            latitudeValues[i] = Nombre.latIntToFloat( (Integer) value[1] ); 
     102            longitudeValues[i] = Nombre.latIntToFloat( (Integer) value[2] ); 
     103            i++; 
     104        } 
     105 
     106        return new Data( parameterValues, latitudeValues, longitudeValues ); 
     107    } 
     108 
     109 
     110    @NotNull 
     111    public <T1, T2, T3> Data<List<T1>, List<T2>, List<T3>> getListsByPlateformByParameterByPeriodFor2D( @NotNull final Integer plateformId, @NotNull final Integer parameterId, @Nullable final Date dateBegin, @Nullable final Date dateEnd ) 
     112            throws PersistenceException 
     113    { 
     114        final DetachedCriteria criteria = DetachedCriteria.forClass( Valeur.class, "value" ) 
     115                .add( Restrictions.eq( "value.parametre.id", parameterId ) ) 
     116                .createCriteria( "mesure", "measure" ) 
     117                .add( Restrictions.eq( "measure.plateforme.id", plateformId ) ); 
     118 
     119        if( null != dateBegin ) 
     120            criteria.add( Restrictions.ge( "measure.mesureDate", dateBegin ) ); 
     121        if( null != dateEnd ) 
     122            criteria.add( Restrictions.le( "measure.mesureDate", dateEnd ) ); 
     123 
     124        criteria.createCriteria( "localisation", "localisation" ); 
     125 
     126        criteria.setProjection( Projections.distinct( Projections.projectionList() 
     127                .add( Projections.property( "value.valeurVal" ) ) 
     128                .add( Projections.property( "localisation.localisationLat" ) ) 
     129                .add( Projections.property( "localisation.localisationLon" ) ) ) ); 
     130 
     131        criteria.addOrder( Order.asc( "localisation.localisationLon" ) ); 
     132 
     133//        final List<Object[]> objects = selectAllByCriteria( Object[].class, criteria ); 
     134        // TODO : remove maxResults to 10 
     135        final List<Object[]> objects = selectPage( null, 100, criteria ); 
     136 
     137        final List<Double> latitudeValues = new ArrayList<Double>( objects.size() ); 
     138        final List<Double> longitudeValues = new ArrayList<Double>( objects.size() ); 
     139        final List<Double> parameterValues = new ArrayList<Double>( objects.size() ); 
     140 
     141        int i = 0; 
     142        for( final Object[] value : objects ) 
     143        { 
     144            parameterValues.add( (Double) value[0] ); 
     145            latitudeValues.add( Double.valueOf( Nombre.latIntToFloat( (Integer) value[1] ) ) ); 
     146            longitudeValues.add( Double.valueOf( Nombre.latIntToFloat( (Integer) value[2] ) ) ); 
    103147            i++; 
    104148        } 
Note: See TracChangeset for help on using the changeset viewer.