Files
Academic-Affairs-System/src/Jiaowu.Api/Controllers
T
biss 15a34a306c ---
成绩册 Excel 导入/导出 — 已完成

  后端 (GradesController.cs)

  GET /api/grades/sheets/{id}/template — 下载成绩导入模板
  - 根据成绩单的动态分项(GradeItems)生成对应的 Excel 列:学号 | 姓名 | 班级 | 平时成绩 | [分项1] | [分项2] | ... | 期末成绩 | 考试状态 | 备注
  - 预填已有学生信息和已有成绩
  - 附带填写说明工作表

  POST /api/grades/sheets/{id}/import — 从 Excel 导入成绩
  - 按学号匹配学生,批量更新平时成绩、分项成绩、期末成绩、考试状态、备注
  - 支持留空(不覆盖已有成绩)、0-100 范围校验、考试状态校验(正常/缺考/缓考/免修)
  - 导入后自动重新计算总评成绩和绩点
  - 仅限 Draft/Returned 状态的成绩单,仅限有编辑权限的用户
  - 错误时整批回滚,最多显示 50 条错误详情

  前端 (GradesView.vue)

  在成绩登记册底部操作栏新增两个按钮(仅在 canEdit 时显示):
  - 下载模板 — 调用 downloadApiFile 下载当前成绩单的 Excel 模板
  - Excel导入 — 通过隐藏 file input 选择 .xlsx 文件,调用 importExcel 上传

  工作流程

  1. 教师打开成绩单 → 点击「下载模板」
  2. 在 Excel 中填写/修改学生成绩
  3. 点击「Excel导入」选择文件上传
  4. 系统自动校验、合并成绩、重新计算总评 → 提示更新条数
  5. 成绩表刷新显示最新数据

✻ Crunched for 5m 50s
15a34a306c · 2026-07-25 17:57:56 +08:00
History
..
2026-07-25 16:51:12 +08:00
2026-07-25 16:51:12 +08:00
2026-07-25 15:30:46 +08:00
2026-07-25 14:51:17 +08:00
---
2026-07-25 17:57:56 +08:00
2026-07-25 15:50:00 +08:00
2026-07-25 11:32:13 +08:00
2026-07-25 17:48:53 +08:00
2026-07-25 13:10:19 +08:00
2026-07-25 13:21:06 +08:00
2026-07-25 17:28:53 +08:00