r1896 - in trunk: wao-persistence/src/main/java/fr/ifremer/wao wao-persistence/src/main/java/fr/ifremer/wao/entity wao-services/src/main/java/fr/ifremer/wao/services/service
Author: bleny Date: 2014-04-17 15:02:44 +0200 (Thu, 17 Apr 2014) New Revision: 1896 Url: http://forge.codelutin.com/projects/wao/repository/revisions/1896 Log: still trying to find a way to prevent user to view others company sample rows in boat filter values Modified: trunk/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/BoatTopiaDao.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java Modified: trunk/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java =================================================================== --- trunk/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java 2014-04-16 12:08:40 UTC (rev 1895) +++ trunk/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java 2014-04-17 13:02:44 UTC (rev 1896) @@ -177,7 +177,6 @@ @Override public boolean isFilled() { - // volontairement, on ne considère pas ObsProgram car ce n'est pas un critère de sélection en lui-même boolean filled = obsProgram != null || periodFrom != null || periodTo != null Modified: trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/BoatTopiaDao.java =================================================================== --- trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/BoatTopiaDao.java 2014-04-16 12:08:40 UTC (rev 1895) +++ trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/BoatTopiaDao.java 2014-04-17 13:02:44 UTC (rev 1896) @@ -80,7 +80,7 @@ query.setAlias("b"); - if (filter.getElligibleForSampleRowsFilter().isFilled()) { + if (isFilled(filter)) { SampleRowTopiaDao sampleRowTopiaDao = topiaDaoSupplier.getDao(SampleRow.class, SampleRowTopiaDao.class); HqlAndParametersBuilder<SampleRow> sampleRowsQuery = @@ -133,4 +133,21 @@ return query; } + + protected boolean isFilled(BoatsFilter filter) { + // volontairement, on ne considère pas ObsProgram car ce n'est pas un critère de sélection en lui-même + boolean filled = filter.getElligibleForSampleRowsFilter().getPeriodFrom() != null + || filter.getElligibleForSampleRowsFilter().getPeriodTo() != null + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getSampleRowIds()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getFishingZoneFacadeNames()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getFishingZoneSectorNames()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getSampleRowCodes()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getProgramNames()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getFishingGearDcfIds()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getTargetSpeciesDcfIds()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getSamplingStrategies()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getTerrestrialDistrictIds()) + || CollectionUtils.isNotEmpty(filter.getElligibleForSampleRowsFilter().getCompanyIds()); + return filled; + } } Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java 2014-04-16 12:08:40 UTC (rev 1895) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerBoatsService.java 2014-04-17 13:02:44 UTC (rev 1896) @@ -23,7 +23,6 @@ import com.google.common.base.Charsets; import com.google.common.base.Optional; -import com.google.common.collect.ImmutableSet; import fr.ifremer.wao.BoatsFilter; import fr.ifremer.wao.WaoTechnicalException; import fr.ifremer.wao.entity.Boat; @@ -48,7 +47,6 @@ import java.util.Collection; import java.util.HashSet; import java.util.List; -import java.util.Set; /** * Created on 4/1/14. @@ -66,15 +64,15 @@ BoatTopiaDao dao = getBoatDao(); // XXX brendan 07/04/14 ne pas inclure les lignes qui ne sont pas associées à un autre société que celle du coordinateur - Set<String> companyIds = null; - if (authenticatedWaoUser.isCoordinatorOrObserver()) { - companyIds = filter.getElligibleForSampleRowsFilter().getCompanyIds(); - filter.getElligibleForSampleRowsFilter().setCompanyIds(ImmutableSet.of(authenticatedWaoUser.getCompany().getTopiaId())); - } +// Set<String> companyIds = null; +// if (authenticatedWaoUser.isCoordinatorOrObserver()) { +// companyIds = filter.getElligibleForSampleRowsFilter().getCompanyIds(); +// filter.getElligibleForSampleRowsFilter().setCompanyIds(ImmutableSet.of(authenticatedWaoUser.getCompany().getTopiaId())); +// } List<Boat> boats = dao.findAll(filter); - if (authenticatedWaoUser.isCoordinatorOrObserver()) { - filter.getElligibleForSampleRowsFilter().setCompanyIds(companyIds); - } +// if (authenticatedWaoUser.isCoordinatorOrObserver()) { +// filter.getElligibleForSampleRowsFilter().setCompanyIds(companyIds); +// } BoatsFilterValues boatsFilterValues = new BoatsFilterValues(serviceContext.getLocale(), filter.getObsProgram()); Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java 2014-04-16 12:08:40 UTC (rev 1895) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java 2014-04-17 13:02:44 UTC (rev 1896) @@ -74,7 +74,8 @@ fishingZoneFacadeNames.add(FilterOption.forString(fishingZone.getFacadeName())); fishingZoneSectorNames.add(FilterOption.forString(fishingZone.getSectorName())); } - sampleRowCodes.add(FilterOption.forString(sampleRow.getCode())); + //sampleRowCodes.add(FilterOption.forString(sampleRow.getCode())); + sampleRowCodes.add(FilterOption.forValueAndLabel(sampleRow.getCode(), sampleRow.getCode() + " " + (sampleRow.getCompany() == null ? "" : sampleRow.getCompany().getName()))); programNames.add(FilterOption.forString(sampleRow.getProgramName())); Company company = sampleRow.getCompany();
participants (1)
-
bleny@users.forge.codelutin.com