From 75942ecc2e438012c5ea876715966ace593565a0 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期五, 11 四月 2025 15:17:41 +0800 Subject: [PATCH] 部分代码 --- ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStoryServiceImpl.java | 41 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 40 insertions(+), 1 deletions(-) diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStoryServiceImpl.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStoryServiceImpl.java index eea74cb..ad566d5 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStoryServiceImpl.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStoryServiceImpl.java @@ -2,13 +2,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.study.domain.TStory; +import com.ruoyi.study.domain.TStoryListen; import com.ruoyi.study.dto.SubjectQuery; import com.ruoyi.study.mapper.TStoryMapper; import com.ruoyi.study.service.ITStoryService; import com.ruoyi.study.vo.SubjectVO; import org.springframework.stereotype.Service; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; /** * <p> @@ -25,4 +27,41 @@ public List<SubjectVO> listAll(SubjectQuery query) { return this.baseMapper.listAll(query); } + + @Override + public List<TStory> lookPictureDbu(TStoryListen storyListen, int type) { + List<TStory> storyList = new ArrayList<>(); + List<String> list; + // 分类 + String sort; + if (0 == type) { + list = Arrays.stream(storyListen.getLookStory().split(",")).collect(Collectors.toList()); + sort = storyListen.getLookSort(); + } else { + list = Arrays.stream(storyListen.getStory().split(",")).collect(Collectors.toList()); + sort = storyListen.getSort(); + } + List<String> collect = Arrays.stream(sort.split(",")).collect(Collectors.toList()); + // 获取图片及语音集合 + for (int i = 0; i < list.size(); i++) { + String s = list.get(i); + TStory story = this.lambdaQuery().eq(TStory::getId, s).eq(TStory::getDisabled, 0).one(); + String sortIndex = collect.get(i); + story.setSort(Integer.parseInt(sortIndex)); + storyList.add(story); + } + // 根据配置的顺序进行排序,使用 Comparator 对象进行排序 + storyList.sort((story1, story2) -> { + // 首先比较 sort 字段 + int sortComparison = Integer.compare(story1.getSort(), story2.getSort()); + if (sortComparison != 0) { + // sort 不相等,按 sort 升序排序 + return sortComparison; + } else { + // 如果 sort 相等,则比较 createTime 字段 + return story1.getCreateTime().compareTo(story2.getCreateTime()); + } + }); + return storyList; + } } -- Gitblit v1.7.1