This is an automated email from the git hooks/post-receive script. New commit to branch feature/7623 in repository observe. See http://git.codelutin.com/observe.git commit 69c247b56c62ec2e86ad5fc3d951e3413c4f24a0 Author: Kevin Morin <morin@codelutin.com> Date: Wed Nov 18 12:43:06 2015 +0100 ajout des méthodes pour déplacer plusieurs activités seine (refs #7623) --- .../v1/seine/ActivitySeineServiceController.java | 7 +++++++ .../services/service/seine/ActivitySeineService.java | 6 ++++++ .../service/seine/ActivitySeineServiceTopia.java | 20 ++++++++++++++++++++ 3 files changed, 33 insertions(+) diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java index 033d735..0c25098 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/seine/ActivitySeineServiceController.java @@ -30,6 +30,8 @@ import fr.ird.observe.services.dto.result.SaveResultDto; import fr.ird.observe.services.dto.seine.ActivitySeineDto; import fr.ird.observe.services.service.seine.ActivitySeineService; +import java.util.List; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -93,4 +95,9 @@ public class ActivitySeineServiceController extends ObserveAuthenticatedServiceC public int moveActivitySeineToRoute(String activitySeineId, String routeId) { return service.moveActivitySeineToRoute(activitySeineId, routeId); } + + @Override + public List<Integer> moveActivitySeinesToRoute(List<String> activitySeineIds, String routeId) { + return service.moveActivitySeinesToRoute(activitySeineIds, routeId); + } } diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java index 29b8b77..f459c82 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/seine/ActivitySeineService.java @@ -34,6 +34,8 @@ import fr.ird.observe.services.spi.ReadDataPermission; import fr.ird.observe.services.spi.Write; import fr.ird.observe.services.spi.WriteDataPermission; +import java.util.List; + /** * @author Sylvain Bavencoff - bavencoff@codelutin.com */ @@ -76,4 +78,8 @@ public interface ActivitySeineService extends ObserveService { @Write @WriteDataPermission int moveActivitySeineToRoute(String activitySeineId, String routeId); + + @Write + @WriteDataPermission + List<Integer> moveActivitySeinesToRoute(List<String> activitySeineIds, String routeId); } 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 bed0d8c..7513163 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 @@ -47,6 +47,7 @@ import fr.ird.observe.services.service.DataNotFoundException; import fr.ird.type.CoordinateHelper; import org.nuiton.util.DateUtil; +import java.util.ArrayList; import java.util.Date; import java.util.LinkedHashSet; import java.util.List; @@ -248,4 +249,23 @@ public class ActivitySeineServiceTopia extends ObserveServiceTopia implements Ac return getActivitySeinePositionInRoute(routeId, activitySeineId); } + @Override + public List<Integer> moveActivitySeinesToRoute(List<String> activitySeineIds, String routeId) { + Route route = loadEntity(RouteDto.class, Route.class, routeId); + + List<Integer> result = new ArrayList<>(); + ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + + for (String activityId : activitySeineIds) { + ActivitySeine activity = loadEntity(ActivitySeineDto.class, ActivitySeine.class, activityId); + route.addActivitySeine(activity); + + saveEntity(Route.class, route); + persistenceContext.flush(); + + result.add(getActivitySeinePositionInRoute(routeId, activityId)); + } + + return result; + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.