diff --git a/src/main/java/mops/gruppen2/repository/EventRepository.java b/src/main/java/mops/gruppen2/repository/EventRepository.java index bb9947b..87029c1 100644 --- a/src/main/java/mops/gruppen2/repository/EventRepository.java +++ b/src/main/java/mops/gruppen2/repository/EventRepository.java @@ -1,9 +1,18 @@ package mops.gruppen2.repository; import mops.gruppen2.domain.EventDTO; +import org.springframework.data.jdbc.repository.query.Query; import org.springframework.data.repository.CrudRepository; +import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public interface EventRepository extends CrudRepository { + @Query("select distinct group_id where user_id =:id") + List findGroup_idsWhereUser_id(@Param("id") Long user_id); + + @Query("select * where group_id =:id") + List findEventDTOByGroup_id(@Param("id") Long group_id); } diff --git a/src/main/java/mops/gruppen2/service/GroupService.java b/src/main/java/mops/gruppen2/service/GroupService.java index c9ab19d..d08b532 100644 --- a/src/main/java/mops/gruppen2/service/GroupService.java +++ b/src/main/java/mops/gruppen2/service/GroupService.java @@ -1,12 +1,13 @@ package mops.gruppen2.service; -import lombok.EqualsAndHashCode; +import mops.gruppen2.domain.EventDTO; import mops.gruppen2.domain.Exceptions.EventException; import mops.gruppen2.domain.Exceptions.GroupDoesNotExistException; import mops.gruppen2.domain.Group; import mops.gruppen2.domain.event.CreateGroupEvent; import mops.gruppen2.domain.event.DeleteGroupEvent; import mops.gruppen2.domain.event.Event; +import mops.gruppen2.repository.EventRepository; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -18,9 +19,20 @@ import java.util.Map; public class GroupService { private final EventService eventService; + private final EventRepository eventRepository; - public GroupService(EventService eventService) { + public GroupService(EventService eventService, EventRepository eventRepository) { this.eventService = eventService; + this.eventRepository = eventRepository; + } + + public List getGroupEvents(List group_ids) { + List eventDTOS = new ArrayList<>(); + List events = new ArrayList<>(); + for (Long group_id: group_ids) { + eventDTOS.addAll(eventRepository.findEventDTOByGroup_id(group_id)); + } + return null; } public List projectEventList(Map groupMap, List events) throws EventException { diff --git a/src/main/java/mops/gruppen2/service/UserService.java b/src/main/java/mops/gruppen2/service/UserService.java new file mode 100644 index 0000000..e296b67 --- /dev/null +++ b/src/main/java/mops/gruppen2/service/UserService.java @@ -0,0 +1,25 @@ +package mops.gruppen2.service; + +import mops.gruppen2.domain.EventDTO; +import mops.gruppen2.repository.EventRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Optional; + +@Service +public class UserService { + + final EventRepository eventRepository; + + public UserService(EventRepository eventRepository) { + this.eventRepository = eventRepository; + } + + public List getUserGroups(Long user_id) { + List group_ids = eventRepository.findGroup_idsWhereUser_id(user_id); + + return null; + } +} diff --git a/src/test/java/mops/gruppen2/service/GroupServiceTest.java b/src/test/java/mops/gruppen2/service/GroupServiceTest.java index bde1fc0..a3bdfaa 100644 --- a/src/test/java/mops/gruppen2/service/GroupServiceTest.java +++ b/src/test/java/mops/gruppen2/service/GroupServiceTest.java @@ -1,7 +1,6 @@ package mops.gruppen2.service; import mops.gruppen2.domain.Exceptions.GroupDoesNotExistException; -import mops.gruppen2.domain.Exceptions.UserNotFoundException; import mops.gruppen2.domain.Group; import mops.gruppen2.domain.GroupType; import mops.gruppen2.domain.Visibility; @@ -9,26 +8,24 @@ import mops.gruppen2.domain.event.AddUserEvent; import mops.gruppen2.domain.event.CreateGroupEvent; import mops.gruppen2.domain.event.DeleteGroupEvent; import mops.gruppen2.domain.event.Event; +import mops.gruppen2.repository.EventRepository; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.mockito.configuration.IMockitoConfiguration; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; import static org.assertj.core.api.Assertions.assertThat; -import static org.junit.jupiter.api.Assertions.*; import static org.mockito.Mockito.mock; class GroupServiceTest { GroupService groupService; + EventRepository eventRepository; @BeforeEach public void setUp() { - groupService = new GroupService(mock(EventService.class)); + groupService = new GroupService(mock(EventService.class), eventRepository); } @Test