221 lines
4.9 KiB
Markdown
221 lines
4.9 KiB
Markdown
|
|
# 盘古用户平台(Pangu User Platform)
|
|||
|
|
|
|||
|
|
> 面向教育行业的统一用户管理系统
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 项目简介
|
|||
|
|
|
|||
|
|
盘古用户平台是一个基于 RuoYi-Vue 框架开发的教育行业用户管理系统,主要用于管理学校、教师、家长和学生信息,并为其他业务系统提供统一的用户认证和授权服务。
|
|||
|
|
|
|||
|
|
### 核心功能
|
|||
|
|
|
|||
|
|
- **学校管理**:管理学校、年级、班级的树形组织结构
|
|||
|
|
- **会员管理**:管理前端用户(家长/教师),支持多种登录方式
|
|||
|
|
- **学生管理**:管理学生信息,支持批量导入
|
|||
|
|
- **应用管理**:管理第三方应用接入,控制API访问权限
|
|||
|
|
- **基础数据**:年级、班级、学科、区域等基础数据维护
|
|||
|
|
- **系统设置**:用户、角色、菜单、部门等系统管理(复用RuoYi)
|
|||
|
|
|
|||
|
|
### 角色权限
|
|||
|
|
|
|||
|
|
| 角色 | 权限范围 |
|
|||
|
|
| ----- | --------------- |
|
|||
|
|
| 超级管理员 | 全部功能,管理所有数据 |
|
|||
|
|
| 分公司用户 | 管理所属区域的学校、会员、学生 |
|
|||
|
|
| 学校用户 | 管理本校的教师、学生 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 技术栈
|
|||
|
|
|
|||
|
|
### 后端
|
|||
|
|
|
|||
|
|
- Spring Boot 2.7.x
|
|||
|
|
- Spring Security + JWT
|
|||
|
|
- MyBatis Plus 3.5.x
|
|||
|
|
- MySQL 8.0
|
|||
|
|
- Redis 6.x
|
|||
|
|
|
|||
|
|
### 前端
|
|||
|
|
|
|||
|
|
- Vue 3.x
|
|||
|
|
- Element Plus 2.x
|
|||
|
|
- Pinia
|
|||
|
|
- Axios
|
|||
|
|
|
|||
|
|
### 基础框架
|
|||
|
|
|
|||
|
|
- RuoYi-Vue 3.8.x
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 项目结构
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
pangu-user-platform/
|
|||
|
|
├── docs/ # 项目文档
|
|||
|
|
│ ├── 01-需求文档/ # 需求规格说明书
|
|||
|
|
│ ├── 02-系统设计/ # 系统设计文档
|
|||
|
|
│ ├── 03-数据库设计/ # 数据库设计文档
|
|||
|
|
│ ├── 04-接口文档/ # 接口设计文档
|
|||
|
|
│ ├── 05-测试文档/ # 测试相关文档
|
|||
|
|
│ └── 06-运维文档/ # 运维部署文档
|
|||
|
|
├── pangu-admin/ # 后台管理模块
|
|||
|
|
├── pangu-api/ # 移动端API模块
|
|||
|
|
├── pangu-open/ # 开放平台API模块
|
|||
|
|
├── pangu-common/ # 公共模块
|
|||
|
|
├── pangu-framework/ # 框架核心
|
|||
|
|
├── pangu-system/ # 系统模块
|
|||
|
|
├── pangu-generator/ # 代码生成器
|
|||
|
|
├── pangu-ui/ # 前端工程
|
|||
|
|
└── sql/ # 数据库脚本
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 快速开始
|
|||
|
|
|
|||
|
|
### 环境要求
|
|||
|
|
|
|||
|
|
- JDK 1.8+
|
|||
|
|
- Maven 3.6+
|
|||
|
|
- MySQL 8.0+
|
|||
|
|
- Redis 6.0+
|
|||
|
|
- Node.js 16+
|
|||
|
|
|
|||
|
|
### 后端启动
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. 克隆项目
|
|||
|
|
git clone https://your-repo/pangu-user-platform.git
|
|||
|
|
|
|||
|
|
# 2. 导入数据库
|
|||
|
|
mysql -u root -p < sql/pangu_user.sql
|
|||
|
|
|
|||
|
|
# 3. 修改配置文件
|
|||
|
|
# 编辑 pangu-admin/src/main/resources/application-druid.yml
|
|||
|
|
# 修改数据库连接信息
|
|||
|
|
|
|||
|
|
# 4. 启动项目
|
|||
|
|
cd pangu-admin
|
|||
|
|
mvn spring-boot:run
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 前端启动
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. 进入前端目录
|
|||
|
|
cd pangu-ui
|
|||
|
|
|
|||
|
|
# 2. 安装依赖
|
|||
|
|
npm install
|
|||
|
|
|
|||
|
|
# 3. 启动开发服务器
|
|||
|
|
npm run dev
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 访问地址
|
|||
|
|
|
|||
|
|
- 后台管理:http://localhost:80
|
|||
|
|
- 后端接口:http://localhost:8080
|
|||
|
|
- Swagger文档:http://localhost:8080/swagger-ui.html
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 文档说明
|
|||
|
|
|
|||
|
|
| 文档 | 路径 | 说明 |
|
|||
|
|
| ------- | -------------- | ------------ |
|
|||
|
|
| 需求规格说明书 | docs/01-需求文档/ | 详细功能需求,用于评审 |
|
|||
|
|
| 系统设计文档 | docs/02-系统设计/ | 架构设计、模块设计 |
|
|||
|
|
| 数据库设计文档 | docs/03-数据库设计/ | 表结构、ER图、初始数据 |
|
|||
|
|
| 接口设计文档 | docs/04-接口文档/ | API接口规范 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 原型设计
|
|||
|
|
|
|||
|
|
- **墨刀原型**:https://modao.cc/proto/atlwMul8t9pi6yxQ42W7up/sharing
|
|||
|
|
- **页面数量**:17个
|
|||
|
|
- **访问方式**:只读模式
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 开发规范
|
|||
|
|
|
|||
|
|
### 代码规范
|
|||
|
|
|
|||
|
|
- 遵循《湖北新华业务中台代码规范》
|
|||
|
|
- 类/方法使用Javadoc注释
|
|||
|
|
- 使用统一的返回格式和异常处理
|
|||
|
|
|
|||
|
|
### 分支管理
|
|||
|
|
|
|||
|
|
| 分支 | 用途 |
|
|||
|
|
| --------- | ---------- |
|
|||
|
|
| main | 主分支,生产环境代码 |
|
|||
|
|
| develop | 开发分支 |
|
|||
|
|
| feature/* | 功能分支 |
|
|||
|
|
| hotfix/* | 紧急修复分支 |
|
|||
|
|
|
|||
|
|
### 提交规范
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
<type>: <简要描述>
|
|||
|
|
|
|||
|
|
类型说明:
|
|||
|
|
- feat: 新功能
|
|||
|
|
- fix: 修复Bug
|
|||
|
|
- docs: 文档修改
|
|||
|
|
- style: 代码格式调整
|
|||
|
|
- refactor: 代码重构
|
|||
|
|
- test: 测试相关
|
|||
|
|
- chore: 构建/工具变动
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 部署说明
|
|||
|
|
|
|||
|
|
### 单机部署
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. 打包后端
|
|||
|
|
mvn clean package -DskipTests
|
|||
|
|
|
|||
|
|
# 2. 上传jar包到服务器
|
|||
|
|
scp pangu-admin/target/pangu-admin.jar user@server:/app/
|
|||
|
|
|
|||
|
|
# 3. 启动服务
|
|||
|
|
nohup java -jar pangu-admin.jar --spring.profiles.active=prod > app.log 2>&1 &
|
|||
|
|
|
|||
|
|
# 4. 打包前端
|
|||
|
|
cd pangu-ui
|
|||
|
|
npm run build:prod
|
|||
|
|
|
|||
|
|
# 5. 上传dist到Nginx目录
|
|||
|
|
scp -r dist/* user@server:/usr/share/nginx/html/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Docker部署(可选)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 构建镜像
|
|||
|
|
docker build -t pangu-user-platform:1.0 .
|
|||
|
|
|
|||
|
|
# 运行容器
|
|||
|
|
docker run -d -p 8080:8080 --name pangu-api pangu-user-platform:1.0
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 联系方式
|
|||
|
|
|
|||
|
|
- **团队**:pangu
|
|||
|
|
- **创建时间**:2026-01-31
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
*最后更新:2026-01-31*
|