mailman.cloud.codelutin.com
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

Observe-commits

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2018 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2017 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2016 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2015 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2014 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2013 -----
  • December
  • November
  • October
  • September
observe-commits@list.forge.codelutin.com

April 2023

  • 1 participants
  • 35 discussions
[Git][ultreiaio/ird-observe][develop] Appariement des activités à la loupe - Closes #2660
by Tony CHEMIT (@tchemit) 01 Apr '23

01 Apr '23
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 805d64d7 by Tony Chemit at 2023-04-01T17:57:16+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 ===================================== @@ -31,6 +31,7 @@ import fr.ird.observe.client.datasource.actions.pairing.tree.node.GroupByNode; import fr.ird.observe.decoration.DecoratorService; import fr.ird.observe.dto.ProgressionModel; import fr.ird.observe.dto.ToolkitIdLabel; +import fr.ird.observe.dto.data.ActivityAware; import fr.ird.observe.dto.data.ps.logbook.ActivityReference; import fr.ird.observe.dto.data.ps.logbook.RouteReference; import fr.ird.observe.dto.data.ps.pairing.ActivityPairingResult; @@ -106,7 +107,7 @@ public class RootNodeBuilder { public RootNodeBuilder(DecoratorService decoratorService) { activityLogbookDecorator = decoratorService.getDecoratorByType(ActivityReference.class); routeLogbookDecorator = decoratorService.getDecoratorByType(RouteReference.class); - activityObservationDecorator = decoratorService.getDecoratorByType(fr.ird.observe.dto.data.ps.observation.ActivityReference.class); + activityObservationDecorator = decoratorService.getDecoratorByType(fr.ird.observe.dto.data.ps.observation.ActivityReference.class, ActivityAware.CLASSIFIER_WITH_ROUTE); itemDecorator = decoratorService.getDecoratorByType(ActivityPairingResultItem.class); rootNode = new RootNode(); } @@ -130,6 +131,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 ===================================== @@ -28,12 +28,12 @@ import fr.ird.observe.dto.data.ps.logbook.RouteDto; import io.ultreia.java4all.util.Dates; import org.apache.commons.lang3.time.DateUtils; +import java.util.ArrayList; import java.util.Collections; 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 +43,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 +55,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 new ArrayList<>(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/805d64d73d3a6c21e0dab43ea… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/805d64d73d3a6c21e0dab43ea… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop-9.0.x] Appariement des activités à la loupe - Closes #2660
by Tony CHEMIT (@tchemit) 01 Apr '23

01 Apr '23
Tony CHEMIT pushed to branch develop-9.0.x at ultreiaio / ird-observe Commits: 7e1e2d0f by Tony Chemit at 2023-04-01T17:56: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 ===================================== @@ -31,6 +31,7 @@ import fr.ird.observe.client.datasource.actions.pairing.tree.node.GroupByNode; import fr.ird.observe.decoration.DecoratorService; import fr.ird.observe.dto.ProgressionModel; import fr.ird.observe.dto.ToolkitIdLabel; +import fr.ird.observe.dto.data.ActivityAware; import fr.ird.observe.dto.data.ps.logbook.ActivityReference; import fr.ird.observe.dto.data.ps.logbook.RouteReference; import fr.ird.observe.dto.data.ps.pairing.ActivityPairingResult; @@ -106,7 +107,7 @@ public class RootNodeBuilder { public RootNodeBuilder(DecoratorService decoratorService) { activityLogbookDecorator = decoratorService.getDecoratorByType(ActivityReference.class); routeLogbookDecorator = decoratorService.getDecoratorByType(RouteReference.class); - activityObservationDecorator = decoratorService.getDecoratorByType(fr.ird.observe.dto.data.ps.observation.ActivityReference.class); + activityObservationDecorator = decoratorService.getDecoratorByType(fr.ird.observe.dto.data.ps.observation.ActivityReference.class, ActivityAware.CLASSIFIER_WITH_ROUTE); itemDecorator = decoratorService.getDecoratorByType(ActivityPairingResultItem.class); rootNode = new RootNode(); } @@ -130,6 +131,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 ===================================== @@ -28,12 +28,12 @@ import fr.ird.observe.dto.data.ps.logbook.RouteDto; import io.ultreia.java4all.util.Dates; import org.apache.commons.lang3.time.DateUtils; +import java.util.ArrayList; import java.util.Collections; 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 +43,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 +55,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 new ArrayList<>(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/7e1e2d0fea794d2086e017fad… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/7e1e2d0fea794d2086e017fad… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] Appariement des activités à la loupe - Closes #2660
by Tony CHEMIT (@tchemit) 01 Apr '23

01 Apr '23
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/2d69400727cb6a5d49c5e8620… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/2d69400727cb6a5d49c5e8620… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop] 4 commits: Erreur sur déplacement de données d'observation (la marée cible n'est pas bien...
by Tony CHEMIT (@tchemit) 01 Apr '23

01 Apr '23
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 4fde4c23 by Tony Chemit at 2023-04-01T16:02:43+02:00 Erreur sur déplacement de données d&#39;observation (la marée cible n&#39;est pas bien rafrachît dans l&#39;arbre de navigation) - Closes #2656 - - - - - 5930e9e5 by Tony Chemit at 2023-04-01T16:02:43+02:00 Lorsque l&#39;on réinitialise le programme d&#39;une marée, il faudrait certainement rafraichir l&#39;arbre - Closes #2658 - - - - - 445e730f by Tony Chemit at 2023-04-01T16:02:43+02:00 Navigation UI - improve delete root data - - - - - acb6bc6c by Tony Chemit at 2023-04-01T16:02:44+02:00 Sur le nœud Observations embarqués, il est possible de tout déplacer même si le formulaire n&#39;est pas accéssible - Closes #2665 - - - - - 10 changed files: - client/core/src/main/resources/fr/ird/observe/client/ui/ObserveCommon.jcss - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/delete/DeleteRootTreeAdapter.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/MoveExecutor.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/MoveTreeAdapter.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/layout/MoveLayoutExecutor.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/layout/MoveLayoutTreeAdapter.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/ropen/actions/SaveContentRootOpenableUIAdapter.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/navigation/NavigationUIHandler.java - client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/observation/RouteListUI.jaxx - toolkit/api-services/src/main/java/fr/ird/observe/services/service/data/MoveRequest.java Changes: ===================================== client/core/src/main/resources/fr/ird/observe/client/ui/ObserveCommon.jcss ===================================== @@ -195,3 +195,7 @@ BlockingLayerUI { .editableAndNotModified { enabled:{states.isEditable() && !states.isModified()}; } + +.editableAndShowDataAndNotEmpty { + enabled:{states.isEditable() && states.isShowData() && !states.isEmpty()}; +} ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/delete/DeleteRootTreeAdapter.java ===================================== @@ -23,7 +23,6 @@ package fr.ird.observe.client.datasource.editor.api.content.actions.delete; */ import fr.ird.observe.client.datasource.editor.api.navigation.NavigationUI; -import fr.ird.observe.client.datasource.editor.api.navigation.NavigationUIHandler; import fr.ird.observe.client.datasource.editor.api.navigation.tree.NavigationNode; import fr.ird.observe.client.datasource.editor.api.navigation.tree.root.RootNavigationInitializer; @@ -45,6 +44,8 @@ public abstract class DeleteRootTreeAdapter<OldParent extends NavigationNode> ex @Override public void removeChildren(NavigationUI navigationUI, OldParent parentNode, Set<String> ids) { super.removeChildren(navigationUI, parentNode, ids); + // update navigation result + navigationUI.getTree().getModel().updateNavigationResult(); NavigationNode rootNode = parentNode.getRoot(); RootNavigationInitializer initializer = (RootNavigationInitializer) rootNode.getInitializer(); boolean removeGroupBy = parentNode.getChildCount() == 0 && !initializer.getRequest().isLoadEmptyGroupBy(); @@ -54,6 +55,5 @@ public abstract class DeleteRootTreeAdapter<OldParent extends NavigationNode> ex navigationUI.getTree().selectFirstNode(); } } - NavigationUIHandler.updateStatistics(navigationUI, removeGroupBy ? -1 : 0, -ids.size()); } } ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/MoveExecutor.java ===================================== @@ -27,6 +27,7 @@ import fr.ird.observe.client.datasource.editor.api.navigation.NavigationTree; import fr.ird.observe.client.util.ObserveSwingTechnicalException; import fr.ird.observe.datasource.security.ConcurrentModificationException; import fr.ird.observe.dto.ToolkitIdDtoBean; +import fr.ird.observe.navigation.tree.navigation.NavigationTreeConfig; import fr.ird.observe.services.service.data.MoveRequest; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -90,7 +91,14 @@ public class MoveExecutor { ToolkitIdDtoBean oldParentId = request.getOldParentId(); Set<String> referenceId = request.getIds(); log.info(String.format("Move adapt tree [start] %s from parent: %s to %s", referenceId, oldParentId, newParentId)); - + String oldGroupByValue; + if (request.isNewParentIsRootType()) { + // if new parent id is a Trip, then we need to keep back his groupBy value + NavigationTreeConfig config = tree.getModel().getConfig(); + oldGroupByValue = tree.getModel().getDataSourcesManager().getMainDataSource().getRootOpenableService().getGroupByValue(config.getGroupByName(), config.getGroupByFlavor(), newParentId.getId()); + } else { + oldGroupByValue = null; + } Set<String> newIds; try { newIds = requestConsumer.apply(request, newParentId, referenceId); @@ -100,7 +108,7 @@ public class MoveExecutor { MoveTreeAdapter<?, ?, ?> moveTreeAdapter = this.treeAdapter.apply(request); try { - SwingUtilities.invokeAndWait(() -> moveTreeAdapter.adaptTree(request, tree, newIds)); + SwingUtilities.invokeAndWait(() -> moveTreeAdapter.adaptTree(request, tree, newIds, oldGroupByValue)); } catch (InterruptedException | InvocationTargetException e) { throw new ObserveSwingTechnicalException(e.getCause()); } ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/MoveTreeAdapter.java ===================================== @@ -22,8 +22,10 @@ package fr.ird.observe.client.datasource.editor.api.content.actions.move; * #L% */ +import fr.ird.observe.client.datasource.editor.api.content.data.rlist.ContentRootListUINavigationNode; import fr.ird.observe.client.datasource.editor.api.navigation.NavigationTree; import fr.ird.observe.client.datasource.editor.api.navigation.tree.NavigationNode; +import fr.ird.observe.navigation.tree.navigation.NavigationTreeConfig; import fr.ird.observe.services.service.data.MoveRequest; import java.util.Objects; @@ -50,24 +52,44 @@ public abstract class MoveTreeAdapter<OldParent extends NavigationNode, NewParen public abstract NewNode addMissingChildren(NewParent newParentNode, String newId); - public final void adaptTree(MoveRequest request, NavigationTree tree, Set<String> newIds) { + public final void adaptTree(MoveRequest request, NavigationTree tree, Set<String> newIds, String oldGroupByValue) { Set<String> ids = request.getIds(); boolean selectTarget = request.isSelectTarget(); boolean multiple = !request.isSingle(); OldParent oldParentNode = getOldParentNode(getIncomingNode()); - NewParent newParentNode = getNewParentNode(oldParentNode, request.getNewParentId().getId()); - NavigationNode nodeToSelect = adaptNewParentNode(newParentNode, multiple || !selectTarget ? null : newIds.iterator().next()); + String newParentId = request.getNewParentId().getId(); + if (request.isNewParentIsRootType()) { + NavigationTreeConfig config = tree.getModel().getConfig(); + String groupByValue = oldParentNode.getContext().getServicesProvider().getRootOpenableService().getGroupByValue(config.getGroupByName(), config.getGroupByFlavor(), newParentId); + if (!Objects.equals(oldGroupByValue, groupByValue)) { + // the navigation must be updated, new parent groupBy value has changed + String[] previousPaths = oldParentNode.toPaths(); + tree.getModel().updateNavigationResult(); + // update the old parent parent node + ContentRootListUINavigationNode oldParentNodeParent = (ContentRootListUINavigationNode) oldParentNode.upToGroupByValue(); + oldParentNodeParent.updateNode(); + // get the new old parent node + oldParentNode = (OldParent) tree.getModel().getNodeFromPath(previousPaths, false); + // need also to update the new parent old parent node + ContentRootListUINavigationNode newParentOldParentNode = (ContentRootListUINavigationNode) tree.getModel().getNodeFromPath(new String[]{oldGroupByValue}, false); + if (newParentOldParentNode != null) { + // only update it if it still exist (the node may have been removed from navigation tree) + newParentOldParentNode.updateNode(); + if (!config.isLoadEmptyGroupBy() && newParentOldParentNode.getChildCount() == 0) { + // the configuration requires that node to be removed + newParentOldParentNode.removeFromParent(); + } + } + } + } + NewParent newParentNode = getNewParentNode(oldParentNode, newParentId); + + // kep old node paths + String[] oldNodePaths = oldParentNode.toPaths(); + NavigationNode nodeToSelect = adaptNewParentNode(tree, newParentNode, multiple || !selectTarget ? null : newIds.iterator().next()); if (!selectTarget) { // stay on old parent node - nodeToSelect = oldParentNode; - } else { - if (multiple) { - // on multiple move select new parent node - nodeToSelect = newParentNode; - } else if (nodeToSelect == null) { - // this can happen if new parent node was not loaded before the service call - nodeToSelect = newParentNode; - } + nodeToSelect = tree.getModel().getNodeFromPath(oldNodePaths, false); } adaptOldParentNode(oldParentNode, ids); doFinalSelect(selectTarget, tree, nodeToSelect); @@ -82,18 +104,17 @@ public abstract class MoveTreeAdapter<OldParent extends NavigationNode, NewParen oldParentNode.reloadNodeDataToRootAndChildren(); } - public final NewNode adaptNewParentNode(NewParent newParentNode, String newId) { + public final NavigationNode adaptNewParentNode(NavigationTree tree, NewParent newParentNode, String newId) { // reload node - newParentNode.reloadNodeDataToRootAndChildren(); - // add new nodes - // refresh ui FIXME:Tree this should be done by addMissingChildren ? - newParentNode.nodeChanged(); - NewNode newNode = addMissingChildren(newParentNode, newId); -// if (newNode!=null) { -// // and reload his parent -// newNode.getParent().reloadNodeData(); -// } - return newNode; + String[] paths = newParentNode.toPaths(); + ContentRootListUINavigationNode newParentOldParentNode = (ContentRootListUINavigationNode) newParentNode.upToGroupByValue(); + newParentOldParentNode.updateNode(); + newParentNode = (NewParent) tree.getModel().getNodeFromPath(paths, false); + if (newId == null) { + return newParentNode; + } + // get new node + return addMissingChildren(newParentNode, newId); } public final void doFinalSelect(boolean selectTarget, NavigationTree tree, NavigationNode nodeToSelect) { ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/layout/MoveLayoutExecutor.java ===================================== @@ -25,6 +25,7 @@ package fr.ird.observe.client.datasource.editor.api.content.actions.move.layout; import fr.ird.observe.client.datasource.editor.api.DataSourceEditor; import fr.ird.observe.client.datasource.editor.api.navigation.NavigationTree; import fr.ird.observe.client.util.ObserveSwingTechnicalException; +import fr.ird.observe.navigation.tree.navigation.NavigationTreeConfig; import fr.ird.observe.services.service.data.MoveLayoutRequest; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -88,11 +89,14 @@ public class MoveLayoutExecutor { String oldParentId = request.getOldParentId(); log.info(String.format("Move adapt tree [start] from parent: %s to %s", oldParentId, newParentId)); + NavigationTreeConfig config = tree.getModel().getConfig(); + String oldGroupByValue = tree.getModel().getDataSourcesManager().getMainDataSource().getRootOpenableService().getGroupByValue(config.getGroupByName(), config.getGroupByFlavor(), newParentId); + requestConsumer.accept(request); MoveLayoutTreeAdapter<?, ?> moveTreeAdapter = treeAdapter.apply(request); try { - SwingUtilities.invokeAndWait(() -> moveTreeAdapter.adaptTree(request, tree)); + SwingUtilities.invokeAndWait(() -> moveTreeAdapter.adaptTree(request, tree, oldGroupByValue)); } catch (InterruptedException | InvocationTargetException e) { throw new ObserveSwingTechnicalException(e.getCause()); } ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/move/layout/MoveLayoutTreeAdapter.java ===================================== @@ -22,6 +22,7 @@ package fr.ird.observe.client.datasource.editor.api.content.actions.move.layout; * #L% */ +import fr.ird.observe.client.datasource.editor.api.content.data.rlist.ContentRootListUINavigationNode; import fr.ird.observe.client.datasource.editor.api.content.data.ropen.ContentRootOpenableUINavigationNode; import fr.ird.observe.client.datasource.editor.api.navigation.NavigationTree; import fr.ird.observe.client.datasource.editor.api.navigation.tree.NavigationNode; @@ -48,15 +49,36 @@ public abstract class MoveLayoutTreeAdapter<ParentNode extends ContentRootOpenab public abstract SourceNode getNodeToSelect(ParentNode parentNode); - public final void adaptTree(MoveLayoutRequest request, NavigationTree tree) { + public final void adaptTree(MoveLayoutRequest request, NavigationTree tree, String oldGroupByValue) { boolean selectTarget = request.isSelectTarget(); ParentNode oldParentNode = oldParentSupplier.get(); NavigationTreeConfig config = tree.getModel().getConfig(); String newParentId = request.getNewParentId(); - //FIXME NPE See https://gitlab.com/ultreiaio/ird-observe/-/issues/2656 String groupByValue = oldParentNode.getContext().getServicesProvider().getRootOpenableService().getGroupByValue(config.getGroupByName(), config.getGroupByFlavor(), newParentId); + if (!Objects.equals(oldGroupByValue, groupByValue)) { + // the navigation must be updated, new parent groupBy value has changed + tree.getModel().updateNavigationResult(); + // update the old parent parent node + ContentRootListUINavigationNode oldParentNodeParent = oldParentNode.getParent(); + oldParentNodeParent.updateNode(); + // get the new old parent node + oldParentNode = (ParentNode) oldParentNodeParent.findChildById(request.getOldParentId()); + + // need also to update the new parent old parent node + ContentRootListUINavigationNode newParentOldParentNode = (ContentRootListUINavigationNode) tree.getModel().getNodeFromPath(new String[]{oldGroupByValue}, false); + if (newParentOldParentNode != null) { + // only update it if it still exist (the node may have been removed from navigation tree) + newParentOldParentNode.updateNode(); + if (!config.isLoadEmptyGroupBy() && newParentOldParentNode.getChildCount() == 0) { + // the configuration requires that node to be removed + newParentOldParentNode.removeFromParent(); + } + } + } else { + + oldParentNode.updateNode(); + } @SuppressWarnings("unchecked") ParentNode newParentNode = (ParentNode) tree.getModel().getNodeFromPath(new String[]{groupByValue, newParentId}, true); - oldParentNode.updateNode(); newParentNode.updateNode(); if (selectTarget) { NavigationNode nodeToSelect = getNodeToSelect(newParentNode); ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/ropen/actions/SaveContentRootOpenableUIAdapter.java ===================================== @@ -30,13 +30,12 @@ import fr.ird.observe.client.datasource.editor.api.content.data.ropen.ContentRoo import fr.ird.observe.client.datasource.editor.api.content.data.ropen.ContentRootOpenableUINavigationNode; import fr.ird.observe.client.datasource.editor.api.navigation.NavigationTree; import fr.ird.observe.client.datasource.editor.api.navigation.NavigationUI; -import fr.ird.observe.client.datasource.editor.api.navigation.NavigationUIHandler; -import fr.ird.observe.client.datasource.editor.api.navigation.tree.NavigationNode; import fr.ird.observe.client.datasource.editor.api.navigation.tree.capability.ReferenceContainerCapability; import fr.ird.observe.client.datasource.editor.api.navigation.tree.root.RootNavigationNode; import fr.ird.observe.dto.data.DataGroupByDto; import fr.ird.observe.dto.data.RootOpenableDto; import fr.ird.observe.dto.reference.DataDtoReference; +import fr.ird.observe.navigation.tree.NavigationResult; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -70,16 +69,13 @@ public class SaveContentRootOpenableUIAdapter<D extends RootOpenableDto, U exten boolean groupByChanged = !Objects.equals(oldGroupByDto.getFilterValue(), newGroupByValue); // We need to inject ot node the new reference (it could does not know the id if not persisted) // As I prefer to use a unique code (for persisted or not, keep it like this) - node = updateReference(dataSourceEditor.getNavigationUI(), node, bean.getId(), oldGroupByDto, groupByChanged ? newGroupByValue : null); + node = updateReference(dataSourceEditor.getNavigationUI(), node, bean.getId(), oldGroupByDto, groupByChanged, newGroupByValue); tree.reSelectSafeNodeThen(node, () -> { dataSourceEditor.getModel().resetFromPreviousUi(ui); if (notPersisted) { tree.expandPath(tree.getSelectionPath()); } - if (!groupByChanged) { - NavigationUIHandler.updateStatistics(dataSourceEditor.getNavigationUI(), 0, 1); - } }); } @@ -87,11 +83,13 @@ public class SaveContentRootOpenableUIAdapter<D extends RootOpenableDto, U exten ContentRootOpenableUINavigationNode node, String id, DataGroupByDto<D> oldGroupByDto, + boolean groupByChanged, String newGroupByValue) { boolean notPersisted = node.getInitializer().isNotPersisted(); - NavigationNode parent = node.getParent(); - boolean groupByChanged = newGroupByValue != null; + ContentRootListUINavigationNode parent = node.getParent(); if (groupByChanged) { + // the navigation must be updated, new parent groupBy value has changed + NavigationResult navigationResult = navigationUI.getTree().getModel().updateNavigationResult(); // groupBy has changed (remove node from parent) RootNavigationNode rootNode = (RootNavigationNode) node.getRoot(); node.removeFromParent(); @@ -99,19 +97,19 @@ public class SaveContentRootOpenableUIAdapter<D extends RootOpenableDto, U exten boolean removeGroupBy = parent.getChildCount() == 0 && !rootNode.getInitializer().getRequest().isLoadEmptyGroupBy(); if (removeGroupBy) { parent.removeFromParent(); - NavigationUIHandler.updateStatistics(navigationUI, -1, 0); } else { // update old parent to root parent.reloadNodeDataToRoot(); } // find parent - parent = rootNode.findChildById(newGroupByValue); + parent = (ContentRootListUINavigationNode) rootNode.findChildById(newGroupByValue); if (parent == null) { // must create it (will update navigation result) - parent = rootNode.getCapability().createMissingNode(newGroupByValue); + DataGroupByDto<?> reference = navigationResult.getGroupBy(newGroupByValue); + parent = rootNode.getCapability().insertChildNode(reference); } else { // update parent reference in node - DataGroupByDto<?> parentReference = ((ContentRootListUINavigationNode) parent).getInitializer().getParentReference(); + DataGroupByDto<?> parentReference = parent.getInitializer().getParentReference(); node.getInitializer().setParentReference(() -> parentReference); } } @@ -129,7 +127,7 @@ public class SaveContentRootOpenableUIAdapter<D extends RootOpenableDto, U exten node.populateChildrenIfNotLoaded(); } - ReferenceContainerCapability<?> capability = (ReferenceContainerCapability<?>) parent.getCapability(); + ReferenceContainerCapability<?> capability = parent.getCapability(); if (groupByChanged) { if (parent.isNotLoaded()) { // will load all children even the updated one ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/navigation/NavigationUIHandler.java ===================================== @@ -50,18 +50,6 @@ public class NavigationUIHandler implements UIHandler<NavigationUI>, WithClientU private Set<ReloadAction> actionsToReload; private NavigationUIInitializer initializer; - public static void updateStatistics(NavigationUI ui, int groupByCountDiff, int dataCountDiff) { - NavigationResult navigationResult = ui.getTree().getRootNode().getInitializer().getNavigationResult(); - TreeConfigUIHandler.updateStatistics(navigationResult.getRequest(), - ui.getTree().getModel().getGroupByHelper(), - () -> navigationResult.getGroupByCount() + groupByCountDiff, - () -> navigationResult.getGroupByDataCount() + dataCountDiff, - () -> navigationResult.getDataCount() + dataCountDiff, - ui::setStatisticsText, - ui::setStatisticsTip, - ui.getStatisticsLabel()::setIcon); - } - public static void updateStatistics(NavigationUI ui) { NavigationResult navigationResult = ui.getTree().getRootNode().getInitializer().getNavigationResult(); TreeConfigUIHandler.updateStatistics(navigationResult.getRequest(), ===================================== client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/observation/RouteListUI.jaxx ===================================== @@ -28,5 +28,5 @@ <RouteListUIModel id='model' constructorParams='@override:getNavigationSource(this)'/> <RouteListUIModelStates id='states'/> <TripDto id='bean'/> - <JMenuItem id='moveAll' styleClass='editableAndNotModified'/> + <JMenuItem id='moveAll' styleClass='editableAndShowDataAndNotEmpty'/> </fr.ird.observe.client.datasource.editor.api.content.data.list.ContentListUI> ===================================== toolkit/api-services/src/main/java/fr/ird/observe/services/service/data/MoveRequest.java ===================================== @@ -24,6 +24,7 @@ package fr.ird.observe.services.service.data; import fr.ird.observe.dto.BusinessDto; import fr.ird.observe.dto.ToolkitIdDtoBean; +import fr.ird.observe.dto.data.RootOpenableDto; import java.util.Set; import java.util.StringJoiner; @@ -92,6 +93,10 @@ public class MoveRequest { return ids.size() == 1; } + public boolean isNewParentIsRootType() { + return RootOpenableDto.class.isAssignableFrom(getParentTargetDtoType()); + } + @Override public String toString() { return new StringJoiner(", ", MoveRequest.class.getSimpleName() + "[", "]") View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/5898d698338b3b12bb4dea34… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/5898d698338b3b12bb4dea34… You're receiving this email because of your account on gitlab.com.
1 0
0 0
[Git][ultreiaio/ird-observe][develop-9.0.x] 2 commits: tck - ajout country 0#0 pour faciliter le test de suppression
by Tony CHEMIT (@tchemit) 01 Apr '23

01 Apr '23
Tony CHEMIT pushed to branch develop-9.0.x at ultreiaio / ird-observe Commits: 3b96ba25 by Tony Chemit at 2023-03-30T17:43:12+02:00 tck - ajout country 0#0 pour faciliter le test de suppression - - - - - 537471eb by Tony Chemit at 2023-04-01T10:40:44+02:00 fix ReplicateRequestCallback accept method (dataType is an entity type and test is on dto type...) - See #2656 - - - - - 5 changed files: - core/persistence/migration/src/main/resources/db/migration/v9/9.0/100-tck_add_referential_for_delete_test-common.sql - core/persistence/test/src/test/resources/fixtures/persistence/table_count/referential.properties - core/services/test/src/main/java/fr/ird/observe/services/service/DataSourceServiceFixtures.java - model/src/main/resources/fixtures/global.properties - model/src/main/resources/fixtures/variables.properties Changes: ===================================== core/persistence/migration/src/main/resources/db/migration/v9/9.0/100-tck_add_referential_for_delete_test-common.sql ===================================== @@ -40,3 +40,5 @@ INSERT INTO ps_common.schoolType(topiaId, topiaCreateDate, topiaVersion, lastUpd INSERT INTO ps_localmarket.batchComposition(topiaId, topiaCreateDate, topiaVersion, lastUpdateDate, code, uri, homeId, needComment, status, label1, label2, label3, label4, label5, label6, label7, label8) VALUES ('fr.ird.referential.ps.localmarket.BatchComposition#0#0', '2021-09-17 00:00:00.0', 0, '2021-09-17 00:00:00.0', '22', NULL, NULL, false, 1, 'Mono specific (no survey) 2', 'Mono spécifique (pas de sondage) 2', 'Mono specific (no survey) #TODO 2', NULL, NULL, NULL, NULL, NULL); -- BatchWeightType INSERT INTO ps_localmarket.batchWeightType(topiaId, topiaCreateDate, topiaVersion, lastUpdateDate, code, uri, homeId, needComment, status, label1, label2, label3, label4, label5, label6, label7, label8) VALUES ('fr.ird.referential.ps.localmarket.BatchWeightType#0#0', '2021-09-17 00:00:00.0', 0, '2021-09-17 00:00:00.0', '12', NULL, NULL, false, 1, 'Weighing 2', 'Pesée 2', 'Weighing #TODO 2', NULL, NULL, NULL, NULL, NULL); +-- Country +INSERT INTO observe_common.country(topiaid, topiaversion, topiacreatedate, lastupdatedate, code, uri, needcomment, status, label1, label2, label3, label4, label5, label6, label7, label8, iso2code, iso3code) VALUES ('fr.ird.referential.common.Country#0#0', 5, '2011-06-15 00:00:00.043', '2016-11-26 08:35:40.72', '666', NULL, false, 1, 'Tck data', 'Tck data Fr', 'Tck data Es', NULL, NULL, NULL, NULL, NULL, '__', '___'); \ No newline at end of file ===================================== core/persistence/test/src/test/resources/fixtures/persistence/table_count/referential.properties ===================================== @@ -19,7 +19,7 @@ # <http://www.gnu.org/licenses/gpl-3.0.html>. # #L% ### -common.country=90 +common.country=91 common.dataQuality=5 common.fpaZone=45 common.gear=28 ===================================== core/services/test/src/main/java/fr/ird/observe/services/service/DataSourceServiceFixtures.java ===================================== @@ -145,32 +145,52 @@ public class DataSourceServiceFixtures extends GeneratedDataSourceServiceFixture } protected void produceMoveSqlScript(DataSourceService service, boolean pg) { - String psObsRouteId = getVariable(getVariableName(fr.ird.observe.dto.data.ps.observation.RouteDto.class)); - String psObsActivityId = getVariable(getVariableName(fr.ird.observe.dto.data.ps.observation.ActivityDto.class)); + String psObsRouteVariable = getVariableName(fr.ird.observe.dto.data.ps.observation.RouteDto.class); + String psObsRouteId = getVariable(psObsRouteVariable); + String psObsRouteIdTarget = getVariable(psObsRouteVariable+".move"); + String psObsActivityVariable = getVariableName(fr.ird.observe.dto.data.ps.observation.ActivityDto.class); + String psObsActivityId = getVariable(psObsActivityVariable); + String psObsActivityIdTarget = getVariable(psObsActivityVariable+".move"); String psObsSetId = getVariable(getVariableName(fr.ird.observe.dto.data.ps.observation.SetDto.class)); - String psLogbookRouteId = getVariable(getVariableName(fr.ird.observe.dto.data.ps.logbook.RouteDto.class)); + + String psLogbookRouteVariable = getVariableName(fr.ird.observe.dto.data.ps.logbook.RouteDto.class); + String psLogbookRouteId = getVariable(psLogbookRouteVariable); + String psLogbookRouteIdTarget = getVariable(psLogbookRouteVariable+".move"); String psLogbookActivityId = getVariable(getVariableName(fr.ird.observe.dto.data.ps.logbook.ActivityDto.class)); - String llObsActivityId = getVariable(getVariableName(fr.ird.observe.dto.data.ll.observation.ActivityDto.class)); + String llObsActivityVariable = getVariableName(fr.ird.observe.dto.data.ll.observation.ActivityDto.class); + String llObsActivityId = getVariable(llObsActivityVariable); + String llObsActivityIdTarget = getVariable(llObsActivityVariable+".move"); + String llObSetId = getVariable(getVariableName(fr.ird.observe.dto.data.ll.observation.SetDto.class)); - String llLogbookActivityId = getVariable(getVariableName(fr.ird.observe.dto.data.ll.logbook.ActivityDto.class)); + String llLogbookActivityVariable = getVariableName(fr.ird.observe.dto.data.ll.logbook.ActivityDto.class); + String llLogbookActivityId = getVariable(llLogbookActivityVariable); + String llLogbookActivityIdTarget = getVariable(llLogbookActivityVariable+".move"); + String llLogbookSetId = getVariable(getVariableName(fr.ird.observe.dto.data.ll.logbook.SetDto.class)); - String psCommonTripId = getPsCommonTripId(); - String llCommonTripId = getLlCommonTripId(); + String psCommTripVariable = getVariableName(fr.ird.observe.dto.data.ps.common.TripDto.class); + + String psCommonTripId = getVariable(psCommTripVariable); + String psCommonTripIdTarget = getVariable(psCommTripVariable +".move"); + + String llCommTripVariable = getVariableName(fr.ird.observe.dto.data.ll.common.TripDto.class); + String llCommonTripId = getVariable(llCommTripVariable); + String llCommonTripIdTarget = getVariable(llCommTripVariable +".move"); + + testRequest(service, new ReplicateRequest(pg, psCommonTripId, psCommonTripIdTarget, "fr.ird.observe.entities.data.ps.observation.Route", psObsRouteId)); - testRequest(service, new ReplicateRequest(pg, psCommonTripId, psCommonTripId + "00", "fr.ird.observe.entities.data.ps.observation.Route", psObsRouteId)); - testRequest(service, new ReplicateRequest(pg, psObsRouteId, psObsRouteId + "00", "fr.ird.observe.entities.data.ps.observation.Activity", psObsActivityId)); - testRequest(service, new ReplicateRequest(pg, psObsActivityId, psObsActivityId + "00", "fr.ird.observe.entities.data.ps.observation.Set", psObsSetId)); + testRequest(service, new ReplicateRequest(pg, psObsRouteId, psObsRouteIdTarget, "fr.ird.observe.entities.data.ps.observation.Activity", psObsActivityId)); + testRequest(service, new ReplicateRequest(pg, psObsActivityId, psObsActivityIdTarget, "fr.ird.observe.entities.data.ps.observation.Set", psObsSetId)); - testRequest(service, new ReplicateRequest(pg, psCommonTripId, psCommonTripId + "00", "fr.ird.observe.entities.data.ps.logbook.Route", psLogbookRouteId)); - testRequest(service, new ReplicateRequest(pg, psLogbookRouteId, psLogbookRouteId + "00", "fr.ird.observe.entities.data.ps.logbook.Activity", psLogbookActivityId)); + testRequest(service, new ReplicateRequest(pg, psCommonTripId, psCommonTripIdTarget, "fr.ird.observe.entities.data.ps.logbook.Route", psLogbookRouteId)); + testRequest(service, new ReplicateRequest(pg, psLogbookRouteId, psLogbookRouteIdTarget, "fr.ird.observe.entities.data.ps.logbook.Activity", psLogbookActivityId)); - testRequest(service, new ReplicateRequest(pg, llCommonTripId, llCommonTripId + "00", "fr.ird.observe.entities.data.ll.observation.Activity", llObsActivityId)); - testRequest(service, new ReplicateRequest(pg, llObsActivityId, llObsActivityId + "00", "fr.ird.observe.entities.data.ll.observation.Set", llObSetId)); + testRequest(service, new ReplicateRequest(pg, llCommonTripId, llCommonTripIdTarget, "fr.ird.observe.entities.data.ll.observation.Activity", llObsActivityId)); + testRequest(service, new ReplicateRequest(pg, llObsActivityId, llObsActivityIdTarget, "fr.ird.observe.entities.data.ll.observation.Set", llObSetId)); - testRequest(service, new ReplicateRequest(pg, llCommonTripId, llCommonTripId + "00", "fr.ird.observe.entities.data.ll.logbook.Activity", llLogbookActivityId)); - testRequest(service, new ReplicateRequest(pg, llLogbookActivityId, llLogbookActivityId + "00", "fr.ird.observe.entities.data.ll.logbook.Set", llLogbookSetId)); + testRequest(service, new ReplicateRequest(pg, llCommonTripId, llCommonTripIdTarget, "fr.ird.observe.entities.data.ll.logbook.Activity", llLogbookActivityId)); + testRequest(service, new ReplicateRequest(pg, llLogbookActivityId, llLogbookActivityIdTarget, "fr.ird.observe.entities.data.ll.logbook.Set", llLogbookSetId)); } //FIXME Add tests for replicatePartial, delete and deletePartial ===================================== model/src/main/resources/fixtures/global.properties ===================================== @@ -25,4 +25,4 @@ REFERENCE_DATA_COUNT=66 ENTITIES_LIMIT_SIZE=100 # fr.ird.observe.services.service.referential.ReferentialService # fr.ird.observe.services.local.service.referential.DifferentialModelTest -REFERENTIAL_COUNT=4094 +REFERENTIAL_COUNT=4095 ===================================== model/src/main/resources/fixtures/variables.properties ===================================== @@ -22,9 +22,11 @@ data.ll.common.GearUseFeatures.id=fr.ird.data.ll.common.GearUseFeatures#1612699679823#0.5458656018490842 data.ll.common.GearUseFeaturesMeasurement.id=fr.ird.data.ll.common.GearUseFeaturesMeasurement#1612699679825#0.11912898889431767 data.ll.common.Trip.id=fr.ird.data.ll.common.Trip#1573218053521#0.35390398604784334 +data.ll.common.Trip.id.move=fr.ird.data.ll.common.Trip#1547805002869#0.37785124313873586 data.ll.landing.Landing.id=fr.ird.data.ll.landing.Landing#1464000000000#0.00017977 data.ll.landing.LandingPart.id=fr.ird.data.ll.landing.LandingPart#1609975393941#0.412674413528293 data.ll.logbook.Activity.id=fr.ird.data.ll.logbook.Activity#1464000000000#0.01093484 +data.ll.logbook.Activity.id.move=fr.ird.data.ll.logbook.Activity#1464000000000#0.02093485 data.ll.logbook.ActivitySample.id=fr.ird.data.ll.logbook.Sample#1464000000000#0.00036654 data.ll.logbook.BaitsComposition.id=fr.ird.data.ll.logbook.BaitsComposition#1619857303896#0.6134138605054349 data.ll.logbook.BranchlinesComposition.id=fr.ird.data.ll.logbook.BranchlinesComposition#1619857303908#0.463973082762536 @@ -35,6 +37,7 @@ data.ll.logbook.Sample.id=fr.ird.data.ll.logbook.Sample#1464000000000#0.00036655 data.ll.logbook.SamplePart.id=fr.ird.data.ll.logbook.SamplePart#1610199320689#0.0111575757618994 data.ll.logbook.Set.id=fr.ird.data.ll.logbook.Set#1464000000000#0.01093484 data.ll.observation.Activity.id=fr.ird.data.ll.observation.Activity#1538025383462#0.7048860714573149 +data.ll.observation.Activity.id.move=fr.ird.data.ll.observation.Activity#1538113373974#0.18854771823362426 data.ll.observation.BaitsComposition.id=fr.ird.data.ll.observation.BaitsComposition#1538025750031#0.9637636762242816 data.ll.observation.Basket.id=fr.ird.data.ll.observation.Basket#1613391727265#0.2552774405657089 data.ll.observation.Branchline.id=fr.ird.data.ll.observation.Branchline#1613391727344#0.8268423721739928 @@ -52,6 +55,7 @@ data.ll.observation.WeightMeasure.id=fr.ird.data.ll.observation.WeightMeasure#16 data.ps.common.GearUseFeatures.id=fr.ird.data.ps.common.GearUseFeatures#1612698996131#0.6058958440089384 data.ps.common.GearUseFeaturesMeasurement.id=fr.ird.data.ps.common.GearUseFeaturesMeasurement#1612698996149#0.4415127885939093 data.ps.common.Trip.id=fr.ird.data.ps.common.Trip#1553970328158#0.44863535394269627 +data.ps.common.Trip.id.move=fr.ird.data.ps.common.Trip#1573473170279#0.39901519164877486 data.ps.landing.Landing.id=fr.ird.data.ps.landing.Landing#1616955391466#0.9083548924412933 data.ps.localmarket.Batch.id=fr.ird.data.ps.localmarket.Batch#1617103690104#0.11538487864349034 data.ps.localmarket.Sample.id=fr.ird.data.ps.localmarket.Sample#1616832487726#0.257522479716059 @@ -64,6 +68,7 @@ data.ps.logbook.Catch.id=fr.ird.data.ps.logbook.Catch#1616768024297#0.2863597930 data.ps.logbook.FloatingObject.id=fr.ird.data.ps.logbook.FloatingObject#1616955224271#0.8748844202241 data.ps.logbook.FloatingObjectPart.id=fr.ird.data.ps.logbook.FloatingObjectPart#1616955312002#0.004817068771328259 data.ps.logbook.Route.id=fr.ird.data.ps.logbook.Route#1616767950667#0.2733836567509864 +data.ps.logbook.Route.id.move=fr.ird.data.ps.logbook.Route#1616767950667#0.2733836567509865 data.ps.logbook.Sample.id=fr.ird.data.ps.logbook.Sample#1616768092884#0.8805004437915559 data.ps.logbook.SampleActivity.id=fr.ird.data.ps.logbook.SampleActivity#1612861310013#0.9926675881926301 data.ps.logbook.SampleSpecies.id=fr.ird.data.ps.logbook.SampleSpecies#1617096981782#0.17042072657028862 @@ -71,6 +76,7 @@ data.ps.logbook.SampleSpeciesMeasure.id=fr.ird.data.ps.logbook.SampleSpeciesMeas data.ps.logbook.TransmittingBuoy.id=fr.ird.data.ps.logbook.TransmittingBuoy#1616955224272#0.1758599871793043 data.ps.logbook.WellPlan.id=fr.ird.data.ps.logbook.WellPlan#1616768075749#0.1331568688022804 data.ps.observation.Activity.id=fr.ird.data.ps.observation.Activity#1554113237260#0.6013473195166136 +data.ps.observation.Activity.id.move=fr.ird.data.ps.observation.Activity#1554113237260#0.6013473195166137 data.ps.observation.Catch.id=fr.ird.data.ps.observation.Catch#1554119972110#0.2402835209929618 data.ps.observation.FloatingObject.id=fr.ird.data.ps.observation.FloatingObject#1612860069119#0.061511249860604966 data.ps.observation.FloatingObjectPart.id=fr.ird.data.ps.observation.FloatingObjectPart#1612860082601#0.30983583751473864 @@ -78,13 +84,14 @@ data.ps.observation.NonTargetCatchRelease.id=fr.ird.data.ps.observation.NonTarge data.ps.observation.ObjectObservedSpecies.id=fr.ird.data.ps.observation.ObjectObservedSpecies#1612860141918#0.8897715192745859 data.ps.observation.ObjectSchoolEstimate.id=fr.ird.data.ps.observation.ObjectSchoolEstimate#1612860112430#0.9202212602076519 data.ps.observation.Route.id=fr.ird.data.ps.observation.Route#1554106229992#0.7639861071473422 +data.ps.observation.Route.id.move=fr.ird.data.ps.observation.Route#1554712844284#0.10553716343500474 data.ps.observation.Sample.id=fr.ird.data.ps.observation.Sample#1612861249115#0.09925784341428623 data.ps.observation.SampleMeasure.id=fr.ird.data.ps.observation.SampleMeasure#1612861249139#0.99644487513718 data.ps.observation.SchoolEstimate.id=fr.ird.data.ps.observation.SchoolEstimate#1612860210852#0.6866668025183136 data.ps.observation.Set.id=fr.ird.data.ps.observation.Set#1554119935526#0.45507383777180943 data.ps.observation.TransmittingBuoy.id=fr.ird.data.ps.observation.TransmittingBuoy#1612860069136#0.39922787297738194 -referential.common.common.Country.id.delete=fr.ird.referential.common.Country#1464000000000#0.00048 referential.common.common.Country.id=fr.ird.referential.common.Country#1239832675593#0.24921769452411147 +referential.common.common.Country.id.delete=fr.ird.referential.common.Country#0#0 referential.common.common.DataQuality.id=fr.ird.referential.common.DataQuality#0#1 referential.common.common.FpaZone.id=fr.ird.referential.common.FpaZone#1239832686122#0.1 referential.common.common.GearCharacteristic.id.delete=fr.ird.referential.common.GearCharacteristic#1239832686124#0.12 View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/690b2b9e1601ff0482e40bbe… -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/690b2b9e1601ff0482e40bbe… You're receiving this email because of your account on gitlab.com.
1 0
0 0
  • ← Newer
  • 1
  • 2
  • 3
  • 4
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.