教师小程序 / 学生作业报告
周策 老师
Prototype

教师小程序 · 学生作业报告

补齐学生报告下钻页和回跳上下文。

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

学生作业报告

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

当前对照重点: 学生作业报告
Review Hint

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

学生作业报告

页面元信息

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

视觉描述

  • 原型引用:产出文档/作业管理模块/原型图/tm_student_report.html
  • 页面为教师小程序单学生作业报告页,自上而下固定包含导航栏学生信息头卡作业评价与核心指标卡知识点掌握分析卡错题分布卡5个区域;页面不包含底部固定操作区,不包含学生切换、班级切换、筛选、导出等入口。
  • 顶部导航栏左侧为返回图标,中间标题固定为作业报告,右侧为小程序胶囊占位;导航栏只承担回跳功能,不展示更多业务操作。
  • 学生信息头卡使用蓝色渐变背景,展示学生头像占位、学生姓名、班级名称、批改时间4项信息;头像为圆形首字占位,不展示学生学号、手机号等其他隐私字段。参见 R18。
  • 作业评价与核心指标卡上半区展示作业评价标题、评价等级大字、作业标题、学科/教材辅助信息、作业ID;下半区为2×2指标宫格,固定展示学生正确率班级正确率学生得分班级得分4项。
  • 作业信息区不展示教研院来源标签;学科/教材辅助信息按有值字段拼接显示,若当前仅有学科,则只显示学科本身,如仅返回语文时页面只展示语文,不展示语文 ·或空教材文案。参见 R69。
  • 知识点掌握分析错题分布均为白底卡片,卡片头部左侧展示标题,右侧展示双色图例;图例下方为并列柱状图容器,每组柱图固定对比“学生”与“班级”两组数据。

功能描述

页面入口

  • 入口一:教师在 tm_report.html学生学情页签中,点击某个已提交/已生成报告学生卡片的作业报告按钮进入本页,需透传 homework_idstudent_idsource_page=tm_reportfrom_tab=students
  • 入口二:不开放其他正式入口。本期页面不从作业列表、提交记录、批改列表直接进入;若后续新增入口,仍需遵守“当前作业 + 当前学生”的单对象查看边界。
  • 来源页中仅 data-status=submitted 的学生卡片允许进入本页;未提交或未生成报告的学生不应开放该入口,避免教师在无数据场景下进入空白报告页。参见 R67。

页面范围与默认加载

  • 本页统计范围固定为当前作业 + 当前学生;班级对比数据仅用于展示该学生所在班级的汇总对照,不提供班级切换,不支持切换到其他学生。
  • 页面首次加载必须基于 homework_id + student_id 拉取报告概览、知识点对比、错题分布数据;成功后一次性渲染各卡片,失败则进入异常处理逻辑。
  • 页面返回时必须恢复来源页 tm_report.html学生学情页签、学生姓名搜索关键词和滚动位置。若存在 tm_report_context,优先按其中的 active_tabstudent_keywordstudents_scroll_top 恢复;若来源页缓存缺失,则至少回到 tm_report.html?tab=students。参见 R66。

页面分区与控件交互

  • 本页按导航栏学生信息头卡作业评价与核心指标卡知识点掌握分析卡错题分布卡5个交互分区展开说明。

导航栏

区域/控件展示规则交互与系统行为
左侧返回始终展示点击后优先返回 tm_report.htmlstudents页签,并按 tm_report_context.active_tab / student_keyword / students_scroll_top 恢复来源页上下文;若 source_page 或上下文缓存缺失,则降级返回 tm_report.html?tab=students。参见 R66。
标题 作业报告始终展示固定文案,不随学生姓名、评价等级、作业标题变化。
右侧胶囊占位始终展示不承接业务点击,不触发页面跳转,不参与业务埋点。

学生信息头卡

区域/控件展示规则交互与系统行为
学生头像占位始终展示优先展示学生头像;当前原型无头像上传能力时,以学生姓名首字生成圆形占位。只读,不可点击。
学生姓名始终展示展示 student_name;姓名过长按单行省略显示,不换行撑高头卡。
班级名称始终展示展示当前学生所属班级,如 二年级(2)班;不附加学校、年级编码等其他字段。
批改时间review_time 有值时展示展示最近一次形成当前报告口径的批改完成时间;无值时显示 --,不自动填充当前系统时间。

作业评价与核心指标卡

区域/控件展示规则交互与系统行为
标题 作业评价始终展示固定文案,不可点击。
评价等级报告已生成时展示展示学生当前作业评价等级,如 A/B/C;仅展示单值结果,不展开等级说明,不支持点击修改。
作业标题homework_name 有值时展示仅展示纯文本作业标题;即使接口返回 source_label=教研院,前端也不得在本区域拼接来源标签或来源说明。参见 R69。
学科/教材辅助信息当存在至少1个辅助字段时展示学科教材/册次其他辅助信息 的顺序对非空字段进行拼接;仅拼接有值字段。当只有学科时只显示学科,不保留分隔符占位。参见 R69。
作业IDhomework_id 有值时展示文案格式固定为 作业ID: {homework_id};无复制按钮、无点击跳转。
学生正确率始终展示展示当前学生正确率,格式固定为百分比,如 86.7%;值为只读。
班级正确率始终展示展示当前学生所在班级的整体正确率,格式固定为百分比;若班级对比数据缺失,则显示 --
学生得分始终展示展示当前学生本次作业得分;不附加“分/满分”文案,不支持点击查看题目明细。
班级得分始终展示展示当前班级平均得分;若对比数据缺失则显示 --
  • 当前卡片为纯展示区,整卡及内部字段均不响应点击,不跳转 tm_student_analysis.htmltm_grading_history.html 或其他页面。

知识点掌握分析卡

区域/控件展示规则交互与系统行为
卡片标题 知识点掌握分析始终展示固定文案,不支持改名和折叠。
图例 学生正确率/班级正确率始终展示使用蓝/绿双色图例说明柱图含义;图例仅做说明,不可点击隐藏系列。
柱状图knowledge_stats[] 非空时展示按接口返回顺序展示知识点分组;每组固定2根柱,分别表示学生正确率和班级正确率。柱高按百分比计算,不提供排序切换、Tooltip、点击下钻或横向筛选。
知识点标签随柱组一起展示展示当前分组对应的知识点名称;标签只读,不支持点击查看知识点详情。
  • 本期知识点分析卡只承接“浏览当前学生与班级对比”能力,不扩展到知识点筛选、查看题目列表或跳转错题分析。

错题分布卡

区域/控件展示规则交互与系统行为
卡片标题 错题分布始终展示固定文案,不可点击。
图例 学生错题/班级错题始终展示使用蓝/绿双色图例说明当前图表对比维度;不支持开关系列。
柱状图error_stats[] 非空时展示按接口返回顺序展示题型或错题分类分组;每组固定2根柱,分别表示当前学生错题数和班级错题数。柱高按数量值换算,不支持点击柱图进入 tm_error_analysis.html
分类标签随柱组一起展示展示 填空题单选题 等分类名称;只读,不可点击。

文案和按钮状态变化

  • 页面标题始终固定为作业报告,不会随着学生姓名变化成“黄学生报告”等变体文案。
  • 批改时间评价等级、4个核心指标、2个图表数据均随 student_id 对应数据结果变化;当前页不提供学生切换按钮,因此页面内不会发生局部切换刷新。
  • 作业信息第2行文案遵循“只拼接有值字段”规则:有学科和教材时展示语文 · 小学二年级下册;仅有学科时展示语文;全部为空时整行隐藏。参见 R69。
  • 返回按钮始终可见且可用;右侧胶囊占位始终可见但无状态变化。

页面跳转和返回逻辑

  • 点击来源页 tm_report.html 学生卡片中的作业报告按钮后进入本页,来源页需保留自身 students 页签状态。
  • 点击导航返回后:
    • 若存在有效来源上下文,则回到 tm_report.html学生学情页签;
    • 恢复学生姓名搜索关键词;
    • 恢复离开前滚动位置;
    • 不重置学生列表结果集。参见 R66。
  • 本页当前版本不提供跳转 tm_student_analysis.htmltm_grading_history.htmltm_error_analysis.html 的按钮;教师若需查看题目明细,需返回来源页后再通过来源页既有入口进入。

批量操作范围

  • 本页不支持批量操作,不提供批量导出、批量对比、批量批注、批量复制、批量跳转。

  • 页面中所有展示内容仅作用于“当前学生 + 当前作业”;不跨学生、不跨班级、不跨作业进行合并展示。

  • 图表中的“班级”仅为当前学生所属班级的对比维度,不支持横向切换其他班级,也不允许一次加载多班对比数据。

  • 业务规则:R18、R52、R66、R67、R69。

异常描述

异常场景处理方式
homework_idstudent_id 缺失/失效Toast 提示 未找到对应学生报告,随后返回来源页;若无来源页则返回 tm_report.html?tab=students
页面首次加载失败页面主体展示错误态和 重试 按钮;点击 重试 重新请求报告接口,导航返回仍可使用。
学生尚未提交或报告未生成页面展示空态文案 该学生暂无作业报告,保留导航返回;不以 0 值填充评价、得分、正确率和图表。
学生信息部分缺失缺失字段按项兜底:姓名缺失时显示 未知学生,班级缺失显示 --,批改时间缺失显示 --;不得因为单字段缺失导致整页不可见。
核心指标部分缺失单项指标缺失时显示 --;已返回的其他指标正常展示,不因局部字段缺失将全部指标清零。
知识点分析为空保留卡片标题与图例,图表区展示空态文案 暂无知识点分析数据
错题分布为空保留卡片标题与图例,图表区展示空态文案 暂无错题分布数据
教师无权限查看该学生数据Toast 提示 您暂无权限查看该学生报告,并返回来源页;不得泄露学生姓名、班级、分数等内容。参见 R18。
报告数据与最新批改结果存在同步延迟页面显示最近一次成功生成的报告数据;若教师重新进入本页时服务端已完成刷新,则以最新保存时间对应的数据覆盖旧报告。参见 R52。

数据需求

  • 接口:
    • 学生报告概览接口:根据 homework_id + student_id 返回学生基础信息、评价等级、作业信息、4个核心指标、报告状态。
    • 知识点对比接口:返回 knowledge_stats[],用于渲染“学生正确率 vs 班级正确率”柱状图。
    • 错题分布接口:返回 error_stats[],用于渲染“学生错题数 vs 班级错题数”柱状图。
  • 请求参数:
    • homework_id
    • student_id
    • source_page=tm_report
    • from_tab=students
  • 返回字段建议:
    • 学生信息:student_idstudent_namestudent_avatarclass_idclass_namereview_time
    • 作业信息:homework_idhomework_namesubject_namebook_nameterm_namesource_label
    • 评价与指标:evaluation_gradestudent_accuracyclass_accuracystudent_scoreclass_scorereport_status
    • 知识点图表:knowledge_stats[].knowledge_nameknowledge_stats[].student_accuracyknowledge_stats[].class_accuracy
    • 错题图表:error_stats[].category_nameerror_stats[].student_wrong_counterror_stats[].class_wrong_count
  • 字段约束:
    • report_status 至少支持 ready / generating / empty / failed;仅 ready 可渲染正式报告内容。
    • student_accuracyclass_accuracy 取值范围为 0-100,前端统一按百分比格式展示。
    • student_wrong_countclass_wrong_count 必须为大于等于 0 的整数。
    • 即使接口返回 source_label=教研院,前端也不得在本页标题区或作业信息区渲染该标签。参见 R69。
    • 作业信息辅助字段必须按“仅拼接有值字段”规则输出展示文案;若仅有 subject_name,页面只显示学科,不展示多余分隔符。参见 R69。
  • 页面状态缓存:
    • tm_student_report_context 至少保存 source_pagesource_context_key=tm_report_contexthomework_idstudent_idactive_tabstudent_keywordstudents_scroll_topupdated_at,字段命名需与 tm_report_context 保持一致,用于返回来源页时直接复用同一套恢复口径。参见 R66。
  • 埋点:
    • 页面浏览:记录 source_pagefrom_tabhomework_idstudent_idreport_status
    • 返回操作:记录点击返回时的 source_pagestudent_idstay_duration
    • 卡片曝光:记录 summary_card_exposureknowledge_chart_exposureerror_chart_exposure
    • 浏览深度:记录页面滚动到 25%/50%/75%/100% 的曝光节点,用于评估教师是否完整查看报告内容
当前这页已经是“原型 + 页面 PRD”评审工作台。跨页面规则请维护在总览 / 全局规则文档,页面细节请直接维护右侧页面 PRD。
Review Workspace - Prototype + Page PRD