教师小程序 / 学生题目查看
周策 老师
Prototype

教师小程序 · 学生题目查看

补齐学生题目查看页与只看错题模式。

设计视口: 375 x 812 · 当前缩放: 100% · 左右分栏: 拖动中线调整
Page PRD

学生题目查看

当前文档: prds/作业管理模块/teacher-mp/tm_student_analysis.md

当前对照重点: 学生题目查看
Review Hint

左侧现在支持三种演示模式: 默认按设计稿完整缩放、按宽度铺满、以及 100% 原始尺寸滚动查看。 右侧默认读取当前页面对应的页面级 PRD,而不是整本总 PRD;改页面时,直接同步维护这个页面文档即可。

学生题目查看

页面元信息

  • 终端:教师小程序
  • Astro 路由:/teacher-mp/student-analysis
  • 原始 HTML:tm_student_analysis.html
  • 来源章节:4.3.11
  • 维护规则:后续以本页面 PRD 为准;若改动影响通用规则,再同步总览 / 全局规则文档。

视觉描述

  • 原型引用:产出文档/作业管理模块/原型图/tm_student_analysis.html
  • 页面为教师小程序单学生题目查看页,自上而下固定包含导航栏卷面查看区页级工具条题目查看抽屉4个层级;页面为只读分析模式,不展示保存、批改、一键全对等编辑操作区。
  • 顶部导航栏左侧为返回图标,中间标题展示当前学生姓名,右侧为小程序胶囊占位。导航栏不展示作业标题、班级、分数、评价等级等辅助信息。
  • 卷面查看区采用灰底查看层承载当前学生当前作业的当前页原卷,卷面上叠加左右翻页箭头和题目热区;命中题目后对应热区显示高亮边框和题号角标。
  • 页级工具条固定贴在卷面底部,包含左侧提交记录、中部放大/缩小、右侧第N页页码指示;第N页为只读文本,不提供页码输入或快捷跳页。
  • 底部题目查看抽屉默认收起,点击卷面题目热区后自底部上滑展开;抽屉头部左侧固定标题题目查看,右侧为勾选项只看错题;抽屉内容区依次展示题目摘要、题目类型、各小题得分结果和参考答案。
  • 当勾选只看错题且当前页无任何错题时,卷面区展示空态文案暂无错题,已全部掌握;抽屉保持收起,不展示旧题目详情。
  • 学生原卷顶部标题、卷面渲染区及其任何附属标签位均不展示来源标签教研院;即使后端返回该字段,前端也不得渲染,也不得保留空白标签占位。参见 R56。

功能描述

页面入口

  • 入口一:教师在 tm_report.html学生学情页签中,点击某个已提交且已生成分析结果学生卡片的查看按钮进入本页,必须透传 homework_idhomework_typeclass_idstudent_idsource_page=tm_reportfrom_tab=students。仅 status=submittedanalysis_ready=true 的学生允许进入。参见 R67。
  • 入口二:教师在本页点击 提交记录 进入 tm_grading_history.html 后,再从记录页返回本页时,应恢复离开前的学生、页码、所选提交记录与查看状态。
  • 本期不开放从 tm_student_report.htmltm_list.htmltm_grading_list.html 直接进入本页的正式入口,避免脱离“当前作业 + 当前学生”的分析上下文。

页面范围与默认加载

  • 本页统计与展示范围固定为当前作业 + 当前学生,仅承接题目结果查看,不提供班级切换、学生切换、题目批改或结果改写。
  • 页面首次加载必须基于 homework_id + student_id 拉取当前学生题目分析详情,返回当前页页码、页数、原卷、题目热区、题目结果、当前页可用提交记录列表。若存在来源页缓存上下文,则优先恢复 current_page_nocurrent_submission_idonly_wrongzoom_ratioactive_question_id
  • 默认展示当前学生的第1页;若服务端返回 default_page_no、来源页缓存记录了最近查看页,或从 tm_grading_history.html 回传了有效 current_page_no,则按“回传值 > 缓存值 > 服务端默认值 > 第1页”的优先级恢复。
  • 页面返回 tm_report.html 时,必须恢复来源页的students页签、学生姓名搜索关键词、滚动位置以及来源页已生效的筛选状态;若来源上下文失效,则降级返回 tm_report.html?tab=students。参见 R66。

页面分区与控件交互

  • 本页按导航栏卷面查看区页级工具条题目查看抽屉4个交互分区展开说明。

导航栏

区域/控件展示规则交互与系统行为
左侧返回始终展示点击后返回 tm_report.htmlstudents页签,并恢复来源页搜索关键词、滚动位置和已生效筛选;若 source_page 或缓存上下文缺失,则降级返回 tm_report.html?tab=students。参见 R66。
学生姓名标题始终展示固定展示 student_name;不随页码、提交记录、只看错题状态变化。
右侧胶囊占位始终展示不承接业务点击,不触发页面跳转,不参与埋点。

卷面查看区

区域/控件展示规则交互与系统行为
当前页原卷始终展示展示 current_page_no 对应的原卷图片或渲染结果;页码切换、提交记录切换后立即刷新当前页卷面内容与题目热区。
左右翻页箭头page_count > 1 时展示点击左箭头切换到上一页,点击右箭头切换到下一页;到达首页/末页时对应箭头保留可见但置灰不可用。切页后关闭当前已展开的题目查看抽屉,清空当前高亮题目,并将提交记录查询范围重置为新页。
题目热区当前页存在可分析题目时展示点击某个热区后高亮该题并展开题目查看抽屉;再次点击同题热区仅保持当前高亮,不重复刷新抽屉。点击卷面空白区域时收起抽屉并取消高亮。
热区角标热区高亮时展示常态隐藏,仅高亮题目时显示第N题角标;勾选只看错题后,角标序号按过滤后的当前页可见题目顺序重新编号。

页级工具条

区域/控件展示规则交互与系统行为
提交记录始终展示点击进入 tm_grading_history.html,并透传 homework_idstudent_idstatus=gradedcurrent_page_nocurrent_submission_idsource_page=tm_student_analysis。提交记录查询范围仅限当前页;若要查看其他页记录,必须先切换到对应页,再点击本按钮进入。参见 R54。
放大始终展示以 10% 为步长放大卷面;与手势缩放共用同一 zoom_ratio 状态。达到最大值 200% 后按钮保留可见但点击无效。
缩小始终展示以 10% 为步长缩小卷面;达到最小值 50% 后按钮保留可见但点击无效。
第N页始终展示只读展示当前页码;随翻页即时更新,不支持点击跳页。
  • 缩放与手势规则:
    • 双指缩放:教师可在卷面区域使用双指捏合进行放大、缩小;缩放范围固定为 50%-200%,与按钮缩放边界一致。参见 R55。
    • 单指长按拖移:教师单指在卷面上长按 300ms 后进入拖移模式,仅允许上下滑动拖移当前页内容;释放手指即退出拖移模式。普通单击不进入拖移模式,避免与题目热区点击冲突。参见 R55。
    • 手势优先级:长按拖移期间不触发题目热区点击;双指缩放期间不触发左右翻页;手势结束后恢复普通点击能力。

题目查看抽屉

区域/控件展示规则交互与系统行为
标题 题目查看抽屉展开时始终展示固定文案,不随选中题目标题变化。
只看错题 勾选项抽屉头部始终展示勾选后立即按“当前页题目结果”进行本地过滤,仅保留至少存在1个半对判定的小题;取消勾选后恢复当前页全量题目。切换时不重新进入其他页面。
题目摘要选中题目后展示展示当前题目的分区标题和题干摘要;当摘要存在长文本时默认收起为2行,点击∨ 展开切换为完整显示,再次点击变为∧ 收起
题型说明当题目存在题型信息时展示展示当前题目或题目卡片的题型,如填空题单选题;只读,不可点击。
结果卡片选中题目后展示按题目卡片顺序展示每个小题结果。每个结果项至少包含状态标签、得分、参考答案;仅展示查看信息,不展示AI批改评对错打分等编辑控件。
状态标签每个结果项固定展示根据批改结果展示 3种状态;其中 代表半对,半对在只看错题模式下按错题处理。
参考答案区每个题目卡片底部展示固定展示标准答案或参考答案,文案前缀为 参考答案:;只读,不支持复制或跳转。
  • 只看错题联动规则:
    • 错题判定口径为:当前题目下任一小题的 judge_resultwronghalf,则该题属于错题;全部小题均为 correct 时,该题不属于错题。
    • 勾选只看错题后,卷面区只渲染错题热区与错题内容;已被过滤掉的正确题不保留占位,不显示空白题位。
    • 若教师勾选时当前已打开的题目在过滤后不再可见,系统需立即关闭抽屉、取消热区高亮,并将抽屉内容重置为请选择题目查看批改结果
    • 当过滤结果为空时,卷面区展示暂无错题,已全部掌握空态,抽屉保持收起;取消勾选后恢复当前页全量题目与热区。

文案和按钮状态变化

  • 页面标题始终为当前学生姓名,不会随题目切换变成“第1题”“错题查看”等变体。
  • 第N页 文案随页码即时变化;翻页后 提交记录 查询范围同步切换为新页,当前确认的 submission_id 若不属于新页,则自动重置为新页最新一条提交记录。
  • 只看错题 未勾选时,抽屉右侧文案保持 只看错题,复选框为空;勾选后复选框进入选中态,不额外增加二次确认。
  • 当题目摘要处于收起态时,切换按钮文案为 ∨ 展开;展开后文案变为 ∧ 收起
  • 放大缩小 按钮始终展示;到达缩放边界后不隐藏,仅点击无效。
  • 提交记录 按钮始终展示;即使当前页只有1条记录,仍允许进入记录页查看当前记录。

页面跳转和返回逻辑

  • 点击来源页 tm_report.html 学生卡片中的查看按钮进入本页时,来源页必须保留 students 页签、搜索关键词、滚动位置与已生效筛选状态。参见 R66。
  • 点击导航返回后:
    • 若存在有效来源上下文,则回到 tm_report.html学生学情页签;
    • 恢复离开前的学生搜索关键词、滚动位置、已生效筛选状态;
    • 不重置学生列表结果集。参见 R66。
  • 点击 提交记录 后进入 tm_grading_history.html;记录页返回时,本页必须恢复原学生、原页码、原缩放比例、只看错题状态、当前选中题目和已确认选中的 submission_id,并按返回值刷新卷面。
  • 本页不提供跳转 tm_student_report.htmltm_error_analysis.htmltm_grading.html 的按钮;教师若需查看其他分析页,需先返回来源页后再通过来源页既有入口进入。

批量操作范围

  • 本页不支持批量操作,不提供批量批改、批量确认、批量导出、批量复制、批量切换学生。

  • 只看错题 的作用范围仅为“当前学生 + 当前页”的题目显示结果,不跨页、不跨学生、不跨作业。

  • 题目抽屉中的展开/收起、热区切换、提交记录切换仅影响当前学生当前页的查看上下文,不改写任何批改结果。

  • 业务规则:R18、R52、R54、R55、R56、R66、R67。

异常描述

异常场景处理方式
homework_idstudent_id 缺失/失效Toast 提示 未找到对应学生分析,随后返回来源页;若无有效来源页,则返回 tm_report.html?tab=students
页面首次加载失败页面主体展示错误态和 重试 按钮;点击 重试 重新请求题目分析接口,导航返回仍可使用。
当前页原卷加载失败卷面区展示错误态和 重试 按钮;提交记录、返回按钮仍可使用,抽屉和题目热区不可用。
当前页无可分析题目保留卷面查看区和页级工具条;点击卷面不展开抽屉,抽屉默认提示 请选择题目查看批改结果
勾选只看错题后当前页无错题卷面区展示空态文案 暂无错题,已全部掌握;抽屉自动收起,取消勾选后恢复全量题目。
当前页题目结果为空或结果接口局部缺失已返回的题目结果正常展示;缺失题目不展示状态标签和得分,抽屉对应区域显示 暂无批改结果,不得用 0 分强行补齐。
当前页提交记录为空点击 提交记录 后进入 tm_grading_history.html 空态,并提示 当前页暂无提交记录;不自动切换到其他页记录。
记录切换后分析结果同步延迟页面继续展示最近一次成功同步的题目结果;教师重新进入本页或从记录页返回时,如服务端已有新结果,则按最新保存时间覆盖旧数据。参见 R52。
缩放超出边界达到 50% 或 200% 后停止继续缩放;按钮点击无效,手势缩放回弹到边界值。
教师无权限查看该学生数据Toast 提示 您暂无权限查看该学生分析,并返回来源页;不得泄露学生姓名、分数、原卷等内容。参见 R18。

数据需求

  • 接口:
    • 学生题目分析详情接口:根据 homework_id + student_id + current_page_no 返回学生信息、页数、默认页码、当前页原卷、题目热区、题目结果、题型和摘要信息。
    • 当前页提交记录接口:根据 homework_id + student_id + current_page_no 返回当前页可查看的提交记录列表及默认记录。
    • 提交记录回查接口:根据 submission_id + current_page_no 返回当前页当前记录对应的原卷与题目结果快照,用于从 tm_grading_history.html 返回后刷新本页内容。
  • 请求参数:
    • homework_id
    • homework_type
    • class_id
    • student_id
    • current_page_no
    • current_submission_id
    • source_page=tm_report|tm_grading_history
    • from_tab=students
  • 返回字段建议:
    • 页面上下文:homework_idhomework_namestudent_idstudent_nameclass_idclass_namepage_countdefault_page_nocurrent_page_nocurrent_submission_id
    • 卷面维度:paper_image_url/render_payloadzoom_ratio_defaultsource_label
    • 热区维度:question_idquestion_orderhotzonesection_titlequestion_summaryquestion_type
    • 题目结果维度:cards[].card_idcards[].card_titlecards[].typeitems[].item_iditems[].labelitems[].judge_result(correct/wrong/half)items[].scoreitems[].max_scoreitems[].student_answerreference_answer
    • 当前页提交记录:submission_idsubmission_labelsubmit_timepage_no
  • 字段约束:
    • judge_result=half 在页面上展示为 ,并在只看错题模式下按错题口径参与过滤。
    • question_order 必须返回当前页原始题序,用于热区定位;前端在只看错题模式下可按过滤后展示顺序重绘高亮角标,但不得打乱题目在卷面中的实际位置。
    • source_label 如返回 教研院,仅允许用于日志透传或调试,前端不得在学生原卷顶部标题、卷面渲染区、导航栏或抽屉中渲染,也不得预留标签占位。参见 R56。
    • 当前页提交记录接口只返回 current_page_no 对应的记录集合,不得混入其他页记录。参见 R54。
  • 页面状态缓存:
    • tm_student_analysis_context 至少保存 source_pagefrom_tabhomework_idstudent_idcurrent_page_nocurrent_submission_idzoom_ratioonly_wrongactive_question_idsource_search_keywordsource_scroll_topupdated_at,用于与 tm_grading_history.html 往返和返回 tm_report.html 时恢复上下文。参见 R66。
  • 埋点:
    • 页面浏览:记录 source_pagefrom_tabhomework_idstudent_id、默认页码、默认提交记录
    • 卷面操作:记录翻页、热区点击、卷面空白关闭抽屉、放大/缩小按钮点击、双指缩放、长按拖移
    • 抽屉交互:记录抽屉展开/收起、摘要展开/收起、只看错题勾选/取消、过滤后题目数量
    • 提交记录入口:记录点击 提交记录、从记录页返回后的 submission_id 变化
当前这页已经是“原型 + 页面 PRD”评审工作台。跨页面规则请维护在总览 / 全局规则文档,页面细节请直接维护右侧页面 PRD。
Review Workspace - Prototype + Page PRD