From 4c5bf30ea8a48c6c8eb2d6f4b378e67be692b9e2 Mon Sep 17 00:00:00 2001 From: "bojana.marojevikj" <bojana.marojevikj@finki.ukim.mk> Date: Tue, 4 Mar 2025 12:25:54 +0100 Subject: [PATCH] get next week consultations by professor --- .../konsultacii/repository/ConsultationRepository.java | 5 +++++ .../service/implementation/ConsultationServiceImpl.java | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/mk/ukim/finki/konsultacii/repository/ConsultationRepository.java b/src/main/java/mk/ukim/finki/konsultacii/repository/ConsultationRepository.java index ca3924c..ddbed8e 100644 --- a/src/main/java/mk/ukim/finki/konsultacii/repository/ConsultationRepository.java +++ b/src/main/java/mk/ukim/finki/konsultacii/repository/ConsultationRepository.java @@ -1,9 +1,11 @@ package mk.ukim.finki.konsultacii.repository; import mk.ukim.finki.konsultacii.model.Consultation; +import mk.ukim.finki.konsultacii.model.enumerations.ConsultationStatus; import mk.ukim.finki.konsultacii.model.enumerations.ConsultationType; import mk.ukim.finki.konsultacii.model.projections.RegularConsultationTermProjection; import mk.ukim.finki.konsultacii.model.projections.UserAttendanceProjection; +import org.springframework.cglib.core.Local; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; @@ -43,6 +45,9 @@ public interface ConsultationRepository extends JpaSpecificationRepository<Consu List<Consultation> findByProfessorId(String professorId); + List<Consultation> findByProfessorIdAndOneTimeDateBetweenAndStatus(String professorId, LocalDate startDate, + LocalDate endDate, ConsultationStatus status); + List<Consultation> findAllByProfessor_IdAndTypeAndWeeklyDayOfWeekAndStartTimeAndEndTimeAndOneTimeDateAfter( String professorId, ConsultationType type, diff --git a/src/main/java/mk/ukim/finki/konsultacii/service/implementation/ConsultationServiceImpl.java b/src/main/java/mk/ukim/finki/konsultacii/service/implementation/ConsultationServiceImpl.java index cff7e54..1795eb2 100644 --- a/src/main/java/mk/ukim/finki/konsultacii/service/implementation/ConsultationServiceImpl.java +++ b/src/main/java/mk/ukim/finki/konsultacii/service/implementation/ConsultationServiceImpl.java @@ -83,7 +83,11 @@ public class ConsultationServiceImpl implements ConsultationService { public List<ConsultationResponseDto> getConsultationsByProfessor(String professorId) { DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("dd-MM-yyyy"); - return consultationRepository.findByProfessorId(professorId) + LocalDate today = LocalDate.now(); + LocalDate nextWeek = today.plusWeeks(1); + + return consultationRepository.findByProfessorIdAndOneTimeDateBetweenAndStatus(professorId, today, + nextWeek, ConsultationStatus.ACTIVE) .stream() .map(consultation -> { var startDateTime = consultation.getOneTimeDate().atTime(consultation.getStartTime()); -- GitLab