diff --git a/biji-houdaun/src/main/java/com/test/bijihoudaun/controller/MarkdownController.java b/biji-houdaun/src/main/java/com/test/bijihoudaun/controller/MarkdownController.java index 1fbe113..fc73057 100644 --- a/biji-houdaun/src/main/java/com/test/bijihoudaun/controller/MarkdownController.java +++ b/biji-houdaun/src/main/java/com/test/bijihoudaun/controller/MarkdownController.java @@ -2,6 +2,7 @@ package com.test.bijihoudaun.controller; import com.test.bijihoudaun.common.response.R; import com.test.bijihoudaun.entity.MarkdownFile; +import com.test.bijihoudaun.entity.MarkdownFileVO; import com.test.bijihoudaun.service.MarkdownFileService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; @@ -71,8 +72,8 @@ public class MarkdownController { @Operation(summary = "根据分组ID获取Markdown文件") @GetMapping("/grouping/{groupingId}") - public R> getFilesByGroupingId(@PathVariable String groupingId) { - List files = markdownFileService.getFilesByGroupingId(groupingId); + public R> getFilesByGroupingId(@PathVariable String groupingId) { + List files = markdownFileService.getFilesByGroupingId(groupingId); return R.success(files); } @@ -97,8 +98,8 @@ public class MarkdownController { @Operation(summary = "获取最近更新的笔记") @GetMapping("/recent") - public R> getRecentFiles() { - List files = markdownFileService.getRecentFiles(12); + public R> getRecentFiles() { + List files = markdownFileService.getRecentFiles(12); return R.success(files); } } diff --git a/biji-houdaun/src/main/java/com/test/bijihoudaun/entity/MarkdownFileVO.java b/biji-houdaun/src/main/java/com/test/bijihoudaun/entity/MarkdownFileVO.java new file mode 100644 index 0000000..2366a35 --- /dev/null +++ b/biji-houdaun/src/main/java/com/test/bijihoudaun/entity/MarkdownFileVO.java @@ -0,0 +1,10 @@ +package com.test.bijihoudaun.entity; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +@Data +@EqualsAndHashCode(callSuper = true) +public class MarkdownFileVO extends MarkdownFile { + private String groupingName; +} \ No newline at end of file diff --git a/biji-houdaun/src/main/java/com/test/bijihoudaun/mapper/MarkdownFileMapper.java b/biji-houdaun/src/main/java/com/test/bijihoudaun/mapper/MarkdownFileMapper.java index d9c1901..d7f8483 100644 --- a/biji-houdaun/src/main/java/com/test/bijihoudaun/mapper/MarkdownFileMapper.java +++ b/biji-houdaun/src/main/java/com/test/bijihoudaun/mapper/MarkdownFileMapper.java @@ -2,10 +2,27 @@ package com.test.bijihoudaun.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.test.bijihoudaun.entity.MarkdownFile; +import com.test.bijihoudaun.entity.MarkdownFileVO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; @Mapper public interface MarkdownFileMapper extends BaseMapper { - // 自定义方法:根据用户ID获取文件列表 - // List findByUserId(Integer userId); + + @Select("SELECT mf.*, g.grouping as groupingName " + + "FROM markdown_file mf " + + "LEFT JOIN grouping g ON mf.grouping_id = g.id " + + "ORDER BY mf.updated_at DESC " + + "LIMIT #{limit}") + List selectRecentWithGrouping(@Param("limit") int limit); + + @Select("SELECT mf.*, g.grouping as groupingName " + + "FROM markdown_file mf " + + "LEFT JOIN grouping g ON mf.grouping_id = g.id " + + "WHERE mf.grouping_id = #{groupingId} " + + "ORDER BY mf.updated_at DESC") + List selectByGroupingIdWithGrouping(@Param("groupingId") String groupingId); } diff --git a/biji-houdaun/src/main/java/com/test/bijihoudaun/service/MarkdownFileService.java b/biji-houdaun/src/main/java/com/test/bijihoudaun/service/MarkdownFileService.java index 0f5318b..66a8ef0 100644 --- a/biji-houdaun/src/main/java/com/test/bijihoudaun/service/MarkdownFileService.java +++ b/biji-houdaun/src/main/java/com/test/bijihoudaun/service/MarkdownFileService.java @@ -2,6 +2,7 @@ package com.test.bijihoudaun.service; import com.baomidou.mybatisplus.extension.service.IService; import com.test.bijihoudaun.entity.MarkdownFile; +import com.test.bijihoudaun.entity.MarkdownFileVO; import java.util.List; @@ -26,7 +27,7 @@ public interface MarkdownFileService extends IService { * @param groupingId 分组ID * @return 文件列表 */ - List getFilesByGroupingId(String groupingId); + List getFilesByGroupingId(String groupingId); /** * 删除Markdown文件 @@ -63,5 +64,5 @@ public interface MarkdownFileService extends IService { * @param limit 数量 * @return 文件列表 */ - List getRecentFiles(int limit); + List getRecentFiles(int limit); } diff --git a/biji-houdaun/src/main/java/com/test/bijihoudaun/service/impl/MarkdownFileServiceImpl.java b/biji-houdaun/src/main/java/com/test/bijihoudaun/service/impl/MarkdownFileServiceImpl.java index f87df05..54d2b4c 100644 --- a/biji-houdaun/src/main/java/com/test/bijihoudaun/service/impl/MarkdownFileServiceImpl.java +++ b/biji-houdaun/src/main/java/com/test/bijihoudaun/service/impl/MarkdownFileServiceImpl.java @@ -1,9 +1,9 @@ package com.test.bijihoudaun.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.test.bijihoudaun.entity.MarkdownFile; +import com.test.bijihoudaun.entity.MarkdownFileVO; import com.test.bijihoudaun.mapper.MarkdownFileMapper; import com.test.bijihoudaun.service.MarkdownFileService; import com.test.bijihoudaun.util.SnowflakeIdGenerator; @@ -46,11 +46,8 @@ public class MarkdownFileServiceImpl @Override - public List getFilesByGroupingId(String groupingId) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("grouping_id", groupingId) - .orderByDesc("updated_at"); - return this.list(queryWrapper); + public List getFilesByGroupingId(String groupingId) { + return markdownFileMapper.selectByGroupingIdWithGrouping(groupingId); } @Override @@ -88,10 +85,7 @@ public class MarkdownFileServiceImpl } @Override - public List getRecentFiles(int limit) { - Page page = new Page<>(1, limit); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.orderByDesc("updated_at"); - return this.page(page, queryWrapper).getRecords(); + public List getRecentFiles(int limit) { + return markdownFileMapper.selectRecentWithGrouping(limit); } } diff --git a/biji-qianduan/src/components/HomePage.vue b/biji-qianduan/src/components/HomePage.vue index 95bad66..9e1b81d 100644 --- a/biji-qianduan/src/components/HomePage.vue +++ b/biji-qianduan/src/components/HomePage.vue @@ -96,7 +96,7 @@
{{ file.title }} - {{ currentGroupName }} + {{ file.groupingName }}