diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java index 5a070671b..6442a8e81 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java @@ -151,6 +151,7 @@ public class DataManagementPlanManager { } if (items == null) { items = apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().getWithCriteria(dataManagementPlanTableRequest.getCriteria()); + } List roles = new LinkedList<>(); if (!dataManagementPlanTableRequest.getCriteria().isOnlyPublic()) { if (dataManagementPlanTableRequest.getCriteria().getRole() != null) @@ -159,8 +160,11 @@ public class DataManagementPlanManager { } else { authItems = items; } + if (items == null) { totalData = authItems.count(); items = PaginationManager.applyPaging(authItems, dataManagementPlanTableRequest); + } else { + items = authItems; } @@ -532,6 +536,9 @@ public class DataManagementPlanManager { if (dataManagementPlan.getAssociatedUsers().size() == 0) assignUser(newDmp, user); + UUID dmpId = newDmp.getId(); + newDmp.setUsers(new HashSet<>(apiContext.getOperationsContext().getDatabaseRepository().getUserDmpDao().asQueryable().where((builder, root) -> builder.equal(root.get("dmp").get("id"), dmpId)).toList())); + this.updateIndex(newDmp); if (setNotification) { @@ -586,6 +593,8 @@ public class DataManagementPlanManager { datasets.add(dataset); } + this.updateIndex(result); + return result; }