This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository wao. See http://git.codelutin.com/wao.git commit 5c3e714f664f86449e5f7bd3576e2de91e352260 Author: Brendan Le Ny <bleny@codelutin.com> Date: Tue Feb 10 14:40:06 2015 +0100 Pour la scléro, ajout d'un filtre sur le code quartier de la zone de pêche (termine #6637) --- .../src/main/java/fr/ifremer/wao/SampleRowsFilter.java | 14 ++++++++++++++ .../main/java/fr/ifremer/wao/entity/SampleRowTopiaDao.java | 6 ++++++ .../wao/services/service/SampleRowsFilterValues.java | 11 +++++++++++ wao-web/src/main/resources/i18n/wao-web_en_GB.properties | 1 + wao-web/src/main/resources/i18n/wao-web_fr_FR.properties | 3 ++- wao-web/src/main/webapp/WEB-INF/content/contacts.jsp | 7 +++++++ .../WEB-INF/content/sclerochronology/sampling-plan.jsp | 5 +++++ wao-web/src/main/webapp/WEB-INF/content/synthesis.jsp | 7 +++++++ 8 files changed, 53 insertions(+), 1 deletion(-) diff --git a/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java b/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java index dab068b..d0db199 100644 --- a/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java +++ b/wao-persistence/src/main/java/fr/ifremer/wao/SampleRowsFilter.java @@ -57,6 +57,8 @@ public class SampleRowsFilter extends AbstractWaoFilter { protected Set<String> fishingZoneSectorNames; + protected Set<String> fishingZoneDistrictCodes; + protected Set<String> sampleRowCodes; protected Set<String> programNames; @@ -119,6 +121,14 @@ public class SampleRowsFilter extends AbstractWaoFilter { this.fishingZoneSectorNames = fishingZoneSectorNames; } + public Set<String> getFishingZoneDistrictCodes() { + return fishingZoneDistrictCodes; + } + + public void setFishingZoneDistrictCodes(Set<String> fishingZoneDistrictCodes) { + this.fishingZoneDistrictCodes = fishingZoneDistrictCodes; + } + public Set<String> getSampleRowCodes() { return sampleRowCodes; } @@ -223,6 +233,7 @@ public class SampleRowsFilter extends AbstractWaoFilter { || CollectionUtils.isNotEmpty(sampleRowIds) || CollectionUtils.isNotEmpty(fishingZoneFacadeNames) || CollectionUtils.isNotEmpty(fishingZoneSectorNames) + || CollectionUtils.isNotEmpty(fishingZoneDistrictCodes) || CollectionUtils.isNotEmpty(sampleRowCodes) || CollectionUtils.isNotEmpty(programNames) || CollectionUtils.isNotEmpty(fishingGearDcfIds) @@ -251,6 +262,7 @@ public class SampleRowsFilter extends AbstractWaoFilter { && WaoUtils.isEqualCollection(sampleRowIds, that.sampleRowIds) && WaoUtils.isEqualCollection(fishingZoneFacadeNames, that.fishingZoneFacadeNames) && WaoUtils.isEqualCollection(fishingZoneSectorNames, that.fishingZoneSectorNames) + && WaoUtils.isEqualCollection(fishingZoneDistrictCodes, that.fishingZoneDistrictCodes) && WaoUtils.isEqualCollection(sampleRowCodes, that.sampleRowCodes) && WaoUtils.isEqualCollection(programNames, that.programNames) && WaoUtils.isEqualCollection(fishingGearDcfIds, that.fishingGearDcfIds) @@ -281,6 +293,7 @@ public class SampleRowsFilter extends AbstractWaoFilter { hashCode = 31 * hashCode + WaoUtils.collectionHashCode(sampleRowIds); hashCode = 31 * hashCode + WaoUtils.collectionHashCode(fishingZoneFacadeNames); hashCode = 31 * hashCode + WaoUtils.collectionHashCode(fishingZoneSectorNames); + hashCode = 31 * hashCode + WaoUtils.collectionHashCode(fishingZoneDistrictCodes); hashCode = 31 * hashCode + WaoUtils.collectionHashCode(sampleRowCodes); hashCode = 31 * hashCode + WaoUtils.collectionHashCode(programNames); hashCode = 31 * hashCode + WaoUtils.collectionHashCode(fishingGearDcfIds); @@ -304,6 +317,7 @@ public class SampleRowsFilter extends AbstractWaoFilter { clone.sampleRowIds = sampleRowIds == null ? null : new HashSet<>(sampleRowIds); clone.fishingZoneFacadeNames = fishingZoneFacadeNames == null ? null : new HashSet<>(fishingZoneFacadeNames); clone.fishingZoneSectorNames = fishingZoneSectorNames == null ? null : new HashSet<>(fishingZoneSectorNames); + clone.fishingZoneDistrictCodes = fishingZoneDistrictCodes == null ? null : new HashSet<>(fishingZoneDistrictCodes); clone.sampleRowCodes = sampleRowCodes == null ? null : new HashSet<>(sampleRowCodes); clone.programNames = programNames == null ? null : new HashSet<>(programNames); clone.fishingGearDcfIds = fishingGearDcfIds == null ? null : new HashSet<>(fishingGearDcfIds); diff --git a/wao-persistence/src/main/java/fr/ifremer/wao/entity/SampleRowTopiaDao.java b/wao-persistence/src/main/java/fr/ifremer/wao/entity/SampleRowTopiaDao.java index 94889f8..c5ed534 100644 --- a/wao-persistence/src/main/java/fr/ifremer/wao/entity/SampleRowTopiaDao.java +++ b/wao-persistence/src/main/java/fr/ifremer/wao/entity/SampleRowTopiaDao.java @@ -126,6 +126,12 @@ public class SampleRowTopiaDao extends AbstractSampleRowTopiaDao<SampleRow> { ImmutableMap.of("fishingZoneSectorNames", (Object) filter.getFishingZoneSectorNames())); } + if (CollectionUtils.isNotEmpty(filter.getFishingZoneDistrictCodes())) { + query.addWhereClause( + "sr.topiaId in (select sr2.topiaId from fr.ifremer.wao.entity.SampleRowImpl as sr2 join sr2.fishingZone as fz where fz.districtCode in (:fishingZoneDistrictCodes))", + ImmutableMap.of("fishingZoneDistrictCodes", (Object) filter.getFishingZoneDistrictCodes())); + } + if (CollectionUtils.isNotEmpty(filter.getFishingGearDcfIds())) { query.addWhereClause( "sr.topiaId in (select sr2.topiaId from fr.ifremer.wao.entity.SampleRowImpl as sr2 join sr2.dcf5Code as dcf where dcf.fishingGearDcf.topiaId in (:fishingGearDcfIds))", diff --git a/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java b/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java index 824701d..e9cbdc0 100644 --- a/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java +++ b/wao-services/src/main/java/fr/ifremer/wao/services/service/SampleRowsFilterValues.java @@ -48,6 +48,8 @@ public class SampleRowsFilterValues extends AbstractFilterValues { protected SortedSet<FilterOption> fishingZoneSectorNames = new TreeSet<>(); + protected SortedSet<FilterOption> fishingZoneDistrictCodes = new TreeSet<>(); + protected SortedSet<FilterOption> sampleRowCodes = new TreeSet<>(); protected SortedSet<FilterOption> programNames = new TreeSet<>(); @@ -104,6 +106,7 @@ public class SampleRowsFilterValues extends AbstractFilterValues { for (FishingZone fishingZone : sampleRow.getFishingZone()) { fishingZoneFacadeNames.add(FilterOption.forString(fishingZone.getFacadeName())); fishingZoneSectorNames.add(FilterOption.forString(fishingZone.getSectorName())); + fishingZoneDistrictCodes.add(FilterOption.forString(fishingZone.getDistrictCode())); } sampleRowCodes.add(FilterOption.forString(sampleRow.getCode())); @@ -168,6 +171,10 @@ public class SampleRowsFilterValues extends AbstractFilterValues { return fishingZoneSectorNames; } + public SortedSet<FilterOption> getFishingZoneDistrictCodes() { + return fishingZoneDistrictCodes; + } + public SortedSet<FilterOption> getSampleRowCodes() { return sampleRowCodes; } @@ -216,6 +223,10 @@ public class SampleRowsFilterValues extends AbstractFilterValues { this.fishingZoneSectorNames = fishingZoneSectorNames; } + public void setFishingZoneDistrictCodes(SortedSet<FilterOption> fishingZoneDistrictCodes) { + this.fishingZoneDistrictCodes = fishingZoneDistrictCodes; + } + public void setSampleRowCodes(SortedSet<FilterOption> sampleRowCodes) { this.sampleRowCodes = sampleRowCodes; } diff --git a/wao-web/src/main/resources/i18n/wao-web_en_GB.properties b/wao-web/src/main/resources/i18n/wao-web_en_GB.properties index 974eb0f..98da054 100644 --- a/wao-web/src/main/resources/i18n/wao-web_en_GB.properties +++ b/wao-web/src/main/resources/i18n/wao-web_en_GB.properties @@ -239,6 +239,7 @@ wao.ui.field.Contact.secondaryObservers=Secondary observers wao.ui.field.Contact.terrestrialLocation=Observation's place wao.ui.field.Contact.validationCompany=Company validation wao.ui.field.Contact.validationProgram=Program validation +wao.ui.field.FishingZone.districtCode=District code wao.ui.field.FishingZone.facadeName=Facade wao.ui.field.FishingZone.sectorName=Sector wao.ui.field.Laboratory.active=Active diff --git a/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties b/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties index 274b4ac..00b2b0d 100644 --- a/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties +++ b/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties @@ -240,8 +240,9 @@ wao.ui.field.Contact.secondaryObservers=Observateurs secondaires wao.ui.field.Contact.terrestrialLocation=Lieu d'observation wao.ui.field.Contact.validationCompany=Validation société wao.ui.field.Contact.validationProgram=Validation programme +wao.ui.field.FishingZone.districtCode=Division wao.ui.field.FishingZone.facadeName=Façade -wao.ui.field.FishingZone.sectorName=Zone +wao.ui.field.FishingZone.sectorName=Secteur wao.ui.field.Laboratory.active=Actif wao.ui.field.Laboratory.name=Nom wao.ui.field.Laboratory.waoUser=Membres du laboratoire diff --git a/wao-web/src/main/webapp/WEB-INF/content/contacts.jsp b/wao-web/src/main/webapp/WEB-INF/content/contacts.jsp index 3a3a0e9..58c46a0 100644 --- a/wao-web/src/main/webapp/WEB-INF/content/contacts.jsp +++ b/wao-web/src/main/webapp/WEB-INF/content/contacts.jsp @@ -65,6 +65,13 @@ filterLabel: "<s:text name="wao.ui.field.FishingZone.sectorName"/>", filterValuesField: 'sampleRowsFilterValues.fishingZoneSectorNames', }, + <s:if test="sclerochronology"> + { + filterName: 'sampleRowFilter.fishingZoneDistrictCodes', + filterLabel: "<s:text name="wao.ui.field.FishingZone.districtCode"/>", + filterValuesField: 'sampleRowsFilterValues.fishingZoneDistrictCodes', + }, + </s:if> <s:if test="obsVente"> { filterName: 'terrestrialLocationIds', diff --git a/wao-web/src/main/webapp/WEB-INF/content/sclerochronology/sampling-plan.jsp b/wao-web/src/main/webapp/WEB-INF/content/sclerochronology/sampling-plan.jsp index 9a0d60d..e62c6b9 100644 --- a/wao-web/src/main/webapp/WEB-INF/content/sclerochronology/sampling-plan.jsp +++ b/wao-web/src/main/webapp/WEB-INF/content/sclerochronology/sampling-plan.jsp @@ -64,6 +64,11 @@ filterValuesField: 'fishingZoneSectorNames', }, { + filterName: 'fishingZoneDistrictCodes', + filterLabel: "<s:text name="wao.ui.field.FishingZone.districtCode"/>", + filterValuesField: 'fishingZoneDistrictCodes', + }, + { filterName: 'sclerochronologySamplingContexts', filterLabel: "<s:text name="wao.ui.field.SampleRow.sclerochronologySamplingContext"/>", filterValuesField: 'sclerochronologySamplingContexts', diff --git a/wao-web/src/main/webapp/WEB-INF/content/synthesis.jsp b/wao-web/src/main/webapp/WEB-INF/content/synthesis.jsp index b4b4dab..2182cd5 100644 --- a/wao-web/src/main/webapp/WEB-INF/content/synthesis.jsp +++ b/wao-web/src/main/webapp/WEB-INF/content/synthesis.jsp @@ -67,6 +67,13 @@ filterLabel: "<s:text name="wao.ui.field.FishingZone.sectorName"/>", filterValuesField: 'sampleRowsFilterValues.fishingZoneSectorNames', }, + <s:if test="sclerochronology"> + { + filterName: 'sampleRowFilter.fishingZoneDistrictCodes', + filterLabel: "<s:text name="wao.ui.field.FishingZone.districtCode"/>", + filterValuesField: 'sampleRowsFilterValues.fishingZoneDistrictCodes', + }, + </s:if> <s:if test="obsMer || obsVente"> { filterName: 'sampleRowFilter.fishingGearDcfIds', -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.