From df96d40a0e9715f6ace6ca0960cf3fc3cd544b6a Mon Sep 17 00:00:00 2001 From: chenghuan Date: Thu, 6 Aug 2026 17:44:27 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E8=8E=B7=E5=8F=96=E8=AF=BE?= =?UTF-8?q?=E7=A8=8B=E4=B8=8B=E4=B8=80=E7=AB=A0=E8=8A=82=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E9=80=9A=E8=BF=87=E5=88=97=E8=A1=A8=E7=B4=A2=E5=BC=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CourseCatalogueChapterServiceImpl.java | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java b/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java index b7e30c0..96a66c7 100644 --- a/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java +++ b/src/main/java/com/peanut/modules/sociology/service/impl/CourseCatalogueChapterServiceImpl.java @@ -86,18 +86,21 @@ public class CourseCatalogueChapterServiceImpl extends ServiceImpl getNextChapterDetail(Integer chapterId) { CourseCatalogueChapterEntity currentChapter = this.getById(chapterId); - if (currentChapter==null) return null; + if (currentChapter == null) { + return null; + } - CourseCatalogueChapterEntity nextChapter = this.getOne( - new LambdaQueryWrapper() - .eq(CourseCatalogueChapterEntity::getCatalogueId, currentChapter.getCatalogueId()) - .gt(CourseCatalogueChapterEntity::getSort, currentChapter.getSort() ) - .orderByAsc(CourseCatalogueChapterEntity::getSort) - .last("limit 1") - ); - if (nextChapter==null) return null; - - return getChapterDetail(nextChapter.getId()); + // 复用目录章节列表,保证下一章顺序与列表接口完全一致 + List chapterList = getCourseCatalogueChapterList(currentChapter.getCatalogueId()); + for (int i = 0; i < chapterList.size(); i++) { + if (chapterId.equals(chapterList.get(i).getId())) { + if (i + 1 >= chapterList.size()) { + return null; + } + return getChapterDetail(chapterList.get(i + 1).getId()); + } + } + return null; }