This is an automated email from the git hooks/post-receive script. New commit to branch feature/refactor_reference in repository observe. See http://git.codelutin.com/observe.git commit 19a0f2e6e6a3103e2c8d2324080dcf628030edaf Author: Tony CHEMIT <chemit@codelutin.com> Date: Sun Nov 29 19:14:52 2015 +0100 Revue de code sur la date de mise à jour des objets : toute donnée modifiée doit retourner une date de mise à jour à réimpacter dans les ui (première passe, mais ce n'est pas fini, il faut bien vérifier que dans l'application swing ça va être cohérent) --- .../LonglineDetailCompositionUIHandler.java | 2 +- .../LonglineGlobalCompositionUIHandler.java | 3 +- .../impl/longline/SetLonglineUIHandler.java | 3 +- .../ActivitySeineObservedSystemUIHandler.java | 5 +- ...ngObjectTransmittingBuoyOperationUIHandler.java | 6 +- .../impl/seine/FloatingObjectUIHandler.java | 6 +- .../ui/content/impl/seine/SetSeineUIHandler.java | 5 +- .../impl/longline/ActivityLonglineUIHandler.java | 3 +- .../open/impl/longline/TripLonglineUIHandler.java | 5 +- .../open/impl/seine/ActivitySeineUIHandler.java | 5 +- .../ui/content/open/impl/seine/RouteUIHandler.java | 3 +- .../open/impl/seine/TripSeineUIHandler.java | 3 +- .../ui/content/ref/ContentReferenceUIHandler.java | 16 ++-- .../impl/longline/CatchLonglineUIHandler.java | 8 +- .../table/impl/longline/EncounterUIHandler.java | 6 +- .../longline/GearUseFeaturesLonglineUIHandler.java | 4 +- .../table/impl/longline/SensorUsedUIHandler.java | 6 +- .../content/table/impl/longline/TdrUIHandler.java | 4 +- .../impl/seine/GearUseFeaturesSeineUIHandler.java | 4 +- .../table/impl/seine/NonTargetCatchUIHandler.java | 6 +- .../table/impl/seine/NonTargetSampleUIHandler.java | 6 +- .../impl/seine/ObjectObservedSpeciesUIHandler.java | 6 +- .../impl/seine/ObjectSchoolEstimateUIHandler.java | 6 +- .../table/impl/seine/SchoolEstimateUIHandler.java | 5 +- .../table/impl/seine/TargetCatchUIHandler.java | 6 +- .../impl/seine/TargetDiscardCatchUIHandler.java | 6 +- .../table/impl/seine/TargetSampleUIHandler.java | 6 +- .../v1/ReferentialServiceController.java | 3 +- .../v1/longline/BranchlineServiceController.java | 9 +- .../v1/seine/FloatingObjectServiceController.java | 3 +- .../v1/seine/NonTargetSampleServiceController.java | 3 +- .../ObjectObservedSpeciesServiceController.java | 3 +- .../ObjectSchoolEstimateServiceController.java | 3 +- .../v1/seine/SchoolEstimateServiceController.java | 3 +- .../v1/seine/SetSeineServiceController.java | 3 +- ...TransmittingBuoyOperationServiceController.java | 3 +- .../observe/ObserveTopiaPersistenceContext.java | 15 ++++ .../services/service/ReferentialService.java | 3 +- .../service/longline/BranchlineService.java | 5 +- .../service/seine/FloatingObjectService.java | 3 +- .../service/seine/NonTargetSampleService.java | 3 +- .../seine/ObjectObservedSpeciesService.java | 3 +- .../service/seine/ObjectSchoolEstimateService.java | 3 +- .../service/seine/SchoolEstimateService.java | 3 +- .../services/service/seine/SetSeineService.java | 3 +- .../seine/TransmittingBuoyOperationService.java | 3 +- .../observe/services/dto/result/SaveResultDto.java | 15 ++++ .../ird/observe/services/ObserveServiceTopia.java | 99 +++++++++++++++------- .../services/service/ReferentialServiceTopia.java | 14 +-- .../ActivityLongLineEncouterServiceTopia.java | 10 ++- .../ActivityLongLineSensorUsedServiceTopia.java | 10 ++- .../longline/ActivityLonglineServiceTopia.java | 14 ++- .../service/longline/BranchlineServiceTopia.java | 34 +++++--- .../longline/SetLonglineCatchServiceTopia.java | 11 ++- .../SetLonglineDetailCompositionServiceTopia.java | 10 ++- .../SetLonglineGlobalCompositionServiceTopia.java | 10 ++- .../service/longline/SetLonglineServiceTopia.java | 12 ++- .../services/service/longline/TdrServiceTopia.java | 11 ++- .../longline/TripLonglineGearUseServiceTopia.java | 16 ++-- .../service/longline/TripLonglineServiceTopia.java | 12 +-- .../ActivitySeineObservedSystemServiceTopia.java | 11 ++- .../service/seine/ActivitySeineServiceTopia.java | 14 ++- .../service/seine/FloatingObjectServiceTopia.java | 16 ++-- .../service/seine/NonTargetCatchServiceTopia.java | 11 +-- .../service/seine/NonTargetSampleServiceTopia.java | 18 ++-- .../seine/ObjectObservedSpeciesServiceTopia.java | 15 ++-- .../seine/ObjectSchoolEstimateServiceTopia.java | 15 ++-- .../services/service/seine/RouteServiceTopia.java | 15 ++-- .../service/seine/SchoolEstimateServiceTopia.java | 16 ++-- .../service/seine/SetSeineServiceTopia.java | 17 ++-- .../service/seine/TargetCatchServiceTopia.java | 8 +- .../service/seine/TargetSampleServiceTopia.java | 18 ++-- .../TransmittingBuoyOperationServiceTopia.java | 14 +-- .../seine/TripSeineGearUseServiceTopia.java | 16 ++-- .../service/seine/TripSeineServiceTopia.java | 12 +-- 75 files changed, 448 insertions(+), 267 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIHandler.java index 608d4fe..3089436 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIHandler.java @@ -516,7 +516,7 @@ public class LonglineDetailCompositionUIHandler extends ContentUIHandler<SetLong } SaveResultDto saveResult = getSetLonglineDetailCompositionService().save(bean); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIHandler.java index 54620da..f0d857a 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIHandler.java @@ -218,8 +218,7 @@ public class LonglineGlobalCompositionUIHandler extends ContentUIHandler<SetLong bean.setBaitsComposition(getUi().getBaitsCompositionModel().getBean().getBaitsComposition()); SaveResultDto saveResult = getSetLonglineGlobalCompositionService().save(bean); - bean.setId(saveResult.getId()); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); return true; } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java index ef90f9c..40f213c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java @@ -337,8 +337,7 @@ public class SetLonglineUIHandler extends ContentUIHandler<SetLonglineDto> { String activityId = getSelectedParentId(); SaveResultDto saveResult = getSetLonglineService().save(activityId, bean); - bean.setId(saveResult.getId()); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); return true; diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIHandler.java index 1153c7d..dd90b56 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIHandler.java @@ -107,10 +107,9 @@ public class ActivitySeineObservedSystemUIHandler extends ContentUIHandler<Activ @Override protected boolean doSave(ActivitySeineObservedSystemDto bean) throws Exception { - // on sauvegarde l'activity (mais pas la set) + // on sauvegarde l'activity (mais pas la calée) SaveResultDto saveResult = getActivitySeineObservedSystemService().save(bean); - bean.setId(saveResult.getId()); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); return true; } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIHandler.java index 9bac199..a7bf8bf 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIHandler.java @@ -24,13 +24,14 @@ package fr.ird.observe.ui.content.impl.seine; import com.google.common.collect.Lists; import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.db.ObserveSwingDataSource; +import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.constants.seine.Ownership; import fr.ird.observe.services.dto.constants.seine.TypeTransmittingBuoyOperation; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.seine.TransmittingBuoyOperationDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.ActivitySeineDto; import fr.ird.observe.services.dto.seine.FloatingObjectTransmittingBuoyDto; import fr.ird.observe.services.dto.seine.FloatingObjectTransmittingBuoyDtos; @@ -212,7 +213,8 @@ public class FloatingObjectTransmittingBuoyOperationUIHandler extends ContentUIH @Override protected boolean doSave(FloatingObjectTransmittingBuoyDto bean) throws Exception { - getTransmittingBuoyOperationService().save(bean); + SaveResultDto saveResult = getTransmittingBuoyOperationService().save(bean); + saveResult.toDto(bean); //FIXME, il faut declancher un evenement dans le cache du storage pour pouvoir redessiner le noeud return true; } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIHandler.java index 29f70a6..e0a2f4e 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIHandler.java @@ -27,6 +27,7 @@ import fr.ird.observe.db.ObserveSwingDataSource; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.ActivitySeineDto; import fr.ird.observe.services.dto.seine.FloatingObjectDto; import fr.ird.observe.services.dto.seine.FloatingObjectDtos; @@ -164,10 +165,11 @@ public class FloatingObjectUIHandler extends ContentUIHandler<FloatingObjectDto> String activityId = getSelectedParentId(); - String floatingObjectId = getFloatingObjectService().save(activityId, bean); - bean.setId(floatingObjectId); + SaveResultDto saveResult = getFloatingObjectService().save(activityId, bean); + saveResult.toDto(bean); return true; + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIHandler.java index 7252aec..837453b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIHandler.java @@ -29,6 +29,7 @@ import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.constants.seine.SchoolType; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.ActivitySeineDto; import fr.ird.observe.services.dto.seine.RouteDto; import fr.ird.observe.services.dto.seine.SetSeineDto; @@ -246,8 +247,8 @@ public class SetSeineUIHandler extends ContentUIHandler<SetSeineDto> { String activityId = getSelectedParentId(); - String beanId = getSetSeineService().save(activityId, bean); - bean.setId(beanId); + SaveResultDto saveResult = getSetSeineService().save(activityId, bean); + saveResult.toDto(bean); return true; } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java index 8b7a80c..34ae2f0 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java @@ -243,8 +243,7 @@ public class ActivityLonglineUIHandler extends ContentOpenableUIHandler<Activity String tripId = getSelectedParentId(); TripChildSaveResultDto saveResult = getActivityLonglineService().save(tripId, getModel().getBean()); - bean.setId(saveResult.getId()); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); setUpdateMareeNodeTag(saveResult.isTripEndDateUpdated()); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java index 169cbf4..e5a845b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java @@ -267,8 +267,6 @@ public class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLongline @Override protected boolean doSave(TripLonglineDto bean) throws Exception { - String programId = getDataContext().getSelectedProgramId(); - // on force toujours la date a etre sans heure, minute,... Date startDate = DateUtil.getDay(bean.getStartDate()); if (log.isDebugEnabled()) { @@ -282,8 +280,7 @@ public class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLongline } SaveResultDto saveResult = getTripLonglineService().save(bean); - bean.setId(saveResult.getId()); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); // recuperation de la position de la maree dans le program obtainChildPosition(bean); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIHandler.java index 684dfcd..5f003f1 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIHandler.java @@ -278,9 +278,8 @@ public class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySei bean.setOpen(true); - SaveResultDto result = getActivitySeineService().save(routeId, getModel().getBean()); - bean.setId(result.getId()); - bean.setLastUpdate(result.getLastUpdate()); + SaveResultDto saveResult = getActivitySeineService().save(routeId, getModel().getBean()); + saveResult.toDto(bean); obtainChildPosition(bean); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIHandler.java index 032a298..3b314d6 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIHandler.java @@ -205,8 +205,7 @@ public class RouteUIHandler extends ContentOpenableUIHandler<RouteDto> { bean.setOpen(true); TripChildSaveResultDto saveResult = getRouteService().save(tripId, bean); - bean.setId(saveResult.getId()); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); setUpdateMareeNodeTag(saveResult.isTripEndDateUpdated()); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java index 7098d7f..63f6280 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIHandler.java @@ -278,8 +278,7 @@ public class TripSeineUIHandler extends ContentOpenableUIHandler<TripSeineDto> { } SaveResultDto saveResult = getTripSeineService().save(bean); - bean.setId(saveResult.getId()); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); // recuperation de la position de la maree dans le program obtainChildPosition(bean); diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java index a33b29e..dba5d4b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java @@ -34,6 +34,7 @@ import fr.ird.observe.services.dto.referential.ProgramDto; import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.VesselSizeCategoryDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.service.DataNotFoundException; import fr.ird.observe.services.service.ReferentialService; import fr.ird.observe.ui.DecoratorService; @@ -677,15 +678,17 @@ public class ContentReferenceUIHandler<E extends ReferentialDto> extends Content log.info("Create referentiel " + bean); } - String beanId = getReferentialService().save(bean); - bean.setId(beanId); + SaveResultDto saveResult = getReferentialService().save(bean); + bean.setId(saveResult.getId()); + bean.setLastUpdate(saveResult.getLastUpdate()); if (bean instanceof ProgramDto) { // add the program in tree ObserveTreeHelper treeHelper = getTreeHelper(getUi()); - //FIXME ReferentialReference -// treeHelper.addProgram(ProgramDtos.newReferenceDto((ProgramDto) bean)); + ReferentialReference<ProgramDto> reference = ObserveSwingApplicationContext.get().getReferenceBinderEngine().transformReferentialDtoToReference(getDecoratorService().getReferentialLocale(), (ProgramDto) bean); + treeHelper.addProgram(reference); + } return true; @@ -731,8 +734,9 @@ public class ContentReferenceUIHandler<E extends ReferentialDto> extends Content // sauvegarde du bean d'edition dans le bean de la base - String beanId = getReferentialService().save(bean); - bean.setId(beanId); + SaveResultDto saveResult = getReferentialService().save(bean); + bean.setId(saveResult.getId()); + bean.setLastUpdate(saveResult.getLastUpdate()); if (bean instanceof ProgramDto) { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java index f02817d..ab0c5e6 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java @@ -240,7 +240,9 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLonglineCat BranchlineDto branchline = ui.getBranchlineBean(); - getBranchLineService().save(branchline); + String openSetLonglineId = getDataContext().getOpenSetLonglineId(); + SaveResultDto saveResult = getBranchLineService().save(openSetLonglineId, branchline); + saveResult.toDto(branchline); getUi().getBranchlineValidator().setChanged(false); @@ -729,7 +731,9 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLonglineCat log.info("Use branchline: " + newValue); } - Form<BranchlineDto> form = getBranchLineService().loadForm(newValue.getId()); + String setLonglineId = getDataContext().getSelectedSetLonglineId(); + + Form<BranchlineDto> form = getBranchLineService().loadForm(setLonglineId, newValue.getId()); BranchlineDtos.copyBranchlineDto(form.getObject(), branchline); if (ui.getValidator().getBean() == null) { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java index cb04e43..a6269e1 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java @@ -99,8 +99,10 @@ public class EncounterUIHandler extends ContentTableUIHandler<ActivityLonglineEn @Override protected void doPersist(ActivityLonglineEncouterDto bean) { - SaveResultDto saveResultDtoave = getActivityLongLineEncouterService().save(bean); - bean.setLastUpdate(saveResultDtoave.getLastUpdate()); + + SaveResultDto saveResult = getActivityLongLineEncouterService().save(bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java index 18dcfc5..51d55bf 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java @@ -483,8 +483,10 @@ public class GearUseFeaturesLonglineUIHandler extends ContentTableUIHandler<Trip @Override protected void doPersist(TripLonglineGearUseDto bean) { + SaveResultDto saveResult = getTripLonglineGearUseService().save(bean); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java index e52cab6..84c860c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java @@ -35,6 +35,7 @@ import fr.ird.observe.services.dto.longline.SensorUsedDto; import fr.ird.observe.services.dto.referential.longline.SensorBrandDto; import fr.ird.observe.services.dto.referential.longline.SensorDataFormatDto; import fr.ird.observe.services.dto.referential.longline.SensorTypeDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.service.longline.ActivityLongLineSensorUsedService; import fr.ird.observe.ui.ObserveMainUI; import fr.ird.observe.ui.UIHelper; @@ -229,7 +230,10 @@ public class SensorUsedUIHandler extends ContentTableUIHandler<ActivityLonglineS @Override protected void doPersist(ActivityLonglineSensorUsedDto bean) { - getActivityLonglineSensorUsedService().save(bean); + + SaveResultDto saveResult= getActivityLonglineSensorUsedService().save(bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java index 55c5aad..2a83b3d 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java @@ -462,8 +462,10 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLonglineTdrDto, TdrDt @Override protected void doPersist(SetLonglineTdrDto bean) { + SaveResultDto saveResult = getTdrService().save(bean); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIHandler.java index c6b62a5..1c00447 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIHandler.java @@ -480,8 +480,10 @@ public class GearUseFeaturesSeineUIHandler extends ContentTableUIHandler<TripSei @Override protected void doPersist(TripSeineGearUseDto bean) { + SaveResultDto saveResult = getTripSeineGearUseService().save(bean); - bean.setLastUpdate(saveResult.getLastUpdate()); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIHandler.java index a3f93d7..d1ed6c2 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIHandler.java @@ -32,6 +32,7 @@ import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.SpeciesDto; import fr.ird.observe.services.dto.referential.seine.ReasonForDiscardDto; import fr.ird.observe.services.dto.referential.seine.SpeciesFateDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.NonTargetCatchDto; import fr.ird.observe.services.dto.seine.NonTargetCatchDtos; import fr.ird.observe.services.dto.seine.SetSeineNonTargetCatchDto; @@ -360,7 +361,10 @@ public class NonTargetCatchUIHandler extends ContentTableUIHandler<SetSeineNonTa @Override protected void doPersist(SetSeineNonTargetCatchDto bean) { - getNonTargetCatchService().save(bean); + + SaveResultDto saveResult = getNonTargetCatchService().save(bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIHandler.java index ceeb826..c3db701 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIHandler.java @@ -29,6 +29,7 @@ import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.SexDto; import fr.ird.observe.services.dto.referential.SpeciesDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.NonTargetLengthDto; import fr.ird.observe.services.dto.seine.NonTargetSampleDto; import fr.ird.observe.services.dto.seine.NonTargetSampleDtos; @@ -295,7 +296,10 @@ public class NonTargetSampleUIHandler extends ContentTableUIHandler<NonTargetSam @Override protected void doPersist(NonTargetSampleDto bean) { - getNonTargetSampleService().save(getSelectedParentId(), bean); + + SaveResultDto saveResult = getNonTargetSampleService().save(getSelectedParentId(), bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIHandler.java index 9a22a1b..bf044ed 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIHandler.java @@ -26,6 +26,7 @@ import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.referential.SpeciesDto; import fr.ird.observe.services.dto.referential.seine.SpeciesStatusDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectObservedSpeciesDto; import fr.ird.observe.services.dto.seine.FloatingObjectObservedSpeciesDtos; import fr.ird.observe.services.dto.seine.ObjectObservedSpeciesDto; @@ -93,7 +94,10 @@ public class ObjectObservedSpeciesUIHandler extends ContentTableUIHandler<Floati @Override protected void doPersist(FloatingObjectObservedSpeciesDto bean) { - getObjectObservedSpeciesService().save(bean); + + SaveResultDto saveResult = getObjectObservedSpeciesService().save(bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java index 346be86..b59ce24 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIHandler.java @@ -25,6 +25,7 @@ import fr.ird.observe.ObserveSwingApplicationContext; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.referential.SpeciesDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto; import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDtos; import fr.ird.observe.services.dto.seine.ObjectSchoolEstimateDto; @@ -89,7 +90,10 @@ public class ObjectSchoolEstimateUIHandler extends ContentTableUIHandler<Floatin @Override protected void doPersist(FloatingObjectSchoolEstimateDto bean) { - getObjectSchoolEstimateService().save(bean); + + SaveResultDto saveResult = getObjectSchoolEstimateService().save(bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIHandler.java index 9facd2d..11d6629 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIHandler.java @@ -30,6 +30,7 @@ import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.SpeciesDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.SchoolEstimateDto; import fr.ird.observe.services.dto.seine.SetSeineSchoolEstimateDto; import fr.ird.observe.services.dto.seine.SetSeineSchoolEstimateDtos; @@ -127,7 +128,9 @@ public class SchoolEstimateUIHandler extends ContentTableUIHandler<SetSeineSchoo @Override protected void doPersist(SetSeineSchoolEstimateDto bean) { - getSchoolEstimateService().save(bean); + + SaveResultDto saveResult = getSchoolEstimateService().save(bean); + saveResult.toDto(bean); } @Override 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 9c8c68c..f2d8303 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 @@ -277,8 +277,10 @@ public class TargetCatchUIHandler extends ContentTableUIHandler<SetSeineTargetCa @Override protected void doPersist(SetSeineTargetCatchDto bean) { - SaveResultDto save = getTargetCatchService().save(bean); - bean.setLastUpdate(save.getLastUpdate()); + + SaveResultDto saveResult = getTargetCatchService().save(bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIHandler.java index afde7c5..3c7480b 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIHandler.java @@ -483,8 +483,10 @@ public class TargetDiscardCatchUIHandler extends ContentTableUIHandler<SetSeineT @Override protected void doPersist(SetSeineTargetCatchDto bean) { - SaveResultDto save = getTargetCatchService().save(bean); - bean.setLastUpdate(save.getLastUpdate()); + + SaveResultDto saveResult = getTargetCatchService().save(bean); + saveResult.toDto(bean); + } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIHandler.java index 7e871c6..1e70b0e 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIHandler.java @@ -312,8 +312,10 @@ public class TargetSampleUIHandler extends ContentTableUIHandler<TargetSampleDto @Override protected void doPersist(TargetSampleDto bean) { - SaveResultDto saveResultDto = getTargetSampleService().save(getSelectedParentId(), bean); - bean.setLastUpdate(saveResultDto.getLastUpdate()); + + SaveResultDto saveResult = getTargetSampleService().save(getSelectedParentId(), bean); + saveResult.toDto(bean); + } @Override diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java index 8044135..6e44588 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java @@ -29,6 +29,7 @@ import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.ReferentialReferenceSet; import fr.ird.observe.services.dto.referential.SpeciesDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.service.DataNotFoundException; import fr.ird.observe.services.service.ReferenceSetsRequest; import fr.ird.observe.services.service.ReferentialService; @@ -78,7 +79,7 @@ public class ReferentialServiceController extends ObserveAuthenticatedServiceCon } @Override - public <R extends ReferentialDto> String save(R bean) { + public <R extends ReferentialDto> SaveResultDto save(R bean) { return service.save(bean); } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/BranchlineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/BranchlineServiceController.java index ad6e4e5..db7726d 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/BranchlineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/longline/BranchlineServiceController.java @@ -3,6 +3,7 @@ package fr.ird.observe.application.web.controller.v1.longline; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.longline.BranchlineDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.service.longline.BranchlineService; /** @@ -15,12 +16,12 @@ public class BranchlineServiceController extends ObserveAuthenticatedServiceCont } @Override - public Form<BranchlineDto> loadForm(String branchlineId) { - return service.loadForm(branchlineId); + public Form<BranchlineDto> loadForm(String setLonglineId, String id) { + return service.loadForm(setLonglineId, id); } @Override - public String save(BranchlineDto dto) { - return service.save(dto); + public SaveResultDto save(String setLonglineId, BranchlineDto dto) { + return service.save(setLonglineId, dto); } } \ No newline at end of file diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java index 7014276..7efe03c 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/FloatingObjectServiceController.java @@ -26,6 +26,7 @@ import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceC import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.DataReferenceSet; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectDto; import fr.ird.observe.services.service.seine.FloatingObjectService; @@ -69,7 +70,7 @@ public class FloatingObjectServiceController extends ObserveAuthenticatedService } @Override - public String save(String activitySeineId, FloatingObjectDto dto) { + public SaveResultDto save(String activitySeineId, FloatingObjectDto dto) { return service.save(activitySeineId, dto); } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/NonTargetSampleServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/NonTargetSampleServiceController.java index 3448203..3eb55e5 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/NonTargetSampleServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/NonTargetSampleServiceController.java @@ -24,6 +24,7 @@ package fr.ird.observe.application.web.controller.v1.seine; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.NonTargetSampleDto; import fr.ird.observe.services.service.seine.NonTargetSampleService; @@ -47,7 +48,7 @@ public class NonTargetSampleServiceController extends ObserveAuthenticatedServic } @Override - public String save(String setSeineId, NonTargetSampleDto dto) { + public SaveResultDto save(String setSeineId, NonTargetSampleDto dto) { return service.save(setSeineId, dto); } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectObservedSpeciesServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectObservedSpeciesServiceController.java index a1a112d..83362ff 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectObservedSpeciesServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectObservedSpeciesServiceController.java @@ -24,6 +24,7 @@ package fr.ird.observe.application.web.controller.v1.seine; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectObservedSpeciesDto; import fr.ird.observe.services.service.seine.ObjectObservedSpeciesService; @@ -42,7 +43,7 @@ public class ObjectObservedSpeciesServiceController extends ObserveAuthenticated } @Override - public String save(FloatingObjectObservedSpeciesDto dto) { + public SaveResultDto save(FloatingObjectObservedSpeciesDto dto) { return service.save(dto); } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java index 0754a74..1fe707a 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ObjectSchoolEstimateServiceController.java @@ -24,6 +24,7 @@ package fr.ird.observe.application.web.controller.v1.seine; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto; import fr.ird.observe.services.service.seine.ObjectSchoolEstimateService; @@ -42,7 +43,7 @@ public class ObjectSchoolEstimateServiceController extends ObserveAuthenticatedS } @Override - public String save(FloatingObjectSchoolEstimateDto dto) { + public SaveResultDto save(FloatingObjectSchoolEstimateDto dto) { return service.save(dto); } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SchoolEstimateServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SchoolEstimateServiceController.java index bec5d5c..98bf121 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SchoolEstimateServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SchoolEstimateServiceController.java @@ -24,6 +24,7 @@ package fr.ird.observe.application.web.controller.v1.seine; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.SetSeineSchoolEstimateDto; import fr.ird.observe.services.service.seine.SchoolEstimateService; @@ -42,7 +43,7 @@ public class SchoolEstimateServiceController extends ObserveAuthenticatedService } @Override - public String save(SetSeineSchoolEstimateDto dto) { + public SaveResultDto save(SetSeineSchoolEstimateDto dto) { return service.save(dto); } } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java index 22b6633..79c45bc 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/SetSeineServiceController.java @@ -25,6 +25,7 @@ package fr.ird.observe.application.web.controller.v1.seine; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.SetSeineDto; import fr.ird.observe.services.service.seine.SetSeineService; @@ -63,7 +64,7 @@ public class SetSeineServiceController extends ObserveAuthenticatedServiceContro } @Override - public String save(String activitySeineId, SetSeineDto dto) { + public SaveResultDto save(String activitySeineId, SetSeineDto dto) { return service.save(activitySeineId, dto); } diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TransmittingBuoyOperationServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TransmittingBuoyOperationServiceController.java index c9a861f..583cfd5 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TransmittingBuoyOperationServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/TransmittingBuoyOperationServiceController.java @@ -24,6 +24,7 @@ package fr.ird.observe.application.web.controller.v1.seine; import fr.ird.observe.application.web.controller.v1.ObserveAuthenticatedServiceControllerSupport; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectTransmittingBuoyDto; import fr.ird.observe.services.service.seine.TransmittingBuoyOperationService; @@ -42,7 +43,7 @@ public class TransmittingBuoyOperationServiceController extends ObserveAuthentic } @Override - public String save(FloatingObjectTransmittingBuoyDto dto) { + public SaveResultDto save(FloatingObjectTransmittingBuoyDto dto) { return service.save(dto); } } diff --git a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java index 5b87f16..f3d777c 100644 --- a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java +++ b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java @@ -22,6 +22,9 @@ package fr.ird.observe; * #L% */ +import com.google.common.base.Preconditions; +import org.nuiton.topia.persistence.TopiaDao; +import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.internal.AbstractTopiaPersistenceContextConstructorParameter; public class ObserveTopiaPersistenceContext extends AbstractObserveTopiaPersistenceContext { @@ -34,4 +37,16 @@ public class ObserveTopiaPersistenceContext extends AbstractObserveTopiaPersiste getHibernateSupport().getHibernateSession().flush(); } + public <E extends TopiaEntity> Class<E> getType(E entity) { + + ObserveEntityEnum entityEnum = ObserveEntityEnum.valueOf(entity); + Preconditions.checkNotNull(entityEnum, "Entity " + entity + " is not managed by ToPIA"); + return (Class<E>) entityEnum.getContract(); + + } + + public <E extends TopiaEntity> TopiaDao<E> getDao(E entity) { + return getDao(getType(entity)); + } + } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java index d5c4bf6..fed9025 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java @@ -30,6 +30,7 @@ import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.ReferentialReferenceSet; import fr.ird.observe.services.dto.referential.SpeciesDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.spi.DeleteRequest; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; @@ -69,7 +70,7 @@ public interface ReferentialService extends ObserveService { @WriteReferentialPermission @Write @PostRequest - <R extends ReferentialDto> String save(R bean); + <R extends ReferentialDto> SaveResultDto save(R bean); @WriteReferentialPermission @Write diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/BranchlineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/BranchlineService.java index f6583d7..0f8924f 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/BranchlineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/longline/BranchlineService.java @@ -3,6 +3,7 @@ package fr.ird.observe.services.service.longline; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.longline.BranchlineDto; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; import fr.ird.observe.services.spi.Write; @@ -14,11 +15,11 @@ import fr.ird.observe.services.spi.WriteDataPermission; public interface BranchlineService extends ObserveService { @ReadDataPermission - Form<BranchlineDto> loadForm(String branchlineId); + Form<BranchlineDto> loadForm(String setLonglineId, String id); @Write @WriteDataPermission @PostRequest - String save(BranchlineDto dto); + SaveResultDto save(String setLonglineId, BranchlineDto dto); } \ No newline at end of file diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java index cdb6479..7d54f3e 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectService.java @@ -26,6 +26,7 @@ import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.DataReferenceSet; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectDto; import fr.ird.observe.services.spi.DeleteRequest; import fr.ird.observe.services.spi.PostRequest; @@ -59,7 +60,7 @@ public interface FloatingObjectService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(String activitySeineId, FloatingObjectDto dto); + SaveResultDto save(String activitySeineId, FloatingObjectDto dto); @Write @WriteDataPermission diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleService.java index 754d06f..f16ee01 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleService.java @@ -24,6 +24,7 @@ package fr.ird.observe.services.service.seine; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.NonTargetSampleDto; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; @@ -44,6 +45,6 @@ public interface NonTargetSampleService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(String setSeineId, NonTargetSampleDto dto); + SaveResultDto save(String setSeineId, NonTargetSampleDto dto); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesService.java index 3196fb6..9a6a7b1 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesService.java @@ -24,6 +24,7 @@ package fr.ird.observe.services.service.seine; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectObservedSpeciesDto; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; @@ -41,6 +42,6 @@ public interface ObjectObservedSpeciesService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(FloatingObjectObservedSpeciesDto dto); + SaveResultDto save(FloatingObjectObservedSpeciesDto dto); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java index b887381..7783e1d 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateService.java @@ -24,6 +24,7 @@ package fr.ird.observe.services.service.seine; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; @@ -41,5 +42,5 @@ public interface ObjectSchoolEstimateService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(FloatingObjectSchoolEstimateDto dto); + SaveResultDto save(FloatingObjectSchoolEstimateDto dto); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateService.java index 41e5c50..135334d 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateService.java @@ -24,6 +24,7 @@ package fr.ird.observe.services.service.seine; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.SetSeineSchoolEstimateDto; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; @@ -41,6 +42,6 @@ public interface SchoolEstimateService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(SetSeineSchoolEstimateDto dto); + SaveResultDto save(SetSeineSchoolEstimateDto dto); } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java index d8439aa..db1f331 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/SetSeineService.java @@ -25,6 +25,7 @@ package fr.ird.observe.services.service.seine; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.SetSeineDto; import fr.ird.observe.services.spi.DeleteRequest; import fr.ird.observe.services.spi.PostRequest; @@ -55,7 +56,7 @@ public interface SetSeineService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(String activitySeineId, SetSeineDto dto); + SaveResultDto save(String activitySeineId, SetSeineDto dto); @Write @WriteDataPermission diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationService.java index a394c82..180dadb 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationService.java @@ -24,6 +24,7 @@ package fr.ird.observe.services.service.seine; import fr.ird.observe.services.ObserveService; import fr.ird.observe.services.dto.Form; +import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.FloatingObjectTransmittingBuoyDto; import fr.ird.observe.services.spi.PostRequest; import fr.ird.observe.services.spi.ReadDataPermission; @@ -41,6 +42,6 @@ public interface TransmittingBuoyOperationService extends ObserveService { @Write @WriteDataPermission @PostRequest - String save(FloatingObjectTransmittingBuoyDto dto); + SaveResultDto save(FloatingObjectTransmittingBuoyDto dto); } diff --git a/observe-services-model/src/main/java/fr/ird/observe/services/dto/result/SaveResultDto.java b/observe-services-model/src/main/java/fr/ird/observe/services/dto/result/SaveResultDto.java new file mode 100644 index 0000000..bd7d551 --- /dev/null +++ b/observe-services-model/src/main/java/fr/ird/observe/services/dto/result/SaveResultDto.java @@ -0,0 +1,15 @@ +package fr.ird.observe.services.dto.result; + +import fr.ird.observe.services.dto.FollowedUpdateDto; +import fr.ird.observe.services.dto.IdDto; + +public class SaveResultDto extends AbstractSaveResultDto { + + private static final long serialVersionUID = 1L; + + public <D extends IdDto & FollowedUpdateDto> void toDto(D dto) { + dto.setId(getId()); + dto.setLastUpdate(getLastUpdate()); + + } +} diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java index 0ede089..df37fb8 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java @@ -127,7 +127,7 @@ public abstract class ObserveServiceTopia implements ObserveService { } public <E extends TopiaEntity> E newEntity(Class<E> entityType) { - ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + ObserveTopiaPersistenceContext persistenceContext = getTopiaPersistenceContext(); TopiaDao<E> dao = persistenceContext.getDao(entityType); E entity = dao.newInstance(); return entity; @@ -138,38 +138,38 @@ public abstract class ObserveServiceTopia implements ObserveService { } protected <E extends TopiaEntity> List<E> loadEntities(Class<E> entityType) { - ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + ObserveTopiaPersistenceContext persistenceContext = getTopiaPersistenceContext(); TopiaDao<E> dao = persistenceContext.getDao(entityType); List<E> entities = dao.findAll(); return entities; } - //FIXME A voir si ça sert à quelque chose ? - protected <E extends TopiaEntity> E saveEntity(Class<E> entityType, E entity) { - Preconditions.checkArgument(!(entity instanceof FollowedUpdateEntity)); + protected <E extends TopiaEntity & FollowedUpdateEntity> Date saveFollowedEntity(E entity) { - ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); - TopiaDao<E> dao = persistenceContext.getDao(entityType); - entity = dao.update(entity); - return entity; + Date lastUpdateDate = setLastUpdate(entity); - } + // on met à jour l'entité (cela permet de récupérer son topiaId si l'objet est créé) + TopiaDao<E> dao = getTopiaPersistenceContext().getDao(entity); + dao.update(entity); - protected <E extends TopiaEntity & FollowedUpdateEntity> E saveFollowedEntity(Class<E> entityType, E entity) { + return lastUpdateDate; - entity.setLastUpdate(now()); + } - // on met à jour l'entité (cela permet de récupérer son topiaId si l'objet est créée) - TopiaDao<E> dao = getTopiaPersistenceContext().getDao(entityType); - entity = dao.update(entity); + protected <P extends TopiaEntity & FollowedUpdateEntity, E extends TopiaEntity> Date saveFollowedEntity(P parentEntity, E entity) { - setLastUpdate(entityType, entity.getLastUpdate()); + // on met à jour l'entité (cela permet de récupérer son topiaId si l'objet est créé) + TopiaDao<E> dao = getTopiaPersistenceContext().getDao(entity); + dao.update(entity); - return entity; + Date lastUpdateDate = setLastUpdate(parentEntity); + return lastUpdateDate; } - protected <E extends FollowedUpdateEntity> void setLastUpdate(Class<E> entityType, Date lastUpdate) { + protected <E extends FollowedUpdateEntity> Date setLastUpdate(Class<E> entityType) { + + Date lastUpdate = now(); ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); @@ -186,10 +186,42 @@ public abstract class ObserveServiceTopia implements ObserveService { } lastUpdateType.setLastUpdate(lastUpdate); + dao.update(lastUpdateType); + + return lastUpdate; + + } + + protected <E extends TopiaEntity & FollowedUpdateEntity> Date setLastUpdate(E entity) { + + Date lastUpdate = now(); + entity.setLastUpdate(lastUpdate); + + ObserveTopiaPersistenceContext persistenceContext = getTopiaPersistenceContext(); + + Class<E> entityType = persistenceContext.getType(entity); + + LastUpdateTypeTopiaDao dao = persistenceContext.getLastUpdateTypeDao(); + + LastUpdateType lastUpdateType = dao.forTypeEquals(entityType.getCanonicalName()).findUniqueOrNull(); + + if (lastUpdateType == null) { + + lastUpdateType = dao.newInstance(); + + lastUpdateType.setType(entityType.getCanonicalName()); + + } + + lastUpdateType.setLastUpdate(lastUpdate); dao.update(lastUpdateType); + + return lastUpdate; + } + protected <E extends TopiaEntity> Optional<Date> getLastUpdate(Class<E> entityType) { Optional<Date> result = Optional.absent(); @@ -222,7 +254,7 @@ public abstract class ObserveServiceTopia implements ObserveService { dao.delete(entity); if (FollowedUpdateEntity.class.isAssignableFrom(entityType)) { Class<? extends FollowedUpdateEntity> followedUpdateType = (Class<? extends FollowedUpdateEntity>) entityType; - setLastUpdate(followedUpdateType, now()); + setLastUpdate(followedUpdateType); } } } @@ -251,29 +283,24 @@ public abstract class ObserveServiceTopia implements ObserveService { } - protected <E extends TopiaEntity, D extends DataDto> E dataDtoToEntity(Class<D> dtoType, Class<E> entityType, D dto) { - - E entity = loadOrCreateEntity(dtoType, entityType, dto); + protected <E extends TopiaEntity, D extends DataDto> void copyDataDtoToEntity(D dto, E entity) { BINDER_ENGINE.copyDataDtoToEntity(serviceContext.getReferentialLocale(), dto, entity); - return entity; - } - protected <E extends TopiaEntity, D extends DataDto> void dataDtoToEntity(D dto, E entity) { + protected <E extends ReferenceEntity, D extends ReferentialDto> void copyReferentialDtoToEntity(D dto, E entity) { - BINDER_ENGINE.copyDataDtoToEntity(serviceContext.getReferentialLocale(), dto, entity); + BINDER_ENGINE.copyReferentialDtoToEntity(serviceContext.getReferentialLocale(), dto, entity); } - protected <E extends ReferenceEntity, D extends ReferentialDto> void referentialDtoToEntity(D dto, E entity) { + protected <E extends TopiaEntity, D extends DataDto> E loadOrCreateEntityFromDataDto(D dto) { - BINDER_ENGINE.copyReferentialDtoToEntity(serviceContext.getReferentialLocale(), dto, entity); + Class<D> dtoType = (Class<D>) dto.getClass(); - } + Class<E> entityType = getDataEntityType(dtoType); - protected <E extends TopiaEntity, D extends IdDto> E loadOrCreateEntity(Class<D> dtoType, Class<E> entityType, D dto) { E entity; if (dto.isPersisted()) { entity = loadEntity(dtoType, dto.getId()); @@ -283,13 +310,23 @@ public abstract class ObserveServiceTopia implements ObserveService { return entity; } - protected <E extends TopiaEntity & FollowedUpdateEntity, D extends DataDto> E loadOrCreateEntityAndCheckLastUpdate(Class<D> dtoType, Class<E> entityType, D dto) { + protected <E extends ReferenceEntity, D extends ReferentialDto> E loadOrCreateEntityFromReferentialDto(D dto) { + + Class<D> dtoType = (Class<D>) dto.getClass(); + + Class<E> entityType = getReferentialEntityType(dtoType); + E entity; if (dto.isPersisted()) { entity = loadEntity(dtoType, dto.getId()); } else { entity = newEntity(entityType); } + return entity; + } + + protected <E extends TopiaEntity & FollowedUpdateEntity, D extends DataDto> E loadOrCreateEntityAndCheckLastUpdate(D dto) { + E entity = loadOrCreateEntityFromDataDto(dto); checkLastUpdateDate(entity, dto); return entity; } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java index 81865f2..0af61c7 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java @@ -44,6 +44,8 @@ import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.ReferentialReferenceSet; import fr.ird.observe.services.dto.referential.SpeciesDto; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import org.nuiton.topia.persistence.TopiaDao; import org.nuiton.topia.persistence.TopiaEntity; @@ -158,18 +160,18 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe return form; } - public <D extends ReferentialDto> String save(D dto) { + public <D extends ReferentialDto> SaveResultDto save(D dto) { Class<D> dtoType = (Class<D>) dto.getClass(); Class<ReferenceEntity> entityType = getReferentialEntityType(dtoType); - ReferenceEntity entity = loadOrCreateEntity(dtoType, entityType, dto); + ReferenceEntity entity = loadOrCreateEntityFromReferentialDto(dto); - referentialDtoToEntity(dto, entity); + copyReferentialDtoToEntity(dto, entity); - saveFollowedEntity(entityType, entity); + Date lastUpdateDate = saveFollowedEntity(entity); + + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); - //FIXME Il faut aussi renvoyer la nouvelle date de dernière mist à jour - return entity.getTopiaId(); } @Override diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineEncouterServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineEncouterServiceTopia.java index d2eb6d5..39cf17f 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineEncouterServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineEncouterServiceTopia.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -52,13 +54,13 @@ public class ActivityLongLineEncouterServiceTopia extends ObserveServiceTopia im @Override public SaveResultDto save(ActivityLonglineEncouterDto dto) { - ActivityLongline entity = loadOrCreateEntityAndCheckLastUpdate(ActivityLonglineEncouterDto.class, ActivityLongline.class, dto); + ActivityLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(ActivityLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineSensorUsedServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineSensorUsedServiceTopia.java index f52745e..649a9df 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineSensorUsedServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLongLineSensorUsedServiceTopia.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -51,13 +53,13 @@ public class ActivityLongLineSensorUsedServiceTopia extends ObserveServiceTopia @Override public SaveResultDto save(ActivityLonglineSensorUsedDto dto) { - ActivityLongline entity = loadOrCreateEntityAndCheckLastUpdate(ActivityLonglineSensorUsedDto.class, ActivityLongline.class, dto); + ActivityLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(ActivityLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java index 6360edd..460e63e 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/ActivityLonglineServiceTopia.java @@ -163,21 +163,19 @@ public class ActivityLonglineServiceTopia extends ObserveServiceTopia implements TripLongline tripLongline = loadEntity(TripLonglineDto.class, tripLonglineId); - ActivityLongline entity = loadOrCreateEntityAndCheckLastUpdate(ActivityLonglineDto.class, ActivityLongline.class, dto); + ActivityLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(ActivityLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); result.setId(entity.getTopiaId()); - result.setLastUpdate(entity.getLastUpdate()); + result.setLastUpdate(lastUpdateDate); if (dto.isNotPersisted()) { tripLongline.addActivityLongline(entity); - saveFollowedEntity(TripLongline.class, tripLongline); - } TripLonglineTopiaDao tripLonglineTopiaDao = getTopiaPersistenceContext().getTripLonglineDao(); @@ -217,7 +215,7 @@ public class ActivityLonglineServiceTopia extends ObserveServiceTopia implements TripLongline tripLongline = loadEntity(TripLonglineDto.class, tripLonglineId); tripLongline.addActivityLongline(activityLongline); - saveFollowedEntity(TripLongline.class, tripLongline); + saveFollowedEntity(tripLongline); return getActivityLonglinePositionInTripLongline(tripLongline, activityLongline); @@ -237,7 +235,7 @@ public class ActivityLonglineServiceTopia extends ObserveServiceTopia implements result.add(getActivityLonglinePositionInTripLongline(tripLongline, activityLongline)); } - saveFollowedEntity(TripLongline.class, tripLongline); + saveFollowedEntity(tripLongline); return result; diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/BranchlineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/BranchlineServiceTopia.java index d196bb9..df98b9c 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/BranchlineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/BranchlineServiceTopia.java @@ -1,10 +1,16 @@ package fr.ird.observe.services.service.longline; import fr.ird.observe.entities.longline.Branchline; +import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.longline.BranchlineDto; +import fr.ird.observe.services.dto.longline.SetLonglineDto; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; + +import java.util.Date; /** * @author Sylvain Bavencoff - bavencoff@codelutin.com @@ -12,28 +18,32 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti public class BranchlineServiceTopia extends ObserveServiceTopia implements BranchlineService { @Override - public Form<BranchlineDto> loadForm(String branchlineId) { + public Form<BranchlineDto> loadForm(String setLonglineId, String id) { + + SetLongline setLongline = loadEntity(SetLonglineDto.class, setLonglineId); + + Branchline entity = loadEntity(BranchlineDto.class, id); - Branchline entity = loadEntity(BranchlineDto.class, branchlineId); + Form<BranchlineDto> form = dataEntityToForm(BranchlineDto.class, entity, ReferenceSetRequestDefinitions.BRANCHLINE_FORM); + form.getObject().setLastUpdate(setLongline.getLastUpdate()); - Form<BranchlineDto> form = dataEntityToForm(BranchlineDto.class, - entity, - ReferenceSetRequestDefinitions.BRANCHLINE_FORM); return form; } @Override - public String save(BranchlineDto dto) { + public SaveResultDto save(String setLonglineId, BranchlineDto dto) { + + SetLongline setLongline = loadEntity(SetLonglineDto.class, setLonglineId); + checkLastUpdateDate(setLongline, dto); + + Branchline entity = loadOrCreateEntityFromDataDto(dto); - //FIXME La branchline n'est pas connecté à un parent (la calée) - Branchline entity = loadOrCreateEntity(BranchlineDto.class, Branchline.class, dto); -// Branchline entity = loadOrCreateEntityAndCheckLastUpdate(BranchlineDto.class, Branchline.class, dto); + copyDataDtoToEntity(dto, entity); - dataDtoToEntity(dto, entity); + Date lastUpdateDate = saveFollowedEntity(setLongline, entity); - entity = saveEntity(Branchline.class, entity); - return entity.getTopiaId(); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java index 00331d4..3085880 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineCatchServiceTopia.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -98,13 +100,14 @@ public class SetLonglineCatchServiceTopia extends ObserveServiceTopia implements @Override public SaveResultDto save(SetLonglineCatchDto dto) { - SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(SetLonglineCatchDto.class, SetLongline.class, dto); + SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); + + copyDataDtoToEntity(dto, entity); - dataDtoToEntity(dto, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - entity = saveFollowedEntity(SetLongline.class, entity); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopia.java index 394e1df..949b718 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopia.java @@ -36,6 +36,8 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -97,17 +99,17 @@ public class SetLonglineDetailCompositionServiceTopia extends ObserveServiceTopi @Override public SaveResultDto save(SetLonglineDetailCompositionDto dto) { - SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(SetLonglineDetailCompositionDto.class, SetLongline.class, dto); + SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(SetLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); for (Section section : entity.getSection()) { section.setSetLongline(entity); } - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineGlobalCompositionServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineGlobalCompositionServiceTopia.java index a4e3895..6f99b5d 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineGlobalCompositionServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineGlobalCompositionServiceTopia.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -51,13 +53,13 @@ public class SetLonglineGlobalCompositionServiceTopia extends ObserveServiceTopi @Override public SaveResultDto save(SetLonglineGlobalCompositionDto dto) { - SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(SetLonglineGlobalCompositionDto.class, SetLongline.class, dto); + SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(SetLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java index 368f5dd..8e03be4 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/SetLonglineServiceTopia.java @@ -132,21 +132,19 @@ public class SetLonglineServiceTopia extends ObserveServiceTopia implements SetL ActivityLongline activityLongline = loadEntity(ActivityLonglineDto.class, activityLonglineId); - SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(SetLonglineDto.class, SetLongline.class, dto); + SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(SetLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); if (dto.isNotPersisted()) { activityLongline.setSetLongline(entity); - saveFollowedEntity(ActivityLongline.class, activityLongline); - } - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } @@ -187,7 +185,7 @@ public class SetLonglineServiceTopia extends ObserveServiceTopia implements SetL otherSetDto.setId(otherSetLongline.getTopiaId()); otherSetDto.setHomeId(otherSetLongline.getHomeId()); otherSetDto.setNumber(otherSetLongline.getNumber()); - + DataReference<ActivityLonglineDto> reference = binder.toDataReference(getReferentialLocale(), activityLongline); otherSetDto.setActivityLongline(reference); otherSetLonglineDtos.add(otherSetDto); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java index 788266b..01ccff0 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TdrServiceTopia.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -99,13 +101,14 @@ public class TdrServiceTopia extends ObserveServiceTopia implements TdrService { @Override public SaveResultDto save(SetLonglineTdrDto dto) { - SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(SetLonglineTdrDto.class, SetLongline.class, dto); + SetLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); + + copyDataDtoToEntity(dto, entity); - dataDtoToEntity(dto, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - entity = saveFollowedEntity(SetLongline.class, entity); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineGearUseServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineGearUseServiceTopia.java index fcc6c6c..5da1029 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineGearUseServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineGearUseServiceTopia.java @@ -23,7 +23,6 @@ package fr.ird.observe.services.service.longline; */ import fr.ird.observe.entities.longline.TripLongline; -import fr.ird.observe.entities.longline.TripLonglineTopiaDao; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.longline.TripLonglineGearUseDto; @@ -31,6 +30,8 @@ import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefiniti import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -53,16 +54,17 @@ public class TripLonglineGearUseServiceTopia extends ObserveServiceTopia impleme @Override public SaveResultDto save(TripLonglineGearUseDto dto) { - TripLongline entity = loadOrCreateEntityAndCheckLastUpdate(TripLonglineGearUseDto.class, TripLongline.class, dto); + TripLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(TripLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - TripLonglineTopiaDao dao = getTopiaPersistenceContext().getTripLonglineDao(); - dao.updateEndDate(entity); + //FIXME Quel est le lien avec les mises en oeuvre d'un engin, ne serait-ce qu'un jolie copier-coller +// TripLonglineTopiaDao dao = getTopiaPersistenceContext().getTripLonglineDao(); +// dao.updateEndDate(entity); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java index b486d7b..7a31e8c 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/longline/TripLonglineServiceTopia.java @@ -159,16 +159,16 @@ public class TripLonglineServiceTopia extends ObserveServiceTopia implements Tri @Override public SaveResultDto save(TripLonglineDto dto) { - TripLongline entity = loadOrCreateEntityAndCheckLastUpdate(TripLonglineDto.class, TripLongline.class, dto); + TripLongline entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(TripLongline.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); TripLonglineTopiaDao dao = getTopiaPersistenceContext().getTripLonglineDao(); dao.updateEndDate(entity); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } @@ -185,7 +185,7 @@ public class TripLonglineServiceTopia extends ObserveServiceTopia implements Tri Program program = loadEntity(ProgramDto.class, programId); tripLongline.setProgram(program); - saveFollowedEntity(TripLongline.class, tripLongline); + saveFollowedEntity(tripLongline); ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); persistenceContext.flush(); @@ -207,7 +207,7 @@ public class TripLonglineServiceTopia extends ObserveServiceTopia implements Tri TripLongline tripLongline = loadEntity(TripLonglineDto.class, tripLonglineId); tripLongline.setProgram(program); - saveFollowedEntity(TripLongline.class, tripLongline); + saveFollowedEntity(tripLongline); persistenceContext.flush(); result.add(getTripLonglinePositionInProgram(programId, tripLonglineId)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineObservedSystemServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineObservedSystemServiceTopia.java index 5ab8797..a1edbab 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineObservedSystemServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineObservedSystemServiceTopia.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.ActivitySeineObservedSystemDto; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -50,12 +52,13 @@ public class ActivitySeineObservedSystemServiceTopia extends ObserveServiceTopia @Override public SaveResultDto save(ActivitySeineObservedSystemDto dto) { - ActivitySeine entity = loadOrCreateEntityAndCheckLastUpdate(ActivitySeineObservedSystemDto.class, ActivitySeine.class, dto); + ActivitySeine entity = loadOrCreateEntityAndCheckLastUpdate(dto); + + copyDataDtoToEntity(dto, entity); - dataDtoToEntity(dto, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - entity = saveFollowedEntity(ActivitySeine.class, entity); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java index c638f80..5416d8e 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineServiceTopia.java @@ -177,21 +177,19 @@ public class ActivitySeineServiceTopia extends ObserveServiceTopia implements Ac Route route = loadEntity(RouteDto.class, routeId); - ActivitySeine entity = loadOrCreateEntityAndCheckLastUpdate(ActivitySeineDto.class, ActivitySeine.class, dto); + ActivitySeine entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(ActivitySeine.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); if (dto.isNotPersisted()) { route.addActivitySeine(entity); - saveFollowedEntity(Route.class, route); - } - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } @@ -217,7 +215,7 @@ public class ActivitySeineServiceTopia extends ObserveServiceTopia implements Ac Route route = loadEntity(RouteDto.class, routeId); route.addActivitySeine(activitySeine); - saveFollowedEntity(Route.class, route); + saveFollowedEntity(route); return getActivitySeinePositionInRoute(route, activitySeine); @@ -237,7 +235,7 @@ public class ActivitySeineServiceTopia extends ObserveServiceTopia implements Ac result.add(getActivitySeinePositionInRoute(routeId, activityId)); } - saveFollowedEntity(Route.class, route); + saveFollowedEntity(route); return result; diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java index dc269b4..ab7235e 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/FloatingObjectServiceTopia.java @@ -31,10 +31,13 @@ import fr.ird.observe.services.dto.DataReferenceSet; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.constants.ReferentialLocale; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.ActivitySeineDto; import fr.ird.observe.services.dto.seine.FloatingObjectDto; import fr.ird.observe.services.service.DataNotFoundException; +import java.util.Date; import java.util.List; /** @@ -97,25 +100,24 @@ public class FloatingObjectServiceTopia extends ObserveServiceTopia implements F } @Override - public String save(String activitySeineId, FloatingObjectDto dto) { + public SaveResultDto save(String activitySeineId, FloatingObjectDto dto) { ActivitySeine activitySeine = loadEntity(ActivitySeineDto.class, activitySeineId); - FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(FloatingObjectDto.class, FloatingObject.class, dto); + FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(FloatingObject.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); if (dto.isNotPersisted()) { activitySeine.addFloatingObject(entity); - saveFollowedEntity(ActivitySeine.class, activitySeine); - } - return entity.getTopiaId(); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); + } @Override diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetCatchServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetCatchServiceTopia.java index 50ddca0..267503a 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetCatchServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetCatchServiceTopia.java @@ -43,6 +43,7 @@ import fr.ird.observe.services.dto.seine.SetSeineNonTargetCatchDto; import fr.ird.observe.services.dto.seine.TripSeineDto; import org.nuiton.topia.persistence.TopiaEntities; +import java.util.Date; import java.util.Set; /** @@ -97,9 +98,9 @@ public class NonTargetCatchServiceTopia extends ObserveServiceTopia implements N @Override public SaveResultDto save(SetSeineNonTargetCatchDto dto) { - SetSeine entity = loadOrCreateEntityAndCheckLastUpdate(SetSeineNonTargetCatchDto.class, SetSeine.class, dto); + SetSeine entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); // mise a jour de la propriete nonTargetDiscarded @@ -113,7 +114,6 @@ public class NonTargetCatchServiceTopia extends ObserveServiceTopia implements N } entity.setNonTargetDiscarded(hasRejet); - // on supprime les échantillons qui ne correspondent plus a des capture if (entity.sizeNonTargetSample() > 0) { NonTargetSample nonTargetSample = Iterables.get(entity.getNonTargetSample(), 0); @@ -144,8 +144,9 @@ public class NonTargetCatchServiceTopia extends ObserveServiceTopia implements N } } - entity = saveFollowedEntity(SetSeine.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); + + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleServiceTopia.java index 0db4a2c..039633c 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/NonTargetSampleServiceTopia.java @@ -31,10 +31,13 @@ import fr.ird.observe.entities.seine.SetSeine; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.NonTargetSampleDto; import fr.ird.observe.services.dto.seine.SetSeineDto; import java.util.Collection; +import java.util.Date; import java.util.Set; /** @@ -109,26 +112,25 @@ public class NonTargetSampleServiceTopia extends ObserveServiceTopia implements } @Override - public String save(String setSeineId, NonTargetSampleDto dto) { + public SaveResultDto save(String setSeineId, NonTargetSampleDto dto) { SetSeine setSeine = loadEntity(SetSeineDto.class, setSeineId); checkLastUpdateDate(setSeine, dto); - NonTargetSample entity = loadOrCreateEntity(NonTargetSampleDto.class, NonTargetSample.class, dto); + NonTargetSample entity = loadOrCreateEntityFromDataDto(dto); - dataDtoToEntity(dto, entity); - - entity = saveEntity(NonTargetSample.class, entity); + copyDataDtoToEntity(dto, entity); if (dto.isNotPersisted()) { setSeine.addNonTargetSample(entity); + + } - saveFollowedEntity(SetSeine.class, setSeine); + Date lastUpdateDate = saveFollowedEntity(setSeine, entity); - } + return SaveResultDtos.of(setSeine.getTopiaId(), lastUpdateDate); - return setSeine.getTopiaId(); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesServiceTopia.java index 6031e11..024ae98 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectObservedSpeciesServiceTopia.java @@ -26,8 +26,12 @@ import fr.ird.observe.entities.seine.FloatingObject; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.FloatingObjectObservedSpeciesDto; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -49,14 +53,15 @@ public class ObjectObservedSpeciesServiceTopia extends ObserveServiceTopia imple } @Override - public String save(FloatingObjectObservedSpeciesDto dto) { + public SaveResultDto save(FloatingObjectObservedSpeciesDto dto) { + + FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(dto); - FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(FloatingObjectObservedSpeciesDto.class, FloatingObject.class, dto); + copyDataDtoToEntity(dto, entity); - dataDtoToEntity(dto, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - entity = saveFollowedEntity(FloatingObject.class, entity); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); - return entity.getTopiaId(); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java index 032922f..579266c 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/ObjectSchoolEstimateServiceTopia.java @@ -26,8 +26,12 @@ import fr.ird.observe.entities.seine.FloatingObject; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.FloatingObjectSchoolEstimateDto; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -50,14 +54,15 @@ public class ObjectSchoolEstimateServiceTopia extends ObserveServiceTopia implem } @Override - public String save(FloatingObjectSchoolEstimateDto dto) { + public SaveResultDto save(FloatingObjectSchoolEstimateDto dto) { - FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(FloatingObjectSchoolEstimateDto.class, FloatingObject.class, dto); + FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(FloatingObject.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - return entity.getTopiaId(); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); + } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java index 5dda21e..9b2eafd 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/RouteServiceTopia.java @@ -194,19 +194,20 @@ public class RouteServiceTopia extends ObserveServiceTopia implements RouteServi oldRouteDate = dto.getDate(); } - Route entity = loadOrCreateEntityAndCheckLastUpdate(RouteDto.class, Route.class, dto); + Route entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); + + Date lastUpdateDate = saveFollowedEntity(entity); - entity = saveFollowedEntity(Route.class, entity); result.setId(entity.getTopiaId()); - result.setLastUpdate(entity.getLastUpdate()); + result.setLastUpdate(lastUpdateDate); if (dto.isNotPersisted()) { tripSeine.addRoute(entity); - saveFollowedEntity(TripSeine.class, tripSeine); + saveFollowedEntity(tripSeine); } else { Date oldDate = DateUtil.getDay(oldRouteDate); @@ -254,7 +255,7 @@ public class RouteServiceTopia extends ObserveServiceTopia implements RouteServi Route route = loadEntity(RouteDto.class, routeId); TripSeine tripSeine = loadEntity(TripSeineDto.class, tripSeineId); tripSeine.addRoute(route); - saveFollowedEntity(TripSeine.class, tripSeine); + saveFollowedEntity(tripSeine); ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); persistenceContext.flush(); @@ -275,7 +276,7 @@ public class RouteServiceTopia extends ObserveServiceTopia implements RouteServi result.add(getRoutePositionInTripSeine(tripSeine, route)); } - saveFollowedEntity(TripSeine.class, tripSeine); + saveFollowedEntity(tripSeine); return result; } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateServiceTopia.java index d5b7523..c0f5694 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SchoolEstimateServiceTopia.java @@ -29,9 +29,13 @@ import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.SetSeineSchoolEstimateDto; import fr.ird.observe.services.dto.seine.TripSeineDto; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -57,18 +61,18 @@ public class SchoolEstimateServiceTopia extends ObserveServiceTopia implements S } @Override - public String save(SetSeineSchoolEstimateDto dto) { + public SaveResultDto save(SetSeineSchoolEstimateDto dto) { - SetSeine entity = loadOrCreateEntityAndCheckLastUpdate(SetSeineSchoolEstimateDto.class, SetSeine.class, dto); + SetSeine entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); for (SchoolEstimate schoolEstimate : entity.getSchoolEstimate()) { schoolEstimate.setSetSeine(entity); } - entity = saveFollowedEntity(SetSeine.class, entity); - - return entity.getTopiaId(); + Date lastUpdateDate = saveFollowedEntity(entity); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); + } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java index fe53ef4..6e516dd 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/SetSeineServiceTopia.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.ActivitySeineDto; import fr.ird.observe.services.dto.seine.RouteDto; import fr.ird.observe.services.dto.seine.SetSeineDto; @@ -117,25 +119,24 @@ public class SetSeineServiceTopia extends ObserveServiceTopia implements SetSein } @Override - public String save(String activitySeineId, SetSeineDto dto) { + public SaveResultDto save(String activitySeineId, SetSeineDto dto) { ActivitySeine activitySeine = loadEntity(ActivitySeineDto.class, activitySeineId); - SetSeine entity = loadOrCreateEntityAndCheckLastUpdate(SetSeineDto.class, SetSeine.class, dto); + SetSeine entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(SetSeine.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); if (dto.isNotPersisted()) { activitySeine.setSetSeine(entity); - saveFollowedEntity(ActivitySeine.class, activitySeine); - } - return entity.getTopiaId(); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); + } @Override @@ -152,6 +153,8 @@ public class SetSeineServiceTopia extends ObserveServiceTopia implements SetSein activitySeine.setSetSeine(null); //FIXME kmorin : faudrait pas sauver quelquechose là ? parcequ'on n'a rien supprimé... + //FIXME tchemit: normalement c'est une composition donc ça doit être supprimé tout seul (à vérifier) + } } 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 7fbfcf3..a27ef1f 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 @@ -25,6 +25,7 @@ import fr.ird.observe.services.dto.seine.TripSeineDto; import org.nuiton.topia.persistence.TopiaEntities; import java.util.Collection; +import java.util.Date; import java.util.List; import java.util.Set; @@ -106,7 +107,7 @@ public class TargetCatchServiceTopia extends ObserveServiceTopia implements Targ dto.addAllTargetCatch(otherTargetCatchDtos); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); // on supprime les échantillons qui ne correspondent plus a des capture TargetSample targetSample = entity.getTargetSample(dto.isDiscarded()); @@ -147,9 +148,10 @@ public class TargetCatchServiceTopia extends ObserveServiceTopia implements Targ Optional<TargetCatch> targetCatchDiscardedOptional = Iterables.tryFind(entity.getTargetCatch(), TargetCatchs.newDiscardedPredicate(true)); entity.setTargetDiscarded(targetCatchDiscardedOptional.isPresent()); - entity = saveFollowedEntity(SetSeine.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); + + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetSampleServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetSampleServiceTopia.java index 2323636..8697d4d 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetSampleServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TargetSampleServiceTopia.java @@ -38,6 +38,7 @@ import fr.ird.observe.services.dto.seine.TargetSampleDto; import org.apache.commons.lang3.BooleanUtils; import java.util.Collection; +import java.util.Date; import java.util.Set; /** @@ -93,8 +94,8 @@ public class TargetSampleServiceTopia extends ObserveServiceTopia implements Tar // si echantillon rejeté : on ne conserve que les espèces rejectées montées sur le pont // sinon les espèce cible - if ( discarded && targetCatch.isDiscarded() && BooleanUtils.isTrue(targetCatch.getBroughtOnDeck()) - || !discarded && !targetCatch.isDiscarded()) { + if (discarded && targetCatch.isDiscarded() && BooleanUtils.isTrue(targetCatch.getBroughtOnDeck()) + || !discarded && !targetCatch.isDiscarded()) { speciesSet.add(targetCatch.getWeightCategory().getSpecies()); } @@ -118,23 +119,22 @@ public class TargetSampleServiceTopia extends ObserveServiceTopia implements Tar SetSeine setSeine = loadEntity(SetSeineDto.class, setSeineId); checkLastUpdateDate(setSeine, dto); - TargetSample entity = loadOrCreateEntity(TargetSampleDto.class, TargetSample.class, dto); - dataDtoToEntity(dto, entity); + TargetSample entity = loadOrCreateEntityFromDataDto(dto); + copyDataDtoToEntity(dto, entity); for (TargetLength targetLength : entity.getTargetLength()) { targetLength.setTargetSample(entity); } - entity = saveEntity(TargetSample.class, entity); - if (dto.isNotPersisted()) { setSeine.addTargetSample(entity); - saveFollowedEntity(SetSeine.class, setSeine); - } - return SaveResultDtos.of(setSeine.getTopiaId(), setSeine.getLastUpdate()); + Date lastUpdateDate = saveFollowedEntity(setSeine, entity); + + return SaveResultDtos.of(setSeine.getTopiaId(), lastUpdateDate); + } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationServiceTopia.java index da6db22..821e03f 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TransmittingBuoyOperationServiceTopia.java @@ -26,8 +26,12 @@ import fr.ird.observe.entities.seine.FloatingObject; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; +import fr.ird.observe.services.dto.result.SaveResultDto; +import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.FloatingObjectTransmittingBuoyDto; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -50,15 +54,15 @@ public class TransmittingBuoyOperationServiceTopia extends ObserveServiceTopia i } @Override - public String save(FloatingObjectTransmittingBuoyDto dto) { + public SaveResultDto save(FloatingObjectTransmittingBuoyDto dto) { - FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(FloatingObjectTransmittingBuoyDto.class, FloatingObject.class, dto); + FloatingObject entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(FloatingObject.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - return entity.getTopiaId(); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopia.java index a838b11..4fd50ae 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopia.java @@ -23,7 +23,6 @@ package fr.ird.observe.services.service.seine; */ import fr.ird.observe.entities.seine.TripSeine; -import fr.ird.observe.entities.seine.TripSeineTopiaDao; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.reference.request.ReferenceSetRequestDefinitions; @@ -31,6 +30,8 @@ import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.result.SaveResultDtos; import fr.ird.observe.services.dto.seine.TripSeineGearUseDto; +import java.util.Date; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -53,16 +54,17 @@ public class TripSeineGearUseServiceTopia extends ObserveServiceTopia implements @Override public SaveResultDto save(TripSeineGearUseDto dto) { - TripSeine entity = loadOrCreateEntityAndCheckLastUpdate(TripSeineGearUseDto.class, TripSeine.class, dto); + TripSeine entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - entity = saveFollowedEntity(TripSeine.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); - TripSeineTopiaDao dao = getTopiaPersistenceContext().getTripSeineDao(); - dao.updateEndDate(entity); + //FIXME Quel est le lien avec les mises en oeuvre d'un engin, ne serait-ce qu'un jolie copier-coller +// TripSeineTopiaDao dao = getTopiaPersistenceContext().getTripSeineDao(); +// dao.updateEndDate(entity); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java index 927b5a2..8649932 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/seine/TripSeineServiceTopia.java @@ -165,16 +165,16 @@ public class TripSeineServiceTopia extends ObserveServiceTopia implements TripSe @Override public SaveResultDto save(TripSeineDto dto) { - TripSeine entity = loadOrCreateEntityAndCheckLastUpdate(TripSeineDto.class, TripSeine.class, dto); + TripSeine entity = loadOrCreateEntityAndCheckLastUpdate(dto); - dataDtoToEntity(dto, entity); + copyDataDtoToEntity(dto, entity); - saveFollowedEntity(TripSeine.class, entity); + Date lastUpdateDate = saveFollowedEntity(entity); TripSeineTopiaDao dao = getTopiaPersistenceContext().getTripSeineDao(); dao.updateEndDate(entity); - return SaveResultDtos.of(entity.getTopiaId(), entity.getLastUpdate()); + return SaveResultDtos.of(entity.getTopiaId(), lastUpdateDate); } @@ -191,7 +191,7 @@ public class TripSeineServiceTopia extends ObserveServiceTopia implements TripSe TripSeine tripSeine = loadEntity(TripSeineDto.class, tripSeineId); Program program = loadEntity(ProgramDto.class, programId); tripSeine.setProgram(program); - saveFollowedEntity(TripSeine.class, tripSeine); + saveFollowedEntity(tripSeine); getTopiaPersistenceContext().flush(); @@ -211,7 +211,7 @@ public class TripSeineServiceTopia extends ObserveServiceTopia implements TripSe TripSeine tripSeine = loadEntity(TripSeineDto.class, tripSeineId); tripSeine.setProgram(program); - saveFollowedEntity(TripSeine.class, tripSeine); + saveFollowedEntity(tripSeine); getTopiaPersistenceContext().flush(); result.add(getTripSeinePositionInProgram(programId, tripSeineId)); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.