SAMS/README.md

169 lines
5.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# SAMS校园社团活动管理系统
[![img](https://img.shields.io/badge/RuoYi-v3.8.9-brightgreen.svg)](https://gitee.com/y_project/RuoYi-Vue) [![Spring Boot](https://img.shields.io/badge/Spring%20Boot-2.5.2-green)](https://spring.io/) [![Vue.js](https://img.shields.io/badge/Vue.js-2.5.0-brightgreen)](https://vuejs.org/)[![img](https://img.shields.io/github/license/mashape/apistatus.svg)](https://gitee.com/y_project/RuoYi-Vue/blob/master/LICENSE)
>基于SpringBoot + Vue 的校园社团活动全流程管理平台
>
>毕业设计项目 | 山东建筑大学 | 2025届
## 项目简介
本项目是基于 RuoYi-Vue 前后端分离版开发的校园社团活动管理系统,旨在为高校师生提供一个高效、便捷的社团活动组织与管理平台。系统支持活动的发布、审核、参与、互动等功能,提升校园社团活动的管理效率和参与体验。
## 技术栈
### 前端
| 技术 | 说明 | 版本信息 |
| ---------- | --------- | -------- |
| Vue.js | 前端框架 | 2.6.x |
| Element UI | UI 组件库 | 2.15.x |
| Axios | 网络请求 | 0.21.x |
### 后端
| 技术 | 说明 | 版本信息 |
| --------------- | ------------ | -------- |
| Java EE | Java开发环境 | 1.8+ |
| Spring Boot | 后端开发框架 | 2.5.15 |
| Spring Security | 安全框架 | 5.7.12 |
| MyBatis | ORM 框架 | 3.x |
| JWT | 身份验证机制 | 0.9.1 |
### 数据库
| 技术 | 说明 | 版本信息 |
| ----- | ------------ | ------------ |
| MySQL | 关系型数据库 | 5.7+ 建议8.0 |
| Redis | 缓存数据库 | >=3 |
### 构建工具
| 技术 | 说明 | 版本信息 |
| ------- | ------------------ | -------- |
| Maven | 项目管理和构建工具 | 3.6.x+ |
| Node.js | 前端构建工具 | 16.14.0 |
## 功能模块
### 1. 用户管理
- **角色划分**:系统将用户分为管理员、社团成员和普通参与者三种角色,分别拥有不同的权限。
- **权限控制**:基于角色的权限控制,确保系统操作的安全性和规范性。
### 2. 社团管理
- **社团信息维护**支持社团的基本信息管理包括名称、简介、Logo、所属学院、社团类别、社团负责人等。
- **成员管理**:支持社团成员的加入和退出审核,记录成员的活跃度(如发起活动次数和参与活动次数等)。
### 3. 活动管理
- **活动申请与审核**:用户可以提交活动申请,管理员进行审核,支持通过、驳回或要求修改。
- **活动发布与展示**:活动自动分类展示,支持关键词搜索、时间筛选、社团分类浏览等功能。
- **活动执行与监控**:组织者可实时更新活动信息,管理员可监控活动进展,发现违规可强制终止并通知参与者。
### 4. 互动功能
- **报名与签到**:用户可在线报名活动,活动当日进行签到,记录参与情况。
- **评论与点赞**:用户可对活动发表评论和点赞,增强互动性。
- **通知与提醒**:系统自动推送报名成功提醒、活动开始前提醒、变更通知等。
## 系统架构
系统采用前后端分离架构,前端使用 Vue.js 构建单页应用,后端基于 Spring Boot 提供 RESTful API 接口,前后端通过 JSON 进行数据交互。
## 安装部署
### 前提条件
- **JDK**1.8 及以上
- **MySQL**5.7 及以上建议8.0+
- **Redis**3.0 及以上
- **Node.js**16.14.0(仅该版本,高低版本可能会有依赖冲突)
- **Maven**3.0 及以上
### 后端部署
1. 克隆项目代码:
```bash
git clone https://git.waynews.top/BruceSun/SAMS.git
```
1. 导入数据库:
`sql` 目录下的 SQL 文件导入 MySQL 数据库。
2. 配置数据库连接:
修改 `application-druid.yml` 文件,配置数据库连接信息。
3. 启动 Redis 服务。
4. 运行后端项目:
使用 IDE如 IntelliJ IDEA打开项目运行 `RuoYiApplication` 主类启动后端服务。
### 前端部署
1.进入前端项目目录:
```bash
cd ruoyi-ui
```
2.安装依赖:
```bash
npm install
#注意npm国内安装比较慢建议使用国内镜像安装
npm install --registry=https://registry.npmmirror.com
```
3.运行前端项目(开发环境):
```bash
npm run dev
```
4.访问系统:
在浏览器中打开 `http://localhost:80`使用默认账户登录用户名admin密码admin123
## 目录结构
### 后端目录结构
```plaintext
ruoyi
├── bs-sams // 业务模块
├── ruoyi-admin // 后台管理模块
├── ruoyi-common // 公共模块
├── ruoyi-framework // 框架核心模块
├── ruoyi-generator // 代码生成模块
├── ruoyi-quartz // 定时任务模块
├── ruoyi-system // 系统模块
└── sql // 数据库脚本
```
### 前端目录结构
```plaintext
ruoyi-ui
├── public // 公共资源
└── src
├── api // 接口请求
├── assets // 静态资源
├── components // 公共组件
├── layout // 布局组件
├── router // 路由配置
├── store // 状态管理
├── utils // 工具函数
├── views // 页面视图
├── App.vue // 根组件
└── main.js // 入口文件
```
## 参考资料
- RuoYi-Vue 官方文档https://doc.ruoyi.vip/ruoyi-vue/
- RuoYi-Vue Gitee 仓库https://gitee.com/y_project/RuoYi-Vue