新增作文区与 AI 解读开关,修复 CSV 导出。

系统设置可关闭成绩复盘 AI;学生详情增加作文区(OCR/手动题目、方案与范文、历史与 MD 下载);导出改用 UTF-8 文件名响应。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-06-28 17:42:17 +08:00
parent aaa08cdf38
commit 1cb3c7fad5
20 changed files with 1441 additions and 555 deletions
+12 -2
View File
@@ -2,8 +2,9 @@ from fastapi import APIRouter, Depends
from sqlalchemy.orm import Session
from app.core.database import get_db
from app.models.user import SystemSettings
from app.schemas import PublicSettingsOut
from app.core.deps import get_current_user
from app.models.user import SystemSettings, User
from app.schemas import AppFeaturesOut, PublicSettingsOut
router = APIRouter(prefix="/settings", tags=["settings"])
@@ -22,3 +23,12 @@ def get_or_create_settings(db: Session) -> SystemSettings:
def public_settings(db: Session = Depends(get_db)):
row = get_or_create_settings(db)
return PublicSettingsOut(registration_enabled=row.registration_enabled)
@router.get("/app-features", response_model=AppFeaturesOut)
def app_features(
db: Session = Depends(get_db),
_: User = Depends(get_current_user),
):
row = get_or_create_settings(db)
return AppFeaturesOut(ai_review_enabled=getattr(row, "ai_review_enabled", True))