feat(复习):标准思维导图生成与回忆对比
- 新增 review_standard_mind_maps / review_recall_records 数据表 - BuiltinMindMapGenerator:从报告/残片/应用场景规则生成标准导图 - MindMapAiClient 接口 + RemoteAiMindMapClient 预留 - StandardMindMapService:生成/编辑/重新生成/回忆对比 - 对比算法:标题归一化 + Bigram Jaccard 模糊匹配 - ReviewController 新增 6 个端点 - MindMapTreeTool / MindMapNode / CompareResult 工具类 - 完整单元测试(10 个,全部通过) - 更新 docs/review-module-design.md
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
package com.guo.learningprogresstracker.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Locale;
|
||||
|
||||
@AllArgsConstructor
|
||||
public enum TaskApplicationStatusEnum {
|
||||
TODO("TODO", "待应用"),
|
||||
DOING("DOING", "应用中"),
|
||||
DONE("DONE", "已完成");
|
||||
|
||||
private final String code;
|
||||
private final String description;
|
||||
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public static TaskApplicationStatusEnum fromCodeOrDefault(String code) {
|
||||
if (code == null || code.trim().isEmpty()) {
|
||||
return TODO;
|
||||
}
|
||||
String normalized = code.trim().toUpperCase(Locale.ROOT);
|
||||
return Arrays.stream(values())
|
||||
.filter(status -> status.code.equals(normalized))
|
||||
.findFirst()
|
||||
.orElse(TODO);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user