# 19-学生成绩管理系统 - 功能说明
# 项目概述
面向管理员与学生的成绩信息管理平台,管理员维护学院、专业、班级、学期、课程、学生、选课及成绩;学生查看个人成绩与统计。当前系统没有单独教师登录角色。
# 项目概览
# 创新点
- 教学资料关联:学院、专业、班级、学生、课程和学期构成基础数据关系。
- 多维成绩统计:后台提供专业分布、课程平均成绩、班级平均成绩及成绩等级分布。
- 个人成绩展示:学生统计按当前登录用户查询,成绩列表展示关联课程及学期信息。
# 项目亮点
- 角色分工:提供管理员、学生等业务入口。
- 业务数据组织:主初始化脚本包含 10 张表;具体业务完成程度以各功能章节及当前实现说明为准。
- 前后端分离:前端负责页面交互,后端通过控制器、服务与数据映射层提供接口。
- 操作体验:提供列表查询、表单编辑、状态展示及个人资料维护入口。
# 管理员
# 教学基础
维护学院、专业、班级、学期及课程信息。
# 学生管理
维护学生账号、学号及关联的专业和班级资料。
# 选课管理
维护学生与课程的关联记录。
# 成绩管理
录入、修改和查询学生课程成绩及备注。
# 统计公告
查看学生数、课程数、成绩分布等统计,维护公告和管理员账号。
# 学生
# 成绩查询
查看本人课程编号、课程名称、学分、成绩、等级、学期和备注。
# 个人统计
查看平均分、最高分、课程成绩图表及选课学分汇总。
# 个人信息
查看和维护个人资料与密码,浏览公告。
# 功能权限对照表
下表说明当前菜单与业务入口分工。“—”表示未列为该角色的常规入口;不代表已对每个接口完成权限安全审计。
| 功能模块 | 管理员 | 学生 |
|---|---|---|
| 学院、专业、班级、学期 | 管理 | 关联资料查看 |
| 学生与课程 | 管理 | 个人资料查询 |
| 选课记录 | 后台维护 | 无独立选课入口 |
| 成绩 | 录入维护 | 本人查询 |
| 统计 | 平台统计 | 个人统计 |
| 公告 | 维护 | 浏览 |
# 业务状态说明
- 成绩分级:90 分及以上为优秀,80 至不足 90 分为良好,70 至不足 80 分为中等,60 至不足 70 分为及格,低于 60 分为不及格。
- 系统不以订单状态组织业务,成绩及选课记录由管理员维护。
# 默认账号
以下为主初始化 SQL 中能够核实的示例账号;需先导入对应脚本。这里不把脚本初始值视为当前运行数据库的实际账号或余额。
| 登录角色 | 角色标识 | 用户名 | 初始密码 |
|---|---|---|---|
| 管理员 | ADMIN | admin | 123456 |
| 学生 | USER | zhangsan | 123456 |
# 核心业务流程
# 教学数据准备
- 管理员维护学院、专业与班级。
- 维护学生资料。
- 配置学期与课程。
- 建立选课记录。
# 成绩维护
- 管理员选择学生和课程。
- 填写分数及备注。
- 保存成绩。
- 查询或修订记录。
# 成绩查询
- 学生登录。
- 进入我的成绩。
- 查看课程分数及等级。
- 查看平均分、最高分和图表。
# 技术说明
# 系统架构
| 项目 | 当前源码配置 |
|---|---|
| Vue | ^3.4.29 |
| Element Plus | ^2.8.4 |
| Pinia | ^2.2.2 |
| Axios | ^1.7.5 |
| Vite | ^5.3.1 |
| Spring Boot | 3.2.10 |
| Java | 17 |
| MyBatis 集成组件 | 3.0.4 |
| 数据库 | MySQL;具体运行版本以实际部署为准 |
| 身份认证 | JWT;通过登录接口生成令牌 |
前端版本按 package.json 中的声明范围记录,不将依赖范围等同于已安装的精确版本。
# 访问地址
- 后端接口:http://localhost:1000 (opens new window),对应服务端端口配置。
- 前端开发页面:http://localhost:5173 (opens new window),项目未显式覆盖 Vite 默认端口,实际以启动日志为准。
- 登录入口:前端
/login;管理端基础路由/admin。
# 数据库
- 配置数据库名:
springboot3_vue3_template_1_balance。 - 主初始化脚本:
sql/sql.sql。 - 主脚本建表数量:10 张,仅统计当前主脚本的 CREATE TABLE,不包含临时 SQL、迁移脚本或运行时改动。
- 字符集:主脚本采用 utf8mb4。
- 数据表清单:
admin、user、college、major、classes、semester、course、student_course、score、notice。
# 文件上传
- 上传接口:
POST /file/upload。 - 文件访问:
GET /file/{fileName}。 - 配置限制:单文件 100MB,单次请求 1000MB。
- 使用范围:根据业务页面上传图片或附件;具体允许类型以对应上传组件配置为准。
# 系统特色
# 教学资料关联
学院、专业、班级、学生、课程和学期构成基础数据关系。
# 多维成绩统计
后台提供专业分布、课程平均成绩、班级平均成绩及成绩等级分布。
# 个人成绩展示
学生统计按当前登录用户查询,成绩列表展示关联课程及学期信息。
# 当前实现说明
- 应用配置仍使用模板数据库 springboot3_vue3_template_1_balance,需与当前成绩管理 SQL 对应后部署。
- 学生统计中的总学分按选课关联课程学分汇总,并未按及格课程筛选;课程数量取个人成绩记录数量,不应混写为已修得学分或完整选课总数。
- 学生前台未发现独立选课提交入口,选课管理主要在后台;没有单独教师角色。
- 源码保留通用余额服务,但与成绩业务无关,不作为成绩系统特色。
本次按本地源码进行静态核对,未启动前后端或连接数据库执行端到端验证;上述说明反映当前代码与页面定义。