项目概述
随着高等教育改革的深入推进,学科竞赛在培养学生创新能力、实践能力和团队协作能力方面发挥着重要作用。为解决传统高校学科竞赛管理中存在的信息传递效率低、数据统计不准确、流程管理混乱等问题,开发一套高效、智能的竞赛平台信息管理系统显得尤为迫切。该系统能够实现竞赛信息的集中管理、报名流程的规范化、评审过程的透明化以及成绩统计的自动化。 本系统采用前后端分离架构,后端基于 SpringBoot 框架实现,前端使用 Vue.js 框架开发,数据库采用 MySQL 进行数据存储。系统实现了用户管理、竞赛发布、报名审核、评审打分、成绩统计等功能模块,支持多角色(如管理员、教师、学生)的权限控制。SpringBoot 提供了高效的 RESTful API 接口,Vue.js 实现了动态交互和响应式布局,MySQL 确保了数据的稳定存储和高效查询。
数据表设计
竞赛信息数据表
竞赛信息数据表中,竞赛编号是主键,自动生成;竞赛状态通过枚举值标记(如未开始、进行中、已结束);创建时间由系统自动记录。该表存储竞赛的基本信息及状态。
| 字段名 | 数据类型 | 允许空值 | 说明 |
|---|---|---|---|
| contest_id | BIGINT | 否 | 主键,竞赛唯一编号 |
| contest_name | VARCHAR(100) | 否 | 竞赛名称 |
| contest_desc | TEXT | 是 | 竞赛详细描述 |
| start_time | DATETIME | 否 | 竞赛开始时间 |
| end_time | DATETIME | 否 | 竞赛结束时间 |
| max_team_size | INT | 否 | 最大团队人数限制 |
| contest_status | ENUM | 否 | 状态(未开始/进行中/结束) |
| creator_id | BIGINT | 否 | 创建者用户 ID |
| created_at | TIMESTAMP | 否 | 记录创建时间 |
用户报名数据表
用户报名数据表中,报名 ID 为主键;是否通过审核字段默认为待审核状态;团队名称由用户自定义。该表记录学生报名信息及审核结果。
| 字段名 | 数据类型 | 允许空值 | 说明 |
|---|---|---|---|
| registration_id | BIGINT | 否 | 主键,报名唯一编号 |
| contest_id | BIGINT | 否 | 关联的竞赛 ID |
| user_id | BIGINT | 否 | 报名用户 ID |
| team_name | VARCHAR(50) | 是 | 团队名称(可选) |
| submission_file | VARCHAR(255) | 是 | 提交材料文件路径 |
| audit_status |


