# 14-高校社团管理系统 - 功能说明
# 项目概述
面向高校社团与学生的管理平台,提供社团展示、入社申请、成员管理、活动报名、社团帖子和评论互动。系统实际登录角色为管理员、社团负责人和学生,社团成员属于学生的业务身份。
# 项目概览
# 创新点
- 申请与成员分开管理:入社申请保存理由和审核回复,成员记录维护学生与社团关系。
- 社团活动集中展示:活动广场和详情页展示活动内容,个人中心集中查询报名信息。
- 社团内容交流:帖子、评论和收藏对应独立记录,支持社团日常交流。
# 项目亮点
- 角色分工:提供管理员、社团负责人、学生等业务入口。
- 业务数据组织:主初始化脚本包含 13 张表,围绕该系统的核心对象与业务记录建模。
- 前后端分离:前端负责页面交互,后端通过控制器、服务与数据映射层提供接口。
- 操作体验:提供列表查询、表单编辑、状态展示及个人资料维护入口。
# 管理员
# 账号管理
维护管理员、社团负责人和学生信息。
# 社团管理
管理社团资料、成员及入社申请。
# 活动管理
维护活动信息和报名记录。
# 内容管理
管理通知公告、帖子、评论和轮播图。
# 社团负责人
# 社团事务
通过社团列表、社团成员和入社申请入口维护社团事务。
# 活动组织
维护活动信息,查看并处理报名记录。
# 帖子管理
通过后台帖子入口管理社团内容。
# 学生
# 社团广场
浏览社团列表和详情,提交入社申请并查看审核回复。
# 活动广场
查看活动介绍,提交报名并查询我的活动。
# 帖子互动
浏览帖子及详情,使用页面提供的发帖、评论与收藏功能。
# 个人中心
查看我的社团、我的活动和我的申请,维护个人信息及密码。
# 功能权限对照表
下表说明当前菜单与业务入口分工。“—”表示未列为该角色的常规入口;不代表已对每个接口完成权限安全审计。
| 功能模块 | 管理员 | 社团负责人 | 学生 |
|---|---|---|---|
| 账号及平台内容 | 管理 | — | 浏览 |
| 社团与成员 | 管理 | 事务维护 | 浏览与我的社团 |
| 入社申请 | 管理审核 | 处理 | 提交查询 |
| 活动与报名 | 管理 | 维护处理 | 浏览报名 |
| 帖子 | 管理 | 后台管理 | 浏览互动 |
| 评论 | 管理 | — | 参与互动 |
# 业务状态说明
- 入社申请:待审核、审核通过、审核拒绝。
- 活动报名后台选项:待审核、审核通过、审核拒绝。
- 活动详情通过“报名中”状态开放报名按钮。
# 默认账号
以下为主初始化 SQL 中能够核实的示例账号;需先导入对应脚本。这里不把脚本初始值视为当前运行数据库的实际账号或余额。
| 登录角色 | 角色标识 | 用户名 | 初始密码 |
|---|---|---|---|
| 管理员 | ADMIN | admin | 123456 |
| 社团负责人 | LEADER | leader | 123456 |
| 学生 | STUDENT | student | 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。
# 数据库
- 配置数据库名:
a_2026_14_club_system。 - 主初始化脚本:
sql/sql.sql。 - 主脚本建表数量:13 张,仅统计当前主脚本的 CREATE TABLE,不包含临时 SQL、迁移脚本或运行时改动。
- 字符集:主脚本采用 utf8mb4。
- 数据表清单:
activity、activity_registration、admin、banner、club、club_application、club_member、club_post、comment、favorite、leader、notice、student。
# 文件上传
- 上传接口:
POST /file/upload。 - 文件访问:
GET /file/{fileName}。 - 配置限制:单文件 100MB,单次请求 1000MB。
- 使用范围:根据业务页面上传图片或附件;具体允许类型以对应上传组件配置为准。
# 系统特色
# 申请与成员分开管理
入社申请保存理由和审核回复,成员记录维护学生与社团关系。
# 社团活动集中展示
活动广场和详情页展示活动内容,个人中心集中查询报名信息。
# 社团内容交流
帖子、评论和收藏对应独立记录,支持社团日常交流。
# 当前实现说明
- 没有独立“社团成员”登录角色;学生加入社团后的成员关系由社团成员表记录。
- 未发现经费申请、财务收支或扫码签到的独立实现,原文相关功能、状态和流程全部移除。
- 前台我的活动使用“已报名”等显示值,与后台报名审核状态仍存在差异。
- 入社审核与社团成员维护是独立入口,未确认审核通过必然自动新增成员,文档不承诺该自动联动。
本次按本地源码进行静态核对,未启动前后端或连接数据库执行端到端验证;上述说明反映当前代码与页面定义。