r2103 - in trunk: wao-services/src/main/java/fr/ifremer/wao/services/service wao-web/src/main/webapp/WEB-INF/content/obsmer wao-web/src/main/webapp/WEB-INF/content/obsvente
Author: bleny Date: 2014-06-25 15:56:42 +0200 (Wed, 25 Jun 2014) New Revision: 2103 Url: http://forge.codelutin.com/projects/wao/repository/revisions/2103 Log: fixes #5321 hide links to contact if no contacts Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlan.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanBuilder.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanService.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlan.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanBuilder.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanService.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlan.java trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/sampling-plan.jsp trunk/wao-web/src/main/webapp/WEB-INF/content/obsvente/sampling-plan.jsp Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlan.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlan.java 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlan.java 2014-06-25 13:56:42 UTC (rev 2103) @@ -128,8 +128,9 @@ SampleRow sampleRow, Double observationTimesInDaysExpected, Long observationTimesInDaysReal, - Long observationTimesInDaysEstimated) { - super(locale, nbTidesPerMonth, sampleRow); + Long observationTimesInDaysEstimated, + long sampleRowContactCounts) { + super(locale, nbTidesPerMonth, sampleRow, sampleRowContactCounts); this.observationTimesInDaysExpected = observationTimesInDaysExpected; this.observationTimesInDaysReal = observationTimesInDaysReal; this.observationTimesInDaysEstimated = observationTimesInDaysEstimated; Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanBuilder.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanBuilder.java 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanBuilder.java 2014-06-25 13:56:42 UTC (rev 2103) @@ -164,7 +164,8 @@ public ObsMerSamplingPlanBuilder addSampleRow(SampleRow sampleRow, Double observationTimesInDaysExpected, Long observationTimesInDaysReal, - Long observationTimesInDaysEstimated) { + Long observationTimesInDaysEstimated, + long sampleRowContactCounts) { String facade = sampleRow.getFacade(); FacadeContext facadeContext = facadeMap.get(facade); @@ -190,7 +191,8 @@ nbTidesPerMonth, observationTimesInDaysExpected, observationTimesInDaysReal, - observationTimesInDaysEstimated); + observationTimesInDaysEstimated, + sampleRowContactCounts); // Sum total observation times in days observationTimesInDaysTotalExpected.add(observationTimesInDaysExpected); @@ -345,7 +347,8 @@ Map<Date, ObsMerSamplingPlan.SamplingPlanStatistics> nbTidesPerMonth, Double observationTimesInDaysExpected, Long observationTimesInDaysReal, - Long observationTimesInDaysEstimated) { + Long observationTimesInDaysEstimated, + long sampleRowContactCounts) { ObsMerSamplingPlan.ObsMerSamplingPlanSampleRowPart rowPart = new ObsMerSamplingPlan.ObsMerSamplingPlanSampleRowPart(locale, @@ -353,7 +356,8 @@ row, observationTimesInDaysExpected, observationTimesInDaysReal, - observationTimesInDaysEstimated); + observationTimesInDaysEstimated, + sampleRowContactCounts); rows.add(rowPart); return rowPart; Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanService.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanService.java 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsMerSamplingPlanService.java 2014-06-25 13:56:42 UTC (rev 2103) @@ -31,6 +31,7 @@ import fr.ifremer.wao.WaoUtils; import fr.ifremer.wao.entity.Contact; import fr.ifremer.wao.entity.ContactState; +import fr.ifremer.wao.entity.ContactTopiaDao; import fr.ifremer.wao.entity.SampleMonth; import fr.ifremer.wao.entity.SampleRow; import fr.ifremer.wao.entity.SampleRowTopiaDao; @@ -71,6 +72,7 @@ if (result == null) { SampleRowTopiaDao dao = getSampleRowDao(); + ContactTopiaDao contactDao = getContactDao(); // recuperation des lignes du plan List<SampleRow> sampleRows = dao.findAll(sampleRowsFilter); @@ -100,11 +102,14 @@ Long observationTimesInDaysReal = realAndEstimated.getLeft(); Long observationTimesInDaysEstimated = realAndEstimated.getRight(); + long sampleRowContactCounts = contactDao.forSampleRowEquals(sampleRow).count(); + // ajout de la ligne au build de plan builder.addSampleRow(sampleRow, observationTimesInDaysExpected, observationTimesInDaysReal, - observationTimesInDaysEstimated); + observationTimesInDaysEstimated, + sampleRowContactCounts); } result = builder.toPlan(); Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlan.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlan.java 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlan.java 2014-06-25 13:56:42 UTC (rev 2103) @@ -47,8 +47,8 @@ protected int averageObservationsCount; - public ObsVenteSamplingPlanSampleRowPart(Locale locale, Map<Date, SamplingPlanStatistics> nbTidesPerMonth, SampleRow sampleRow) { - super(locale, nbTidesPerMonth, sampleRow); + public ObsVenteSamplingPlanSampleRowPart(Locale locale, Map<Date, SamplingPlanStatistics> nbTidesPerMonth, SampleRow sampleRow, long sampleRowContactCounts) { + super(locale, nbTidesPerMonth, sampleRow, sampleRowContactCounts); terrestrialLocationInfos = sampleRow.getTerrestrialLocationInfos(); terrestrialLocationNamesAndDescriptions = new LinkedHashMap<>(); if (CollectionUtils.isNotEmpty(sampleRow.getTerrestrialLocations())) { Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanBuilder.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanBuilder.java 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanBuilder.java 2014-06-25 13:56:42 UTC (rev 2103) @@ -129,7 +129,7 @@ this.months = periodDates.getMonths(); } - public ObsVenteSamplingPlanBuilder addSampleRow(SampleRow sampleRow) { + public ObsVenteSamplingPlanBuilder addSampleRow(SampleRow sampleRow, long sampleRowContactCounts) { String facade = sampleRow.getFacade(); FacadeContext facadeContext = facadeMap.get(facade); @@ -152,7 +152,8 @@ // add sample row sectorPart.addSampleRow(sampleRowsFilterValues.getLocale(), sampleRow, - nbTidesPerMonth); + nbTidesPerMonth, + sampleRowContactCounts); sampleRowsFilterValues.addSampleRow(sampleRow); @@ -296,12 +297,15 @@ protected ObsMerSamplingPlan.SamplingPlanSampleRowPart addSampleRow(Locale locale, SampleRow row, - Map<Date, ObsMerSamplingPlan.SamplingPlanStatistics> nbTidesPerMonth) { + Map<Date, ObsMerSamplingPlan.SamplingPlanStatistics> nbTidesPerMonth, + long sampleRowContactCounts) { ObsVenteSamplingPlan.ObsVenteSamplingPlanSampleRowPart rowPart = - new ObsVenteSamplingPlan.ObsVenteSamplingPlanSampleRowPart(locale, - nbTidesPerMonth, - row); + new ObsVenteSamplingPlan.ObsVenteSamplingPlanSampleRowPart( + locale, + nbTidesPerMonth, + row, + sampleRowContactCounts); rows.add(rowPart); return rowPart; Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanService.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanService.java 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/ObsVenteSamplingPlanService.java 2014-06-25 13:56:42 UTC (rev 2103) @@ -3,6 +3,7 @@ import com.google.common.base.Optional; import com.google.common.cache.Cache; import fr.ifremer.wao.SampleRowsFilter; +import fr.ifremer.wao.entity.ContactTopiaDao; import fr.ifremer.wao.entity.SampleRow; import fr.ifremer.wao.entity.SampleRowTopiaDao; import fr.ifremer.wao.services.AuthenticatedWaoUser; @@ -34,6 +35,7 @@ if (result == null) { SampleRowTopiaDao dao = getSampleRowDao(); + ContactTopiaDao contactDao = getContactDao(); // recuperation des lignes du plan List<SampleRow> sampleRows = dao.findAll(sampleRowsFilter); @@ -46,8 +48,10 @@ for (SampleRow sampleRow : sampleRows) { + long sampleRowContactCounts = contactDao.forSampleRowEquals(sampleRow).count(); + // ajout de la ligne au build de plan - builder.addSampleRow(sampleRow); + builder.addSampleRow(sampleRow, sampleRowContactCounts); } result = builder.toPlan(); Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlan.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlan.java 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlan.java 2014-06-25 13:56:42 UTC (rev 2103) @@ -274,6 +274,8 @@ */ protected Map<Date, SamplingPlanStatistics> nbTidesPerMonth; + protected long sampleRowContactCounts; + /** * Total of tides. */ @@ -337,8 +339,10 @@ public SamplingPlanSampleRowPart(Locale locale, Map<Date, SamplingPlanStatistics> nbTidesPerMonth, - SampleRow sampleRow) { + SampleRow sampleRow, + long sampleRowContactCounts) { this.nbTidesPerMonth = nbTidesPerMonth; + this.sampleRowContactCounts = sampleRowContactCounts; // compute total tides int totalTidesExpected = 0; int totalTidesEstimated = 0; @@ -537,6 +541,10 @@ boolean isNewContactCreatable = new Date().before(lastSampleMonthEndOfMonth); return isNewContactCreatable; } + + public long getSampleRowContactCounts() { + return sampleRowContactCounts; + } } } Modified: trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/sampling-plan.jsp =================================================================== --- trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/sampling-plan.jsp 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-web/src/main/webapp/WEB-INF/content/obsmer/sampling-plan.jsp 2014-06-25 13:56:42 UTC (rev 2103) @@ -489,7 +489,7 @@ </s:a> </li> </s:if> - <s:if test="authenticatedWaoUser.authorizedToViewContacts"> + <s:if test="authenticatedWaoUser.authorizedToViewContacts && sampleRowContactCounts > 0"> <li> <s:url action="contacts" id="viewAssociatedContactsUrl"> <s:param name="filter.sampleRowFilter.sampleRowCodes" value="code" /> Modified: trunk/wao-web/src/main/webapp/WEB-INF/content/obsvente/sampling-plan.jsp =================================================================== --- trunk/wao-web/src/main/webapp/WEB-INF/content/obsvente/sampling-plan.jsp 2014-06-25 13:14:55 UTC (rev 2102) +++ trunk/wao-web/src/main/webapp/WEB-INF/content/obsvente/sampling-plan.jsp 2014-06-25 13:56:42 UTC (rev 2103) @@ -468,7 +468,7 @@ </s:a> </li> </s:if> - <s:if test="authenticatedWaoUser.authorizedToViewContacts"> + <s:if test="authenticatedWaoUser.authorizedToViewContacts && sampleRowContactCounts > 0"> <li> <s:url action="contacts" id="viewAssociatedContactsUrl"> <s:param name="filter.sampleRowFilter.sampleRowCodes" value="code" />
participants (1)
-
bleny@users.forge.codelutin.com