This is an automated email from the git hooks/post-receive script. New commit to branch feature/7604-2 in repository observe. See http://git.codelutin.com/observe.git commit 611f8c6ce92ef4fe67a36eba62853a6cc773c0c6 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Tue Oct 20 09:18:01 2015 +0200 ajout de filtre sur les espèces (refs #7604) --- .../table/impl/seine/TargetCatchUIHandler.java | 9 ++++++--- .../v1/seine/TargetCatchServiceController.java | 4 ++-- .../ird/observe/entities/seine/TargetCatchImpl.java | 2 ++ .../services/service/seine/TargetCatchService.java | 2 +- .../observe/services/entity/EntitiesSetFactory.java | 19 +++++++++++++++++++ .../service/seine/TargetCatchServiceTopia.java | 11 ++++++++++- 6 files changed, 40 insertions(+), 7 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIHandler.java index 0986eaf..55fe43e 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIHandler.java @@ -147,7 +147,6 @@ public class TargetCatchUIHandler extends ContentTableUIHandler<SetSeineTargetCa // il existe des echantillon thon a supprimer on demande une // confirmation StringBuilder sb = new StringBuilder(512); - StringBuilder sb2 = new StringBuilder(512); Decorator<ReferenceDto> decorator = getDecoratorService().getDecoratorByType(ReferenceDto.class, SpeciesDto.class.getSimpleName()); @@ -156,7 +155,7 @@ public class TargetCatchUIHandler extends ContentTableUIHandler<SetSeineTargetCa } int reponse = UIHelper.askUser( t("observe.title.need.confirm"), - t("observe.targetDiscarded.message.table.will.delete.targetLength", sb.toString(), sb2.toString()), + t("observe.targetDiscarded.message.table.will.delete.targetLength", sb.toString()), JOptionPane.ERROR_MESSAGE, new Object[]{ t("observe.choice.continue"), @@ -306,9 +305,13 @@ public class TargetCatchUIHandler extends ContentTableUIHandler<SetSeineTargetCa @Override protected void loadEditBean(String beanId) { - FormDto<SetSeineTargetCatchDto> formDto = getTargetCatchService().loadToEdit(beanId); + + String tripSeineId = getDataContext().getSelectedTripSeineId(); + + FormDto<SetSeineTargetCatchDto> formDto = getTargetCatchService().loadToEdit(beanId, tripSeineId); getModel().setFormDto(formDto); + SetSeineTargetCatchDtos.copySetSeineTargetCatchDto(formDto.getForm(), getBean()); } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TargetCatchServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TargetCatchServiceController.java index 21fc85c..56634d4 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TargetCatchServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TargetCatchServiceController.java @@ -43,8 +43,8 @@ public class TargetCatchServiceController extends ObserveAuthenticatedServiceCon } @Override - public FormDto<SetSeineTargetCatchDto> loadToEdit(String setSeineId) { - return service.loadToEdit(setSeineId); + public FormDto<SetSeineTargetCatchDto> loadToEdit(String setSeineId, String tripSeineId) { + return service.loadToEdit(setSeineId, tripSeineId); } @Override diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/seine/TargetCatchImpl.java b/observe-entities/src/main/java/fr/ird/observe/entities/seine/TargetCatchImpl.java index fefdb14..5e68325 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/seine/TargetCatchImpl.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/seine/TargetCatchImpl.java @@ -29,6 +29,8 @@ public class TargetCatchImpl extends TargetCatchAbstract { private static final long serialVersionUID = 1L; + public static final String PROPERTY_SPECIES = "species"; + @Override public Species getSpecies() { return weightCategory == null ? null : weightCategory.getSpecies(); diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TargetCatchService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TargetCatchService.java index 78f05dd..8cbe090 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TargetCatchService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TargetCatchService.java @@ -40,7 +40,7 @@ public interface TargetCatchService extends ObserveService { FormDto<SetSeineTargetCatchDto> loadToRead(String setSeineId); @WriteDataPermission - FormDto<SetSeineTargetCatchDto> loadToEdit(String setSeineId); + FormDto<SetSeineTargetCatchDto> loadToEdit(String setSeineId, String tripSeineId); @Write @WriteDataPermission diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java index 7bc9167..da14a86 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/entity/EntitiesSetFactory.java @@ -16,6 +16,8 @@ import fr.ird.observe.entities.referentiel.Vessels; import fr.ird.observe.entities.seine.ObjectObservedSpecies; import fr.ird.observe.entities.seine.ObjectSchoolEstimate; import fr.ird.observe.entities.seine.SchoolEstimate; +import fr.ird.observe.entities.seine.TargetCatch; +import fr.ird.observe.entities.seine.TargetCatchImpl; import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.services.ObserveSpeciesListConfiguration; import org.nuiton.topia.persistence.TopiaEntity; @@ -97,6 +99,12 @@ public class EntitiesSetFactory { SchoolEstimate.PROPERTY_SPECIES, speciesListConfiguration.getSpeciesListSeineSchoolEstimateId()); + // TargetCatch + registerSpeciesListOceanEntitiesSet(builder, + TargetCatch.class, + TargetCatchImpl.PROPERTY_SPECIES, + speciesListConfiguration.getSpeciesListSeineTargetCatchId()); + this.cache = builder.build(); } @@ -163,6 +171,17 @@ public class EntitiesSetFactory { } + protected <P extends TopiaEntity> void registerSpeciesListOceanEntitiesSet( + ImmutableMap.Builder<String, EntitiesSet> builder, + Class<P> parentType, + String propertyName, + String speciesListId) { + + EntitiesSet<Species> entitiesSet = new SpeciesListOceanEntitiesSet(speciesListId); + registerEntitiesSet(builder, parentType, propertyName, entitiesSet); + + } + protected <P extends TopiaEntity, C extends TopiaEntity> void registerEntitiesSet( ImmutableMap.Builder<String, EntitiesSet> builder, Class<P> parentType, diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetCatchServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetCatchServiceTopia.java index 0c47c53..2613c8b 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetCatchServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetCatchServiceTopia.java @@ -1,7 +1,9 @@ package fr.ird.observe.services.service.seine; +import com.google.common.collect.ImmutableMap; import com.google.common.collect.Iterables; import com.google.common.collect.Sets; +import fr.ird.observe.entities.referentiel.Ocean; import fr.ird.observe.entities.referentiel.Species; import fr.ird.observe.entities.seine.SetSeine; import fr.ird.observe.entities.seine.TargetCatch; @@ -9,6 +11,7 @@ import fr.ird.observe.entities.seine.TargetCatchs; import fr.ird.observe.entities.seine.TargetLenghts; import fr.ird.observe.entities.seine.TargetLength; import fr.ird.observe.entities.seine.TargetSample; +import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.FormDto; import fr.ird.observe.services.dto.ReferenceTypeName; @@ -19,6 +22,7 @@ import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.SetSeineTargetCatchDto; import fr.ird.observe.services.dto.seine.TargetCatchDto; +import fr.ird.observe.services.dto.seine.TripSeineDto; import org.nuiton.topia.persistence.TopiaEntities; import java.util.Set; @@ -38,14 +42,19 @@ public class TargetCatchServiceTopia extends ObserveServiceTopia implements Targ } @Override - public FormDto<SetSeineTargetCatchDto> loadToEdit(String setSeineId) { + public FormDto<SetSeineTargetCatchDto> loadToEdit(String setSeineId, String tripSeineId) { SetSeine setSeine = loadEntity(SetSeineTargetCatchDto.class, SetSeine.class, setSeineId); + TripSeine tripSeine = loadEntity(TripSeineDto.class, TripSeine.class, tripSeineId); + + Ocean ocean = tripSeine.getOcean(); + FormDto<SetSeineTargetCatchDto> form = entityToEditFormDto( SetSeineTargetCatchDto.class, SetSeine.class, setSeine, + ImmutableMap.<String, Object>of(Species.PROPERTY_OCEAN, ocean), new ReferenceTypeName(TargetCatchDto.class, SpeciesDto.class, TargetCatchDto.PROPERTY_SPECIES), new ReferenceTypeName(TargetCatchDto.class, ReasonForDiscardDto.class, TargetCatchDto.PROPERTY_REASON_FOR_DISCARD), new ReferenceTypeName(TargetCatchDto.class, WeightCategoryDto.class, TargetCatchDto.PROPERTY_WEIGHT_CATEGORY)); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.