班级错题分析
页面元信息
- 终端:教师小程序
- Astro 路由:
/teacher-mp/error-analysis - 原始 HTML:
tm_error_analysis.html - 来源章节:
4.3.12 - 维护规则:后续以本页面 PRD 为准;若改动影响通用规则,再同步总览 / 全局规则文档。
视觉描述
- 原型引用:
产出文档/作业管理模块/原型图/tm_error_analysis.html。 - 页面为教师小程序班级共性错题深度复盘页,自上而下固定包含
导航栏、概览面板、错题列表区、阈值 Action Sheet4个层级;页面不包含班级切换、学生搜索、排序按钮、导出按钮或批量操作入口。 - 顶部导航栏左侧为返回图标,中间标题固定为
班级错题分析,右侧不展示更多菜单。返回后需回到来源页tm_report.html的错题分析页签,而非回到学生名单或其他页面。参见 R87。 - 页面顶部概览面板左侧展示
本作业共性错题数量和作业已收 X/Y 份摘要,右侧展示当前生效的错误率阈值筛选按钮,默认文案为错误率 ≥ 30%。概览区仅展示当前作业、当前班级下的汇总结果。参见 R84、R87。 - 本页与
tm_report.html的错题分析页签职责不同:tm_report.html承接轻量预览和快速筛看;本页承接阈值过滤、完整题干、标准答案、解析提示和做错名单等深度复盘内容,不再重复提供排序、题型筛选和学生搜索。参见 R83。 - 错题列表区采用手风琴卡片结构,列表固定按错误率由高到低展示;首张卡片默认展开,其余卡片默认收起。每张卡片头部左侧展示题号/子题号、题目路径、题目摘要和难度,右侧展示错误率与做错人数。参见 R85。
- 卡片的摘要区下方固定展示一行
知识点:XXX,右侧为展开详情 / 收起详情切换文案。展开后展示完整题干、标准答案、解析提示和做错名单。 - 对于复合题、阅读题等组合结构,本页按最小可判分子小题拆散展示;详情中保留
父题干(原文折叠)作为上下文,并单独高亮错误高频子题内容,不以整个大题包作为单个统计对象。参见 R85。 - 做错名单以标签组方式展示,默认展示前 6 名学生,超过 6 名时尾部展示
查看全部...,点击后在当前卡片内原地展开剩余名单;学生姓名仅作展示,不可点击。参见 R86。 - 页面底部 Action Sheet 用于设置过滤阈值,当前原型固定提供
错误率 ≥ 30%、错误率 ≥ 50%、错误率 ≥ 70%、全量展示(不过滤)和取消5项;点击阈值项后立即生效并关闭面板。参见 R84。
功能描述
页面入口
- 入口一:教师在
tm_report.html的错题分析页签中,点击班级共性错题的独立深挖入口进入本页,需透传homework_id、homework_type、class_id、source_page=tm_report、source_tab=errors。 - 本期不开放从
tm_student_report.html、tm_student_analysis.html、tm_list.html直接进入本页的正式入口,避免脱离“当前作业 + 当前班级”的班级共性错题上下文。参见 R87。 - 若后续增加其他入口,仍须保证本页查询范围限定为
当前作业 + 当前班级,且返回时回到对应来源页的错题分析上下文。
页面范围与默认加载
- 页面统计范围固定为
当前作业 + 当前班级,不提供班级切换、学生切换和作业切换能力。若教师要查看其他班级的错题分析,需先从来源页切换到目标班级后重新进入。参见 R87。 - 首次进入本页默认按
错误率 ≥ 30%加载共性错题列表;若同一会话中存在tm_error_analysis_context.selected_threshold,则优先恢复上次选择的阈值和滚动位置。参见 R84。 - 页面首屏先加载概览面板和当前阈值下的前 20 条错题卡片;滚动触底后继续加载后续 20 条,直到当前结果集全部加载完成。
- 列表排序为固定规则,不开放教师手动切换排序字段:先按错误率倒序,再按做错人数倒序,最后按题目顺序正序。参见 R85。
- 若系统检测到当前账号存在未完成上传任务,必须优先拦截进入
tm_submit.html继续上传,上传任务结束前不得停留本页。参见 R34。
页面分区与控件交互
- 本页按
导航栏、概览面板、错题列表区、阈值 Action Sheet4个交互分区展开说明。
导航栏
| 区域/控件 | 展示规则 | 交互与系统行为 |
|---|---|---|
| 左侧返回 | 始终展示 | 点击后返回 tm_report.html?tab=errors,并恢复来源页的当前作业、当前班级、errors页签滚动位置和已生效筛选状态;若来源上下文缺失,则降级返回 tm_report.html?tab=errors。参见 R66、R87。 |
标题 班级错题分析 | 始终展示 | 固定文案,不随阈值、卡片展开状态或错题数量变化。 |
| 右侧操作区 | 不展示 | 本期不提供更多菜单、导出、分享或设置入口。 |
概览面板
| 区域/控件 | 展示规则 | 交互与系统行为 |
|---|---|---|
本作业共性错题 数量 | 始终展示 | 展示当前阈值条件下的共性错题数,单位固定为道;只读,不支持点击。 |
作业已收 X/Y 份 | 始终展示 | 展示当前作业、当前班级已收份数和应收份数;只读,不支持点击跳转提交汇总。 |
| 阈值筛选按钮 | 始终展示 | 默认文案为当前生效阈值,如 错误率 ≥ 30%;点击打开阈值 Action Sheet。 |
错题列表区
| 区域/控件 | 展示规则 | 交互与系统行为 |
|---|---|---|
| 错题卡片头部 | 当前结果集存在错题时展示 | 左侧展示题号/子题号、题目路径、题目摘要和难度,右侧展示错误率和做错人数;头部本身不支持点击跳转。 |
| 题号/子题号 | 每张卡片固定展示 | 展示原题序或子题序号,如 #1、#5;表示原题定位,不表示当前筛选结果排名。 |
| 题目路径 | 每张卡片固定展示 | 展示题目所属大题、题组或父题路径,如 课外阅读《老猫》 > 第1题(1);只读。 |
| 错误率与做错人数 | 每张卡片固定展示 | 错误率格式统一为百分比,如 80%;做错人数格式统一为 54人做错。 |
| 知识点摘要行 | 每张卡片固定展示 | 左侧展示 知识点:{knowledge_name},右侧展示 展开详情 / 收起详情 按钮。 |
展开详情 / 收起详情 | 每张卡片固定展示 | 点击后切换当前卡片的详情区展开状态,不影响其他卡片。展开时文案为 收起详情,收起时文案为 展开详情。 |
| 完整题干 | 卡片展开时展示 | 展示完整题干或当前子题的题干正文;普通题型直接展示完整题干。 |
| 标准答案 | 卡片展开时展示 | 固定文案 标准答案,下方展示答案正文;只读,不支持复制。 |
| 解析提示 | 卡片展开时展示 | 展示用于教师复盘的解析说明;只读,不支持折叠。 |
| 做错名单 | 卡片展开时展示 | 以标签组展示做错学生姓名;默认展示前 6 名。若人数超过 6 名,则尾部展示 查看全部...。 |
查看全部... | 做错人数 > 6 时展示 | 点击后在当前卡片内原地展开剩余名单,查看全部... 文案隐藏;不打开新页面或弹窗。参见 R86。 |
- 复合题/阅读题展示规则:
- 当前页面统计口径按最小可判分子小题计算,不按整个大题包聚合。参见 R85。
- 若当前错题来自复合题,则卡片头部路径展示为
父题路径 > 子题号。 - 详情区顶部先展示
父题干(原文折叠),默认只展示截断摘要,并提供[展开全部原文]原地展开父题全文。 错误高频子题单独作为详情区模块展示,明确指出触发高错率的具体子小题内容。
阈值 Action Sheet
| 区域/控件 | 展示规则 | 交互与系统行为 |
|---|---|---|
标题 设置过滤阈值(仅抓取典型题) | 面板打开时始终展示 | 固定文案,不可修改。 |
错误率 ≥ 30% | 面板打开时展示 | 点击后立即将当前阈值切换为 30%,关闭面板并刷新列表。 |
错误率 ≥ 50% | 面板打开时展示 | 点击后立即将当前阈值切换为 50%,关闭面板并刷新列表。 |
错误率 ≥ 70% | 面板打开时展示 | 点击后立即将当前阈值切换为 70%,关闭面板并刷新列表。 |
全量展示(不过滤) | 面板打开时展示 | 点击后立即清空错误率阈值限制,关闭面板并刷新列表。 |
取消 | 面板打开时展示 | 关闭面板,不修改当前阈值和列表结果。 |
| 遮罩关闭 | 面板打开时展示 | 点击遮罩关闭面板,行为同 取消。 |
文案和按钮状态变化
- 阈值按钮文案始终与当前生效条件保持一致:
错误率 ≥ 30% / 50% / 70%或全量展示。 - 教师点击阈值项后,页面弹出轻提示,文案格式固定为
已为您筛选 {当前阈值文案} 的共性错题。 - 错题卡片默认首张展开,其余收起;教师手动切换后,仅记录当前卡片的展开状态,不联动其他卡片。
展开详情点击后文案切换为收起详情;再次点击恢复展开详情。查看全部...点击后在当前卡片内消失,已展开的学生标签持续保留,当前页不提供“收起名单”按钮。- 若某卡片做错人数小于等于 6,则不展示
查看全部...。
页面跳转和返回逻辑
- 从
tm_report.html进入本页后,来源页必须保留errors页签与原滚动位置;教师在本页点击返回时,需恢复该上下文。参见 R66、R87。 - 本页不提供跳转
tm_student_report.html、tm_student_analysis.html、tm_submission_status.html的按钮;做错名单中的学生姓名也不承接跳转。 查看全部...、[展开全部原文]、展开详情均为页内原地交互,不产生新的页面路由或浏览历史。
批量操作范围
- 本页不支持批量操作,不提供批量导出、批量复制名单、批量加入作业篮、批量跳转学生分析。
- 错误率阈值仅作用于当前作业、当前班级的共性错题列表,不跨班级、不跨作业生效。
- 卡片展开/收起、名单展开、父题干展开仅影响当前卡片的展示状态,不修改任何批改结果、知识点归因或报告数据。
弹层规格
弹层 1:错误率阈值 Action Sheet
| 要素 | 内容 |
|---|---|
| 触发条件 | 点击顶部阈值筛选按钮 |
| 标题 | 设置过滤阈值(仅抓取典型题) |
| 正文 | 展示 错误率 ≥ 30% / 50% / 70% / 全量展示(不过滤) 4 个选项 |
| 主按钮 | 无独立确认按钮;点击任一阈值项即立即生效并关闭面板 |
| 次按钮 | 取消 → 关闭面板,不修改阈值 |
| [x] 关闭 | 点击遮罩关闭,行为同 取消 |
- 业务规则:R18、R34、R52、R66、R83、R84、R85、R86、R87。
异常描述
| 异常场景 | 处理方式 |
|---|---|
homework_id 或 class_id 缺失/失效 | Toast 提示 未找到对应班级错题分析,随后返回 tm_report.html?tab=errors。 |
| 页面首次加载失败 | 页面主体展示错误态和 重试 按钮;点击 重试 重新请求概览与错题列表接口。 |
| 当前阈值下无共性错题 | 保留概览面板和阈值按钮,列表区展示空态 当前阈值下暂无共性错题,允许教师继续切换阈值。 |
| 共性错题统计尚未生成 | 页面展示状态文案 共性错题分析生成中,请稍后查看,不以 0 条错题占位。 |
| 卡片详情接口局部失败 | 当前卡片详情区展示 详情加载失败,请重试,其他卡片保持正常浏览。 |
| 做错名单过长 | 默认仅展示前 6 名和 查看全部...;点击后原地展开全部名单,不额外弹窗。 |
| 父题干或子题内容缺失 | 若父题干缺失,则仅展示子题正文;若子题正文缺失,则当前卡片详情区展示 题干内容暂不可用,不得用错误占位内容替代。 |
| 阈值切换后接口失败 | 保留切换前已展示的列表结果和原阈值文案,Toast 提示 阈值切换失败,请稍后重试。 |
| 教师无权限查看当前班级数据 | Toast 提示 您暂无权限查看班级错题分析,并返回来源页;不得泄露学生姓名、错题内容等信息。参见 R18。 |
数据需求
- 接口:
- 班级错题概览接口:根据
homework_id + class_id + threshold返回当前阈值下的共性错题数量、已收份数、应收份数。 - 班级错题列表接口:返回当前作业、当前班级、当前阈值下的错题卡片列表,支持分页。
- 错题详情接口:返回完整题干、标准答案、解析提示、做错学生名单、父题干/子题结构信息。
- 班级错题概览接口:根据
- 请求参数:
homework_idhomework_typeclass_iderror_rate_thresholdpage_nopage_sizesource_page=tm_reportsource_tab=errors
- 返回字段建议:
- 概览维度:
common_error_question_count、collected_submission_count、expected_submission_count、threshold_text - 列表维度:
question_id、question_no、question_path、question_summary、difficulty_level、error_rate、wrong_count、knowledge_name、is_composite - 详情维度:
full_stem、standard_answer、analysis_text、wrong_students[] - 复合题附加维度:
parent_question_id、parent_stem_preview、parent_stem_full、sub_question_no、sub_question_stem
- 概览维度:
- 字段约束:
error_rate取值范围为 0-100,前端统一按百分比展示。wrong_count必须为大于等于 0 的整数,且与错误率分母口径一致。- 复合题必须按最小可判分子小题返回独立
question_id;父题干只作为上下文,不得与子题共用同一统计记录。参见 R85。 wrong_students[]建议返回全量名单;前端默认只展示前 6 名,点击查看全部...后原地展开剩余名单。参见 R86。
- 页面状态缓存:
tm_error_analysis_context至少保存source_page、source_tab、homework_id、class_id、selected_threshold、scroll_top、expanded_question_ids、updated_at,用于从来源页往返时恢复当前浏览状态。参见 R87。
- 埋点:
- 页面浏览:
tm_error_analysis_view,记录homework_id、class_id、selected_threshold、source_page - 阈值操作:
tm_error_analysis_filter_open、tm_error_analysis_filter_select、tm_error_analysis_filter_cancel - 卡片交互:
tm_error_analysis_card_expand、tm_error_analysis_card_collapse,记录question_id - 名单展开:
tm_error_analysis_wrong_students_expand,记录question_id、wrong_count - 父题干展开:
tm_error_analysis_parent_stem_expand,记录parent_question_id - 滚动深度:记录页面滚动到 25%/50%/75%/100% 的曝光节点,用于评估教师是否完成班级错题复盘
- 页面浏览: