diff --git a/src/main/java/io/github/xxyopen/novel/controller/front/BookController.java b/src/main/java/io/github/xxyopen/novel/controller/front/BookController.java index 939ac8b..2605719 100644 --- a/src/main/java/io/github/xxyopen/novel/controller/front/BookController.java +++ b/src/main/java/io/github/xxyopen/novel/controller/front/BookController.java @@ -2,10 +2,7 @@ package io.github.xxyopen.novel.controller.front; import io.github.xxyopen.novel.core.constant.ApiRouterConsts; import io.github.xxyopen.novel.core.common.resp.RestResp; -import io.github.xxyopen.novel.dto.resp.BookChapterAboutRespDto; -import io.github.xxyopen.novel.dto.resp.BookContentAboutRespDto; -import io.github.xxyopen.novel.dto.resp.BookInfoRespDto; -import io.github.xxyopen.novel.dto.resp.BookRankRespDto; +import io.github.xxyopen.novel.dto.resp.*; import io.github.xxyopen.novel.service.BookService; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; @@ -58,6 +55,14 @@ public class BookController { return bookService.listRecBooks(bookId); } + /** + * 小说章节列表查询接口 + * */ + @GetMapping("chapterList") + public RestResp> listChapters(Long bookId){ + return bookService.listChapters(bookId); + } + /** * 小说内容相关信息查询接口 * */ diff --git a/src/main/java/io/github/xxyopen/novel/service/BookService.java b/src/main/java/io/github/xxyopen/novel/service/BookService.java index 0bcf025..b4f49db 100644 --- a/src/main/java/io/github/xxyopen/novel/service/BookService.java +++ b/src/main/java/io/github/xxyopen/novel/service/BookService.java @@ -1,10 +1,7 @@ package io.github.xxyopen.novel.service; import io.github.xxyopen.novel.core.common.resp.RestResp; -import io.github.xxyopen.novel.dto.resp.BookChapterAboutRespDto; -import io.github.xxyopen.novel.dto.resp.BookContentAboutRespDto; -import io.github.xxyopen.novel.dto.resp.BookInfoRespDto; -import io.github.xxyopen.novel.dto.resp.BookRankRespDto; +import io.github.xxyopen.novel.dto.resp.*; import java.security.NoSuchAlgorithmException; import java.util.List; @@ -66,4 +63,9 @@ public interface BookService { * 获取下一章节ID * */ RestResp nextChapterId(Long chapterId); + + /** + * 小说章节列表查询 + * */ + RestResp> listChapters(Long bookId); } diff --git a/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java b/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java index 6704d02..1b7807f 100644 --- a/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java +++ b/src/main/java/io/github/xxyopen/novel/service/impl/BookServiceImpl.java @@ -159,6 +159,17 @@ public class BookServiceImpl implements BookService { ); } + @Override + public RestResp> listChapters(Long bookId) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq(DatabaseConsts.BookChapterTable.ColumnEnum.BOOK_ID.getName(), bookId) + .orderByAsc(DatabaseConsts.BookChapterTable.ColumnEnum.CHAPTER_NUM.getName()); + return RestResp.ok(bookChapterMapper.selectList(queryWrapper).stream().map(v -> BookChapterRespDto.builder() + .id(v.getId()) + .chapterName(v.getChapterName()) + .build()).toList()); + } + @Override public RestResp getBookContentAbout(Long chapterId) { // 查询章节信息