lrj
2 天以前 c61d4fe27c97d2ecc907756aa571a4ef14a7b9b6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package com.rongyichuang.carousel.repository;
 
import com.rongyichuang.carousel.entity.Carousel;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
 
import java.util.List;
 
/**
 * 轮播图数据访问层
 */
@Repository
public interface CarouselRepository extends JpaRepository<Carousel, Long> {
 
    /**
     * 根据标题模糊查询轮播图(分页)
     */
    @Query("SELECT c FROM Carousel c WHERE (:title IS NULL OR c.title LIKE %:title%) ORDER BY c.sortOrder ASC, c.createTime DESC")
    Page<Carousel> findByTitleContaining(@Param("title") String title, Pageable pageable);
 
    /**
     * 获取播放列表(按播放顺序排序)
     */
    @Query("SELECT c FROM Carousel c WHERE c.sortOrder IS NOT NULL ORDER BY c.sortOrder ASC")
    List<Carousel> findPlayList();
 
    /**
     * 查询所有轮播图(按播放顺序和创建时间排序)
     */
    @Query("SELECT c FROM Carousel c ORDER BY c.sortOrder ASC, c.createTime DESC")
    List<Carousel> findAllOrderBySortOrder();
}