refactor(前端): 重构登录页面和用户状态管理逻辑 fix(后端): 修复用户密码更新逻辑和错误提示 feat(后端): 实现分页搜索功能并优化文件删除逻辑 perf(前端): 优化笔记编辑器自动保存和状态提示 fix(后端): 增强图片上传安全验证 style(前端): 调整笔记预览页面按钮权限控制 chore: 更新生产环境配置和测试数据库依赖 feat(前端): 添加虚拟列表组件优化性能 fix(前端): 修复笔记编辑器返回逻辑和状态保存 refactor(前端): 优化axios拦截器错误处理逻辑 docs: 更新方法注释和参数说明
84 lines
2.2 KiB
Java
84 lines
2.2 KiB
Java
package com.test.bijihoudaun.service;
|
||
|
||
import com.baomidou.mybatisplus.extension.service.IService;
|
||
import com.test.bijihoudaun.entity.MarkdownFile;
|
||
import com.test.bijihoudaun.entity.MarkdownFileChunk;
|
||
import com.test.bijihoudaun.entity.MarkdownFileVO;
|
||
|
||
import java.util.List;
|
||
|
||
public interface MarkdownFileService extends IService<MarkdownFile> {
|
||
|
||
/**
|
||
* 更新Markdown内容
|
||
* @return 更新后的文件对象
|
||
*/
|
||
MarkdownFile updateMarkdownContent(MarkdownFile markdownFile);
|
||
|
||
/**
|
||
* 根据ID获取Markdown文件
|
||
* @param id 文件ID
|
||
* @param isAuthenticated 是否已认证
|
||
* @return Markdown文件对象
|
||
*/
|
||
MarkdownFile getMarkdownById(Long id, boolean isAuthenticated);
|
||
|
||
|
||
/**
|
||
* 根据分组ID获取Markdown文件
|
||
* @param groupingId 分组ID
|
||
* @return 文件列表
|
||
*/
|
||
List<MarkdownFileVO> getFilesByGroupingId(Long groupingId);
|
||
|
||
/**
|
||
* 删除Markdown文件
|
||
* @param id 文件ID
|
||
* @return 是否删除成功
|
||
*/
|
||
boolean deleteMarkdownFile(Long id);
|
||
|
||
List<MarkdownFile> test();
|
||
|
||
/**
|
||
* 获取所有Markdown文件
|
||
* @return 文件列表
|
||
*/
|
||
List<MarkdownFile> getAllMarkdownFiles();
|
||
|
||
/**
|
||
* 根据标题模糊搜索
|
||
* @param keyword 关键词
|
||
* @param page 页码(从1开始)
|
||
* @param pageSize 每页数量
|
||
* @return 文件列表
|
||
*/
|
||
List<MarkdownFile> searchByTitle(String keyword, int page, int pageSize);
|
||
|
||
/**
|
||
* 更新Markdown文件标题
|
||
* @param id 文件ID
|
||
* @param title 新标题
|
||
* @return 更新后的文件对象
|
||
*/
|
||
MarkdownFile updateMarkdownTitle(Long id, String title);
|
||
|
||
/**
|
||
* 获取最近更新的笔记
|
||
* @param limit 数量
|
||
* @return 文件列表
|
||
*/
|
||
List<MarkdownFileVO> getRecentFiles(int limit);
|
||
|
||
/**
|
||
* 分块加载Markdown文件内容
|
||
* 用于大文件(> 500KB)的分页加载
|
||
* @param id 文件ID
|
||
* @param chunkIndex 块索引(从0开始)
|
||
* @param chunkSize 块大小(字符数),默认10000
|
||
* @param isAuthenticated 是否已认证
|
||
* @return 文件块对象
|
||
*/
|
||
MarkdownFileChunk getMarkdownChunk(Long id, int chunkIndex, int chunkSize, boolean isAuthenticated);
|
||
}
|