You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
851 B
22 lines
851 B
package com.gym.repository;
|
|
|
|
import com.gym.model.Course;
|
|
import org.springframework.data.jpa.repository.JpaRepository;
|
|
import org.springframework.data.jpa.repository.Query;
|
|
import org.springframework.stereotype.Repository;
|
|
import java.time.LocalDateTime;
|
|
import java.util.List;
|
|
|
|
@Repository
|
|
public interface CourseRepository extends JpaRepository<Course, Long> {
|
|
List<Course> findByCoachId(Long coachId);
|
|
List<Course> findByType(String type);
|
|
List<Course> findByStatus(String status);
|
|
List<Course> findByIsAvailableTrue();
|
|
List<Course> findByStartTimeBetween(LocalDateTime start, LocalDateTime end);
|
|
|
|
@Query("SELECT c FROM Course c WHERE c.currentParticipants < c.maxParticipants AND c.isAvailable = true")
|
|
List<Course> findAvailableCourses();
|
|
|
|
List<Course> findByNameContaining(String keyword);
|
|
} |