更新
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
<div align="center">
|
||||
|
||||
# Laravel Swoole 管理系统
|
||||
# LarAdmin
|
||||
|
||||
基于 Laravel + Swoole + Vue3 的高性能后台管理系统
|
||||
|
||||
@@ -14,7 +14,7 @@ # Laravel Swoole 管理系统
|
||||
|
||||
## 📖 项目简介
|
||||
|
||||
本项目是一个基于 Laravel 12 + Swoole + Vue3 的高性能后台管理系统,采用模块化架构设计,提供完整的认证授权、系统管理、业务扩展等功能。项目集成了 `hhxsv5/laravel-s` 实现 Swoole 长生命周期服务,大幅提升系统并发性能和响应速度。
|
||||
LarAdmin 是一个基于 Laravel 12 + Swoole + Vue3 的高性能后台管理系统,采用模块化架构设计,提供完整的认证授权、系统管理、业务扩展等功能。项目集成了 `hhxsv5/laravel-s` 实现 Swoole 长生命周期服务,大幅提升系统并发性能和响应速度。
|
||||
|
||||
### ✨ 核心特性
|
||||
|
||||
@@ -49,11 +49,13 @@ ### 前端
|
||||
- **Pinia**: 3.0+ (状态管理)
|
||||
- **Axios**: HTTP 客户端
|
||||
- **Vue I18n**: 国际化支持
|
||||
- **CKEditor 5**: 富文本编辑器
|
||||
- **ECharts**: 数据可视化
|
||||
|
||||
## 📁 项目结构
|
||||
|
||||
```
|
||||
laravel_swoole/
|
||||
laradmin/
|
||||
├── app/ # 基础模块目录
|
||||
│ ├── Http/Controllers/ # 控制器
|
||||
│ │ ├── Auth/ # 认证模块控制器
|
||||
@@ -71,7 +73,8 @@ ## 📁 项目结构
|
||||
│ │ │ ├── Task.php
|
||||
│ │ │ ├── City.php
|
||||
│ │ │ └── Upload.php
|
||||
│ │ └── Api/
|
||||
│ │ ├── Api/
|
||||
│ │ └── WebSocket.php
|
||||
│ ├── Models/ # 模型
|
||||
│ │ ├── Auth/
|
||||
│ │ │ ├── User.php
|
||||
@@ -81,9 +84,11 @@ ## 📁 项目结构
|
||||
│ │ └── System/
|
||||
│ ├── Services/ # 服务层
|
||||
│ │ ├── Auth/
|
||||
│ │ └── System/
|
||||
│ └── Exports/ # 导出类
|
||||
│ └── Imports/ # 导入类
|
||||
│ │ ├── System/
|
||||
│ │ └── WebSocket/
|
||||
│ ├── Exports/ # 导出类
|
||||
│ ├── Imports/ # 导入类
|
||||
│ └── Middleware/ # 中间件
|
||||
├── Modules/ # 业务模块目录
|
||||
│ └── ModuleName/ # 业务模块示例
|
||||
│ ├── App/
|
||||
@@ -105,11 +110,18 @@ ## 📁 项目结构
|
||||
│ │ ├── src/
|
||||
│ │ │ ├── api/ # API 接口
|
||||
│ │ │ ├── components/ # 公共组件
|
||||
│ │ │ │ ├── scForm/ # 表单组件
|
||||
│ │ │ │ ├── scTable/ # 表格组件
|
||||
│ │ │ │ ├── scUpload/ # 上传组件
|
||||
│ │ │ │ ├── scEditor/ # 富文本编辑器
|
||||
│ │ │ │ ├── scImport/ # 导入组件
|
||||
│ │ │ │ └── scExport/ # 导出组件
|
||||
│ │ │ ├── layouts/ # 布局组件
|
||||
│ │ │ ├── pages/ # 页面组件
|
||||
│ │ │ ├── router/ # 路由配置
|
||||
│ │ │ ├── stores/ # 状态管理
|
||||
│ │ │ ├── utils/ # 工具函数
|
||||
│ │ │ ├── hooks/ # 组合式 API
|
||||
│ │ │ └── i18n/ # 国际化
|
||||
│ │ └── package.json
|
||||
│ └── views/
|
||||
@@ -148,25 +160,31 @@ ### 安装步骤
|
||||
#### 1. 克隆项目
|
||||
|
||||
```bash
|
||||
git clone http://git.tensent.cn/molong/laravel_swoole.git
|
||||
cd laravel_swoole
|
||||
git clone http://git.tensent.cn/molong/laravel_swoole.git laradmin
|
||||
cd laradmin
|
||||
```
|
||||
|
||||
#### 2. 安装依赖
|
||||
#### 2. 自动安装(推荐)
|
||||
|
||||
```bash
|
||||
# 一键安装所有依赖并初始化
|
||||
composer run setup
|
||||
```
|
||||
|
||||
此命令会自动执行:
|
||||
- 安装后端依赖
|
||||
- 配置环境文件
|
||||
- 生成应用密钥
|
||||
- 执行数据库迁移
|
||||
- 安装前端依赖
|
||||
- 构建前端资源
|
||||
|
||||
#### 3. 手动安装
|
||||
|
||||
```bash
|
||||
# 安装后端依赖
|
||||
composer install
|
||||
|
||||
# 安装前端依赖
|
||||
cd resources/admin
|
||||
npm install
|
||||
cd ../..
|
||||
```
|
||||
|
||||
#### 3. 环境配置
|
||||
|
||||
```bash
|
||||
# 复制环境配置文件
|
||||
cp .env.example .env
|
||||
|
||||
@@ -175,31 +193,22 @@ # 生成应用密钥
|
||||
|
||||
# 配置数据库、Redis等参数
|
||||
# 编辑 .env 文件
|
||||
```
|
||||
|
||||
#### 4. 执行数据库迁移
|
||||
|
||||
```bash
|
||||
# 执行迁移
|
||||
# 执行数据库迁移
|
||||
php artisan migrate
|
||||
|
||||
# 填充初始数据
|
||||
php artisan db:seed
|
||||
```
|
||||
|
||||
#### 5. 配置 JWT
|
||||
|
||||
```bash
|
||||
# 生成 JWT 密钥
|
||||
php artisan jwt:secret
|
||||
```
|
||||
|
||||
#### 6. 构建前端
|
||||
|
||||
```bash
|
||||
# 安装前端依赖
|
||||
cd resources/admin
|
||||
npm install
|
||||
|
||||
# 构建前端
|
||||
npm run build
|
||||
cd ../..
|
||||
```
|
||||
|
||||
### 运行项目
|
||||
@@ -207,15 +216,31 @@ ### 运行项目
|
||||
#### 开发模式
|
||||
|
||||
```bash
|
||||
# 启动 Laravel 开发服务器
|
||||
php artisan serve
|
||||
|
||||
# 启动前端开发服务器(另开终端)
|
||||
cd resources/admin
|
||||
npm run dev
|
||||
# 一键启动所有服务
|
||||
composer run dev
|
||||
```
|
||||
|
||||
#### Swoole 模式(推荐)
|
||||
此命令会启动:
|
||||
- Laravel 开发服务器 (http://localhost:8000)
|
||||
- 队列监听器
|
||||
- 日志监控
|
||||
- Vite 前端开发服务器
|
||||
|
||||
#### 分步启动
|
||||
|
||||
```bash
|
||||
# 终端1: 启动 Laravel 开发服务器
|
||||
php artisan serve
|
||||
|
||||
# 终端2: 启动前端开发服务器
|
||||
cd resources/admin
|
||||
npm run dev
|
||||
|
||||
# 终端3: 启动队列监听器(可选)
|
||||
php artisan queue:listen
|
||||
```
|
||||
|
||||
#### Swoole 模式(推荐生产环境)
|
||||
|
||||
```bash
|
||||
# 启动 Laravel-S 服务
|
||||
@@ -229,6 +254,9 @@ # 重启服务
|
||||
|
||||
# 重载服务(平滑重启)
|
||||
php bin/laravels reload
|
||||
|
||||
# 查看状态
|
||||
php bin/laravels status
|
||||
```
|
||||
|
||||
访问地址:http://localhost:5200 (默认)
|
||||
@@ -530,6 +558,74 @@ # 或使用文件监控(开发环境)
|
||||
bin/inotify # Linux
|
||||
```
|
||||
|
||||
## 🌟 特色功能
|
||||
|
||||
### 1. 动态菜单路由
|
||||
|
||||
前端支持动态路由加载,登录后自动根据权限生成菜单树:
|
||||
|
||||
```javascript
|
||||
// 登录后获取菜单
|
||||
const menus = await authApi.permissions.menu.get()
|
||||
userStore.setMenu(menus)
|
||||
```
|
||||
|
||||
### 2. 权限指令
|
||||
|
||||
前端提供权限指令,方便控制元素显示:
|
||||
|
||||
```vue
|
||||
<!-- 只有拥有 user.create 权限时显示 -->
|
||||
<a-button v-permission="'user.create'">新增</a-button>
|
||||
|
||||
<!-- 拥有多个权限之一时显示 -->
|
||||
<a-button v-permission="['user.create', 'user.update']">编辑</a-button>
|
||||
```
|
||||
|
||||
### 3. 数据导入导出
|
||||
|
||||
支持 Excel 数据导入导出:
|
||||
|
||||
```javascript
|
||||
// 导出用户数据
|
||||
await userApi.export.post(params)
|
||||
|
||||
// 导入用户数据
|
||||
await userApi.import.post(formData)
|
||||
```
|
||||
|
||||
### 4. 富文本编辑器
|
||||
|
||||
集成 CKEditor 5 富文本编辑器:
|
||||
|
||||
```vue
|
||||
<sc-editor
|
||||
v-model="content"
|
||||
:height="400"
|
||||
/>
|
||||
```
|
||||
|
||||
### 5. 文件上传
|
||||
|
||||
支持多种上传方式:
|
||||
|
||||
```vue
|
||||
<!-- 图片上传 -->
|
||||
<sc-upload
|
||||
v-model="imageUrl"
|
||||
:limit="1"
|
||||
accept="image/*"
|
||||
list-type="picture-card"
|
||||
/>
|
||||
|
||||
<!-- 文件上传 -->
|
||||
<sc-upload
|
||||
v-model="fileList"
|
||||
:limit="5"
|
||||
:max-size="10"
|
||||
/>
|
||||
```
|
||||
|
||||
## 🤝 贡献指南
|
||||
|
||||
欢迎提交 Issue 和 Pull Request!
|
||||
@@ -585,11 +681,26 @@ ## 🙏 致谢
|
||||
- [Vue.js](https://vuejs.org)
|
||||
- [Ant Design Vue](https://antdv.com)
|
||||
- [Laravel Modules](https://nwidart.com/laravel-modules)
|
||||
- [CKEditor 5](https://ckeditor.com)
|
||||
- [ECharts](https://echarts.apache.org)
|
||||
|
||||
## 📝 更新日志
|
||||
|
||||
### v1.0.0 (2024-01-01)
|
||||
|
||||
- 🎉 初始版本发布
|
||||
- ✅ 完成 Auth 模块(用户、角色、权限、部门)
|
||||
- ✅ 完成 System 模块(配置、日志、字典、任务、城市、上传)
|
||||
- ✅ 集成 Swoole 高性能服务
|
||||
- ✅ 完成前端 Vue3 管理界面
|
||||
- ✅ 实现 WebSocket 实时通信
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
**LarAdmin** - 高性能后台管理系统
|
||||
|
||||
Made with ❤️ by [Tensent](http://git.tensent.cn)
|
||||
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user