r2277 - in trunk: . wao-persistence/src/main/java/fr/ifremer/wao/entity wao-services/src/main/java/fr/ifremer/wao/services/service wao-services/src/main/java/fr/ifremer/wao/services/service/administration wao-web/src/main/java/fr/ifremer/wao/web/action wao-web/src/main/resources/i18n wao-web/src/main/webapp wao-web/src/main/webapp/WEB-INF/content
Author: bleny Date: 2014-10-06 11:10:49 +0200 (Mon, 06 Oct 2014) New Revision: 2277 Url: http://forge.codelutin.com/projects/wao/repository/revisions/2277 Log: Fusion de la branche 4.1.x dans le tronc (4.2) Modified: trunk/ trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/TerrestrialLocations.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlanService.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/UpdateSampleRowCommand.java trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java trunk/wao-web/src/main/java/fr/ifremer/wao/web/action/EditContactAction.java trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties trunk/wao-web/src/main/webapp/WEB-INF/content/edit-sample-row-input.jsp trunk/wao-web/src/main/webapp/wao.css Property changes on: trunk ___________________________________________________________________ Modified: svn:mergeinfo - /branches/wao-4.0-obsvente:2075-2085 /branches/wao-4.0.x:2169-2256 + /branches/wao-4.0-obsvente:2075-2085 /branches/wao-4.0.x:2169-2269 /branches/wao-4.1.x:2268-2273 Modified: trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/TerrestrialLocations.java =================================================================== --- trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/TerrestrialLocations.java 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-persistence/src/main/java/fr/ifremer/wao/entity/TerrestrialLocations.java 2014-10-06 09:10:49 UTC (rev 2277) @@ -22,6 +22,7 @@ */ import com.google.common.base.Function; +import com.google.common.base.Predicate; import com.google.common.collect.Ordering; import java.util.Comparator; @@ -48,6 +49,10 @@ return new GetName(); } + public static Predicate<TerrestrialLocation> isDistrict() { + return new IsDistrict(); + } + protected static class GetDistrictCode implements Function<TerrestrialLocation, String> { @Override @@ -79,4 +84,12 @@ return input.getName(); } } + + protected static class IsDistrict implements Predicate<TerrestrialLocation> { + + @Override + public boolean apply(TerrestrialLocation input) { + return input.isDistrict(); + } + } } Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlanService.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlanService.java 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/SamplingPlanService.java 2014-10-06 09:10:49 UTC (rev 2277) @@ -356,6 +356,13 @@ ); updateSampleRowCommand.setAllDcf5Codes(allDcf5Codes); + ImmutableMap<String, TerrestrialLocation> allTerrestrialDistricts = + Maps.uniqueIndex( + getReferentialService().getAllTerrestrialDistricts(), + TopiaEntities.getTopiaIdFunction() + ); + updateSampleRowCommand.setAllTerrestrialDistricts(allTerrestrialDistricts); + return updateSampleRowCommand; } Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/UpdateSampleRowCommand.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/UpdateSampleRowCommand.java 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/UpdateSampleRowCommand.java 2014-10-06 09:10:49 UTC (rev 2277) @@ -21,7 +21,9 @@ * #L% */ +import com.google.common.base.Functions; import com.google.common.base.Preconditions; +import com.google.common.collect.Collections2; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Iterables; import com.google.common.collect.Sets; @@ -31,6 +33,7 @@ import fr.ifremer.wao.entity.SampleMonth; import fr.ifremer.wao.entity.SampleRow; import fr.ifremer.wao.entity.SampleRowLog; +import fr.ifremer.wao.entity.TerrestrialLocation; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.nuiton.topia.persistence.TopiaEntities; @@ -39,6 +42,7 @@ import java.io.Serializable; import java.text.DateFormat; import java.text.SimpleDateFormat; +import java.util.Collection; import java.util.Date; import java.util.LinkedHashMap; import java.util.Map; @@ -66,6 +70,8 @@ protected String elligibleBoatRegistrationCodes; + protected ImmutableMap<String, TerrestrialLocation> allTerrestrialDistricts; + /** * La clé est un mois au format YYYY-MM */ @@ -120,6 +126,16 @@ } } + public Collection<String> getTerrestrialLocationIds() { + return sampleRow.getTerrestrialLocationsTopiaIds(); + } + + public void setTerrestrialLocationIds(Collection<String> terrestrialLocationIds) { + Collection<TerrestrialLocation> terrestrialLocations = + Collections2.transform(terrestrialLocationIds, Functions.forMap(allTerrestrialDistricts)); + sampleRow.setTerrestrialLocations(terrestrialLocations); + } + public void setCode(String code) { Preconditions.checkState(isCreation(), "cannot change code for sample row " + sampleRow); sampleRow.setCode(code); @@ -206,6 +222,14 @@ return elligibleBoatRegistrationCodes; } + public ImmutableMap<String, TerrestrialLocation> getAllTerrestrialDistricts() { + return allTerrestrialDistricts; + } + + public void setAllTerrestrialDistricts(ImmutableMap<String, TerrestrialLocation> allTerrestrialDistricts) { + this.allTerrestrialDistricts = allTerrestrialDistricts; + } + public void setElligibleBoatRegistrationCodes(String elligibleBoatRegistrationCodes) { this.elligibleBoatRegistrationCodes = elligibleBoatRegistrationCodes; } Modified: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java =================================================================== --- trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java 2014-10-06 09:10:49 UTC (rev 2277) @@ -27,8 +27,10 @@ import com.google.common.base.Optional; import com.google.common.base.Preconditions; import com.google.common.base.Splitter; +import com.google.common.collect.Collections2; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Sets; +import com.google.common.collect.Iterables; import fr.ifremer.wao.WaoTechnicalException; import fr.ifremer.wao.entity.Boat; import fr.ifremer.wao.entity.BoatTopiaDao; @@ -55,6 +57,7 @@ import fr.ifremer.wao.entity.TerrestrialLocation; import fr.ifremer.wao.entity.TerrestrialLocationImpl; import fr.ifremer.wao.entity.TerrestrialLocationTopiaDao; +import fr.ifremer.wao.entity.TerrestrialLocations; import fr.ifremer.wao.services.service.ImportErrorException; import fr.ifremer.wao.services.service.WaoServiceSupport; import fr.ifremer.wao.services.service.csv.BoatImportExportModel; @@ -859,18 +862,29 @@ public List<TerrestrialLocation> getTerrestrialLocationInDistricts(Collection<TerrestrialLocation> terrestrialDistricts) { - Set districtCodes = new HashSet(); - for (TerrestrialLocation terrestrialDistrict : terrestrialDistricts) { - Preconditions.checkArgument(terrestrialDistrict.isDistrict()); - districtCodes.add(terrestrialDistrict.getDistrictCode()); - } + Preconditions.checkState( + Iterables.all(terrestrialDistricts, TerrestrialLocations.isDistrict()), + terrestrialDistricts + " must contains only districts" + ); + Collection<String> districtCodes = Collections2.transform(terrestrialDistricts, TerrestrialLocations.getDistrictCode()); + TerrestrialLocationTopiaDao dao = getTerrestrialLocationDao(); - List<TerrestrialLocation> locationsInDistricts = dao.forLocationTypeIn(ImmutableSet.of(LocationType.PORT, LocationType.AUCTION)).addIn(TerrestrialLocation.PROPERTY_DISTRICT_CODE, districtCodes).findAll(); + List<TerrestrialLocation> locationsInDistricts = dao + .forLocationTypeIn(ImmutableSet.of(LocationType.PORT, LocationType.AUCTION)) + .addIn(TerrestrialLocation.PROPERTY_DISTRICT_CODE, districtCodes) + .findAll(); return locationsInDistricts; } + public List<TerrestrialLocation> getAllTerrestrialDistricts() { + + List<TerrestrialLocation> allTerrestialDistricts = getTerrestrialLocationDao().forLocationTypeEquals(LocationType.DISTRICT).findAll(); + + return allTerrestialDistricts; + + } } Property changes on: trunk/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java ___________________________________________________________________ Modified: svn:mergeinfo - /branches/wao-1.5.x/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java:679-733 /branches/wao-4.0-obsvente/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java:2075-2085 + /branches/wao-1.5.x/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java:679-733 /branches/wao-4.0-obsvente/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java:2075-2085 /branches/wao-4.0.x/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java:2169-2269 /branches/wao-4.1.x/wao-services/src/main/java/fr/ifremer/wao/services/service/administration/ReferentialService.java:2268-2273 Modified: trunk/wao-web/src/main/java/fr/ifremer/wao/web/action/EditContactAction.java =================================================================== --- trunk/wao-web/src/main/java/fr/ifremer/wao/web/action/EditContactAction.java 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-web/src/main/java/fr/ifremer/wao/web/action/EditContactAction.java 2014-10-06 09:10:49 UTC (rev 2277) @@ -299,7 +299,7 @@ addFieldError("updateContactCommand.contact.observedDataControl", t("wao.ui.form.Contact.error.observedDataControlToCorrectionAsked")); } catch (MissingContactStateMotifException e) { - addFieldError("updateContactCommand.contact.contactStateMotif", t("wao.ui.form.Contact.error.missingContactStateMotif")); + addFieldError("updateContactCommand.contactStateMotifId", t("wao.ui.form.Contact.error.missingContactStateMotif")); } catch (MissingContactDataInputDateException e) { addFieldError("updateContactCommand.contact.dataInputDate", t("wao.ui.form.Contact.error.missingDataInputDate")); @@ -322,7 +322,8 @@ addFieldError("updateContactCommand.contact.mammalsInfo", t("wao.ui.form.Contact.error.missingMammalsInfo")); } catch (MissingContactTerrestrialLocationException e) { - throw new UnsupportedOperationException(); + addFieldError("updateContactCommand.terrestrialLocationId", t("wao.ui.form.Contact.error.missingTerrestrialLocation")); + } catch (IllegalAcceptationException e) { throw new IllegalStateException("should never occur", e); } Modified: trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties =================================================================== --- trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties 2014-10-06 09:10:49 UTC (rev 2277) @@ -305,6 +305,7 @@ wao.ui.form.Contact.error.missingObservedDataControl=The observed data control must be provided wao.ui.form.Contact.error.missingObserver=The main observer must be provided wao.ui.form.Contact.error.missingRestitution=The restitution date must be provided +wao.ui.form.Contact.error.missingTerrestrialLocation=The terrestrial location of observation must be provided wao.ui.form.Contact.error.observationEndDateAfterToday=Observation end date cannot be after today wao.ui.form.Contact.error.observationEndDateBeforeBeginDate=Observation end date must be after observation begin date wao.ui.form.Contact.error.observedDataControlToCorrectionAsked=Observed data control shows that a correction is asked Property changes on: trunk/wao-web/src/main/resources/i18n/wao-web_en_GB.properties ___________________________________________________________________ Modified: svn:mergeinfo - /branches/wao-1.5.x/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties:679-733 /branches/wao-4.0-obsvente/wao-web/src/main/resources/i18n/wao-web_en_GB.properties:2075-2085 /branches/wao-4.0.x/wao-web/src/main/resources/i18n/wao-web_en_GB.properties:2169-2227 + /branches/wao-1.5.x/wao-ui/src/main/resources/i18n/wao-ui_en_GB.properties:679-733 /branches/wao-4.0-obsvente/wao-web/src/main/resources/i18n/wao-web_en_GB.properties:2075-2085 /branches/wao-4.0.x/wao-web/src/main/resources/i18n/wao-web_en_GB.properties:2169-2269 /branches/wao-4.1.x/wao-web/src/main/resources/i18n/wao-web_en_GB.properties:2268-2273 Modified: trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties =================================================================== --- trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties 2014-10-06 09:10:49 UTC (rev 2277) @@ -306,6 +306,7 @@ wao.ui.form.Contact.error.missingObservedDataControl=Il faut préciser une valeur pour le contrôle des données observées wao.ui.form.Contact.error.missingObserver=Il ne peut y avoir aucun observateur pour l'état '%s' wao.ui.form.Contact.error.missingRestitution=Il faut préciser une date de transmission de la restitution de la donnée avant de valider +wao.ui.form.Contact.error.missingTerrestrialLocation=Il faut préciser le lieu d'observation wao.ui.form.Contact.error.observationEndDateAfterToday=La date de fin de la marée ne peut pas être postérieure à la date du jour wao.ui.form.Contact.error.observationEndDateBeforeBeginDate=La date de fin d'observation ne peut pas être antérieure à celle du début wao.ui.form.Contact.error.observedDataControlToCorrectionAsked=Un contact ne peut être accepté si le contrôle des données observées indique qu'une correction est demandée Property changes on: trunk/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties ___________________________________________________________________ Modified: svn:mergeinfo - /branches/wao-1.5.x/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties:679-733 /branches/wao-4.0-obsvente/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties:2075-2085 /branches/wao-4.0.x/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties:2169-2227 + /branches/wao-1.5.x/wao-ui/src/main/resources/i18n/wao-ui_fr_FR.properties:679-733 /branches/wao-4.0-obsvente/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties:2075-2085 /branches/wao-4.0.x/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties:2169-2269 /branches/wao-4.1.x/wao-web/src/main/resources/i18n/wao-web_fr_FR.properties:2268-2273 Modified: trunk/wao-web/src/main/webapp/WEB-INF/content/edit-sample-row-input.jsp =================================================================== --- trunk/wao-web/src/main/webapp/WEB-INF/content/edit-sample-row-input.jsp 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-web/src/main/webapp/WEB-INF/content/edit-sample-row-input.jsp 2014-10-06 09:10:49 UTC (rev 2277) @@ -242,6 +242,17 @@ <s:if test="updateSampleRowCommand.sampleRow.obsProgram.obsVente"> + <s:select name="updateSampleRowCommand.terrestrialLocationIds" + label="%{getText('wao.ui.field.SampleRow.terrestrialLocations')}" + disabled="updateSampleRowCommand.observationAlreadyStarted" + list="updateSampleRowCommand.allTerrestrialDistricts" + listValue="%{value.districtName}" + multiple="true" + cssClass="input-xxlarge" + /> + + <s:textfield name="updateSampleRowCommand.sampleRow.terrestrialLocationInfos" label="%{getText('wao.ui.field.SampleRow.terrestrialLocationInfos')}" cssClass="input-xxlarge" /> + <s:textfield type="number" name="updateSampleRowCommand.sampleRow.averageObservationsCount" label="%{getText('wao.ui.field.SampleRow.averageObservationsCount')}" inputAppend="%{getText('wao.ui.unit.observations')}" cssClass="input-small"/> </s:if> Modified: trunk/wao-web/src/main/webapp/wao.css =================================================================== --- trunk/wao-web/src/main/webapp/wao.css 2014-10-06 09:08:36 UTC (rev 2276) +++ trunk/wao-web/src/main/webapp/wao.css 2014-10-06 09:10:49 UTC (rev 2277) @@ -748,6 +748,10 @@ /** * Accueil */ +main.home { + padding-bottom: 50px; +} + main.home .news { background-color: #fff; padding: 20px 20px 10px 20px;
participants (1)
-
bleny@users.forge.codelutin.com