feat(SQL 题): 增删改题的期望结果标出执行后变了的格子,删掉的行写清是哪几行

学生原来只能拿两张表逐格对,看不出要改的是哪几行。现在改过的格子、新插的行标黄,
删掉的行在表下面写「删掉了 2 行(id 是 2、3)」。按第一列配对,对不上就不标。
数据表和期望结果抽成一个组件,后台出题页的预览也用它。
题型判断统一走契约的 isSqlProblem()。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
xuyueandClaude Opus 5.5 committed 2026-10-09 18:59:15 +08:00
1 parent e01dabc6da
commit 25d3296410
12 files changed
+247 -421

No files matched your search

+2 -1
View File
@@ -1,4 +1,5 @@
import {
isSqlProblem,
classComparisonRequestSchema,
STUDENT_ROLES,
classLessonRequestSchema,
@@ -929,7 +930,7 @@ classroomRoutes.put("/classroom/lesson", requireTeacher, async (c) => {
// SQL 题除外:它只收 SQL,C 的作业里夹一道也不会让人选错语言,计数那边也放行了 SQL
if (language) {
const unsupported = found
.filter((row) => !row.languages.includes(language) && !row.languages.includes("SQL"))
.filter((row) => !row.languages.includes(language) && !isSqlProblem(row))
.map((row) => row.displayId)
if (unsupported.length) {
return failure(