b18f8b4d1c
- 移除 MindMapNode.sessionNum、filterBySession、getTaskSessions
- 新增 MindMapTreeTool.extractSubtree() 按路径提取子树作为对比基准
- 新增 findClosestNode/getPath/similarityScore 支持节点匹配
- 新增 POST /review/standard-mind-map/{taskNum}/find-node
- recallCompare 使用 focusPath 替代 sessionNum
- ReviewRecallRecordEntity.focusPath 替代 sessionNum
- Flyway V20260706_1: review_recall_records 加 focus_path 列
39 lines
1.7 KiB
Java
39 lines
1.7 KiB
Java
package com.guo.learningprogresstracker.service;
|
|
|
|
import com.google.protobuf.ServiceException;
|
|
import com.guo.learningprogresstracker.dto.response.StudySessionResponse;
|
|
import com.guo.learningprogresstracker.entity.StudyReportFragmentsEntity;
|
|
import com.guo.learningprogresstracker.entity.StudyReportsEntity;
|
|
import com.guo.learningprogresstracker.entity.StudySessionsEntity;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.service.IService;
|
|
import com.guo.learningprogresstracker.exception.ErrorParameterException;
|
|
|
|
import java.time.LocalDateTime;
|
|
import java.util.ArrayList;
|
|
|
|
/**
|
|
* @author guo
|
|
* @description 针对表【study_sessions(记录每次学习会话的具体数据)】的数据库操作Service
|
|
* @createDate 2024-06-09 15:28:48
|
|
*/
|
|
public interface StudySessionsService extends IService<StudySessionsEntity> {
|
|
|
|
StudySessionResponse getNotEndedStudySessionByTaskNum(String taskNum) throws ErrorParameterException;
|
|
|
|
ArrayList<String> getAllFragments(String sessionNum) throws ErrorParameterException;
|
|
|
|
String endedStudySession(String sessionNum, String content) throws ErrorParameterException;
|
|
|
|
void pauseStudySession(String sessionNum, LocalDateTime endTime) throws ErrorParameterException, ServiceException;
|
|
|
|
void continueStudySession(String sessionNum) throws ErrorParameterException, ServiceException;
|
|
|
|
Page<StudyReportFragmentsEntity> getTaskFragments(String taskNum, int page, int size, String keyword);
|
|
|
|
Page<StudyReportsEntity> getTaskReports(String taskNum, int page, int size, String keyword);
|
|
|
|
StudySessionResponse getActiveSession(String excludeTaskNum);
|
|
}
|