From 2b1d6507e6de5fa6f2c7257c0d1da1c58c0e39f7 Mon Sep 17 00:00:00 2001 From: tomvahl Date: Wed, 18 Mar 2020 15:17:48 +0100 Subject: [PATCH] fix-search Co-Authored-By: andibuls --- .../mops/gruppen2/service/GroupService.java | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/main/java/mops/gruppen2/service/GroupService.java b/src/main/java/mops/gruppen2/service/GroupService.java index 48bbaab..ede0171 100644 --- a/src/main/java/mops/gruppen2/service/GroupService.java +++ b/src/main/java/mops/gruppen2/service/GroupService.java @@ -72,22 +72,23 @@ public class GroupService { return groups.get(group_id); } - /** - * sucht alle Zeilen in der DB wo die Visibility gleich true ist und wandelt diese in - * eine Liste von Gruppen - * @return - * @throws EventException - */ - // Namensänderung fixen und die Forschleife auslagern - public List getAllGroupWithVisibilityPublic(String user_id) throws EventException { - List group_ids = eventRepository.findGroup_idsWhereVisibility(Boolean.TRUE); - List group_ids_user = eventRepository.findGroup_idsWhereUser_id(user_id); - for (Long group_id: group_ids_user) { + private List removeUserGroups(List group_ids, List user_groups){ + for (Long group_id: user_groups) { if(group_ids.contains(group_id)){ group_ids.remove(group_id); } } - List eventDTOS = eventRepository.findAllEventsOfGroups(group_ids); + return group_ids; + } + + /** + * sucht alle Zeilen in der DB wo die Visibility true ist und entfernt alle Gruppen des Users. + * Erstellt eine Liste aus Gruppen. + * @return + * @throws EventException + */ + public List getAllGroupWithVisibilityPublic(String user_id) throws EventException { + List eventDTOS = eventRepository.findAllEventsOfGroups(removeUserGroups(eventRepository.findGroup_idsWhereVisibility(Boolean.TRUE), eventRepository.findGroup_idsWhereUser_id(user_id))); List events = eventService.translateEventDTOs(eventDTOS); List groups = projectEventList(events); return groups;