Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 2d694007 by Tony Chemit at 2023-04-01T17:33:51+02:00 Appariement des activités à la loupe - Closes #2660 - - - - - 4 changed files: - client/datasource/actions/src/main/java/fr/ird/observe/client/datasource/actions/pairing/ps/RootNodeBuilder.java - client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/logbook/ActivityUIModelStates.java - core/api/dto/src/main/java/fr/ird/observe/dto/data/ps/pairing/RoutePairingContext.java - core/api/dto/src/main/java/fr/ird/observe/dto/data/ps/pairing/TripPairingContext.java Changes: ===================================== client/datasource/actions/src/main/java/fr/ird/observe/client/datasource/actions/pairing/ps/RootNodeBuilder.java ===================================== @@ -130,6 +130,7 @@ public class RootNodeBuilder { } public void addRoute(RoutePairingResult routePairingResult) { + flushRouteNode(); decorate(routePairingResult); if (!routePairingResult.getItems().isEmpty()) { routeNode = new RouteNode(routePairingResult.getRoute().toString()); ===================================== client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/logbook/ActivityUIModelStates.java ===================================== @@ -218,7 +218,7 @@ public class ActivityUIModelStates extends GeneratedActivityUIModelStates { if (pairingContext == null || vesselActivityId == null || timeStamp == null) { activityObs = Collections.emptyList(); } else { - RoutePairingContextRequest request = pairingContext.getRequest(tripId, source().getParentReference().getId(), vesselActivityId); + RoutePairingContextRequest request = new RoutePairingContextRequest(tripId, source().getParentReference().getId(), vesselActivityId); activityObs = pairingContext.getActivityObsList(request, timeStamp); } log.info(String.format("%s Found %d related observed activities.", getPrefix(), activityObs.size())); ===================================== core/api/dto/src/main/java/fr/ird/observe/dto/data/ps/pairing/RoutePairingContext.java ===================================== @@ -33,7 +33,6 @@ import java.util.Date; import java.util.LinkedList; import java.util.List; import java.util.Objects; -import java.util.stream.Collectors; /** * Created on 21/12/2021. @@ -43,23 +42,11 @@ import java.util.stream.Collectors; */ public abstract class RoutePairingContext implements ObserveDto { - private RoutePairingContextRequest pairingRequest; private RoutePairingContextRequest lastRequest; private TripDto trip; private RouteDto route; private List<fr.ird.observe.dto.data.ps.observation.ActivityReference> candidates; - public RoutePairingContextRequest getRequest(String tripId, String routeLogbookId, String vesselActivityId) { - if (pairingRequest == null) { - pairingRequest = new RoutePairingContextRequest(tripId, routeLogbookId, vesselActivityId); - } else { - pairingRequest.setTripId(tripId); - pairingRequest.setRouteLogbookId(routeLogbookId); - pairingRequest.setVesselActivityId(vesselActivityId); - } - return pairingRequest; - } - public List<fr.ird.observe.dto.data.ps.observation.ActivityReference> getActivityObsList(RoutePairingContextRequest request, Date date) { if (date == null) { return Collections.emptyList(); @@ -67,9 +54,7 @@ public abstract class RoutePairingContext implements ObserveDto { if (!Objects.equals(request, lastRequest)) { reloadCandidates(request); } - long minDate = Dates.getYesterday(date).getTime(); - long maxDate = DateUtils.addDays(Dates.getEndOfDay(date), 1).getTime(); - return candidates.stream().filter(e -> filterDate(e.getDate(), minDate, maxDate)).collect(Collectors.toList()); + return List.copyOf(candidates); } public void reloadCandidates(RoutePairingContextRequest request) { ===================================== core/api/dto/src/main/java/fr/ird/observe/dto/data/ps/pairing/TripPairingContext.java ===================================== @@ -31,7 +31,6 @@ import fr.ird.observe.dto.data.ps.logbook.RouteReference; import fr.ird.observe.dto.referential.ReferentialLocale; import java.util.ArrayList; -import java.util.Date; import java.util.LinkedList; import java.util.List; @@ -71,9 +70,9 @@ public class TripPairingContext implements ObserveDto { } private void computeRouteResult(String tripId, String routeLogbookId, List<ActivityPairingResult> resultBuilder) { - List<fr.ird.observe.dto.data.ps.logbook.ActivityReference> activityLogbookList = getActivityLogbookList(routeLogbookId); + List<fr.ird.observe.dto.data.ps.logbook.ActivityReference> activityLogbookList = routePairingContext.getLogbookActivityList(routeLogbookId); activityLogbookList.forEach(activityLogbook -> { - RoutePairingContextRequest pairingRequest = getRequest(tripId, routeLogbookId, activityLogbook.getVesselActivityId()); + RoutePairingContextRequest pairingRequest = new RoutePairingContextRequest(tripId, routeLogbookId, activityLogbook.getVesselActivityId()); ActivityPairingResult activityPairingResult = computeActivityLogbook(pairingRequest, activityLogbook); if (activityPairingResult != null) { // only add if there is some data @@ -83,7 +82,7 @@ public class TripPairingContext implements ObserveDto { } private ActivityPairingResult computeActivityLogbook(RoutePairingContextRequest pairingRequest, ActivityAware activityLogbook) { - List<fr.ird.observe.dto.data.ps.observation.ActivityReference> activityObsList = getActivityObsList(pairingRequest, activityLogbook.getDate()); + List<fr.ird.observe.dto.data.ps.observation.ActivityReference> activityObsList = routePairingContext.getActivityObsList(pairingRequest, activityLogbook.getDate()); List<ActivityPairingResultItem> itemBuilder = new ArrayList<>(activityObsList.size()); for (fr.ird.observe.dto.data.ps.observation.ActivityReference activityObs : activityObsList) { itemBuilder.add(new ActivityPairingResultItem(activityLogbook, activityObs)); @@ -102,20 +101,6 @@ public class TripPairingContext implements ObserveDto { return new ActivityPairingResult(reference, itemBuilder); } - public RoutePairingContextRequest getRequest(String tripId, String routeLogbookId, String vesselActivityId) { - return routePairingContext.getRequest(tripId, routeLogbookId, vesselActivityId); - } - - public List<fr.ird.observe.dto.data.ps.observation.ActivityReference> getActivityObsList(RoutePairingContextRequest request, Date date) { - return routePairingContext.getActivityObsList(request, date); - } - - - public List<fr.ird.observe.dto.data.ps.logbook.ActivityReference> getActivityLogbookList(String routeLogbookId) { - return routePairingContext.getLogbookActivityList(routeLogbookId); - } - - public TripDto loadTrip(String tripId) { TripDto result = routePairingContext.loadTrip(tripId); routePairingContext.setTrip(result); View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/2d69400727cb6a5d49c5e86205... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/2d69400727cb6a5d49c5e86205... You're receiving this email because of your account on gitlab.com.
participants (1)
-
Tony CHEMIT (@tchemit)