# 校园社团活动管理系统 [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.4.2-green)](https://spring.io/) [![Vue.js](https://img.shields.io/badge/Vue.js-3.2.0-brightgreen)](https://vuejs.org/) [![License](https://img.shields.io/badge/License-MIT-blue)](LICENSE) > 基于SpringBoot + Vue的校园社团活动全流程管理平台 > 毕业设计项目 | 山东建筑大学 | 2025届 --- ## 项目简介 本系统旨在解决传统校园社团活动管理的痛点,提供数字化全流程解决方案: - **角色分层管理**:支持管理员、组织者、参与者三级权限体系 - **活动全生命周期管理**:覆盖活动申请、审核、执行到归档全流程 - **数据可视化**:实时统计活动参与度与社团活跃度 - **安全可靠**:采用JWT鉴权+BCrypt加密+操作日志审计 [//]: # ([👉 **在线演示**](https://demo.club-manager.com) | [📚 需求文档](/docs/需求分析说明书1.4.docx)) --- ## 功能特性 ### 🎯 核心功能 | 模块 | 功能描述 | |----------|--------------------------------| | **社团管理** | 社团信息维护/成员审核/权限分级/数据统计 | | **活动管理** | 在线申请-审核-发布全流程/扫码签到/评论互动/实时通知推送 | | **用户中心** | 多角色视图切换/我的活动追踪/消息通知中心 | ### 🚀 特色功能 - **智能推荐**:基于用户兴趣的活动推送 - **扫码签到**:动态二维码防作弊机制 - **数据看板**:社团活跃度排行榜 --- ## 技术栈 ### 前端技术 | 技术 | 说明 | 版本 | |--------------|-----------------|-------| | Vue.js | 渐进式JavaScript框架 | 3.2.0 | | Element-Plus | UI组件库 | 2.2.0 | | Axios | HTTP客户端 | 1.1.3 | | ECharts | 数据可视化 | 5.4.0 | ### 后端技术 | 技术 | 说明 | 版本 | |--------------|----------|--------| | Spring Boot | Java开发框架 | 2.7.0 | | MyBatis-Plus | ORM框架 | 3.5.2 | | JWT | 身份认证 | 0.11.2 | | Redis | 缓存管理 | 6.2.6 | | Swagger | API文档生成 | 3.0.0 | ### 基础设施 | 组件 | 用途 | |-----------|-----------| | MySQL 8.0 | 主数据库 | | Nginx | 反向代理/负载均衡 | | Docker | 容器化部署 | --- ## 快速开始 ### 环境要求 - JDK 17+ - Node.js 16.x - MySQL 8.0+ - Redis 6.x ### 本地部署 [//]: # ( todo 完善本地部署方法) **初始化数据库** 执行 [/sql/init.sql](/sql/init.sql) 脚本 --- ## 项目结构 ```text campus-club-system/ ├── server/ # 后端服务 │ ├── src/ │ │ ├── main/ │ │ │ ├── java/com/bruce/sams/ │ │ │ │ ├── controller # API接口层 │ │ │ │ ├── service # 业务逻辑层 │ │ │ │ ├── mapper # 数据访问层 │ │ │ │ └── config # 安全/缓存配置 │ │ │ └── resources/ # 配置文件 │ └── pom.xml │ ├── client/ # 前端应用 │ ├── src/ │ │ ├── api/ # 接口封装 │ │ ├── router/ # 路由配置 │ │ ├── views/ # 页面组件 │ │ └── store/ # 状态管理 │ └── package.json │ ├── docs/ # 文档资料 │ ├── 需求分析说明书.docx │ └── 数据库设计.md │ └── sql/ # 数据库脚本 ├── init.sql # 初始化脚本 └── sample_data.sql # 测试数据 ``` --- ## 数据库设计 [//]: # (![ER Diagram](/docs/er-diagram.png)) 关键数据表说明: - **用户表(user)**:存储用户基础信息与角色权限 - **活动表(activity)**:记录活动全生命周期状态 - **报名表(signup_record)**:管理用户报名与签到信息 - **操作日志(admin_log)**:审计所有管理操作 [//]: # ([🔍 查看完整数据库设计](/docs/数据库设计.md)) --- ## 贡献指南 欢迎通过Issue或PR参与改进! 1. Fork本仓库 2. 创建特性分支 (`git checkout -b feature/your-feature`) 3. 提交修改 (`git commit -m 'Add some feature'`) 4. 推送到分支 (`git push origin feature/your-feature`) 5. 创建Pull Request --- ## 许可证 [MIT License](LICENSE) © 2025 孙之烨 | 山东建筑大学