diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DashBoardManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DashBoardManager.java index 7eaecee3f..16d6f03b5 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DashBoardManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DashBoardManager.java @@ -209,6 +209,7 @@ public class DashBoardManager { QueryableList datasetList; if (principal.getId() != null) { + datasetCriteria.setIsPublic(false); List roles = new LinkedList<>(); dmpList = dataManagementPlanRepository.getAuthenticated(dataManagementPlanRepository.getWithCriteria(dataManagementPlanCriteria), principal.getId(), roles); datasetList = datasetRepository.getAuthenticated(datasetRepository.getWithCriteria(datasetCriteria), user, roles); @@ -227,6 +228,13 @@ public class DashBoardManager { .skip(tableRequest.getDmpOffset()) .take(tableRequest.getLength()) .select(item -> { + item.setDataset( + item.getDataset().stream() + .filter(dataset -> !dataset.getStatus().equals(Dataset.Status.DELETED.getValue()) && !dataset.getStatus().equals(Dataset.Status.CANCELED.getValue())).collect(Collectors.toList()).stream() + .filter(dataset -> dataset.getDmp().getUsers().stream() + .filter(x -> x.getUser().getId().equals(principal.getId())) + .collect(Collectors.toList()).size() > 0) + .collect(Collectors.toSet())); return new RecentDmpModel().fromEntity(item); }));