修改了 README.md 和 api_documentation.md
This commit is contained in:
parent
0cc8e6611a
commit
e7dce915c5
322
README.md
322
README.md
@ -1,189 +1,213 @@
|
||||
<p align="center">
|
||||
<img alt="logo" src="https://oscimg.oschina.net/oscnet/up-d3d0a9303e11d522a06cd263f3079027715.png">
|
||||
</p>
|
||||
<h1 align="center" style="margin: 30px 0 30px; font-weight: bold;">RuoYi-Vue3-FastAPI v1.6.2</h1>
|
||||
<h4 align="center">基于RuoYi-Vue3+FastAPI前后端分离的快速开发框架</h4>
|
||||
<h1 align="center" style="margin: 30px 0 30px; font-weight: bold;">康达机器人管理系统</h1>
|
||||
<h4 align="center">基于RuoYi-Vue3+FastAPI的智能机器人综合管理平台</h4>
|
||||
<p align="center">
|
||||
<a href="https://gitee.com/insistence2022/RuoYi-Vue3-FastAPI/stargazers"><img src="https://gitee.com/insistence2022/RuoYi-Vue3-FastAPI/badge/star.svg?theme=dark"></a>
|
||||
<a href="https://github.com/insistence/RuoYi-Vue3-FastAPI"><img src="https://img.shields.io/github/stars/insistence/RuoYi-Vue3-FastAPI?style=social"></a>
|
||||
<a href="https://gitee.com/insistence2022/RuoYi-Vue3-FastAPI"><img src="https://img.shields.io/badge/RuoYiVue3FastAPI-v1.6.2-brightgreen.svg"></a>
|
||||
<a href="https://gitee.com/insistence2022/RuoYi-Vue3-FastAPI/blob/master/LICENSE"><img src="https://img.shields.io/github/license/mashape/apistatus.svg"></a>
|
||||
<img src="https://img.shields.io/badge/python-≥3.9-blue">
|
||||
<img src="https://img.shields.io/badge/MySQL-≥5.7-blue">
|
||||
<img src="https://img.shields.io/badge/FastAPI-≥0.100.0-blue">
|
||||
<img src="https://img.shields.io/badge/Vue3-≥3.2.0-blue">
|
||||
</p>
|
||||
|
||||
## 平台简介
|
||||
|
||||
RuoYi-Vue3-FastAPI是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。
|
||||
康达机器人管理系统是基于RuoYi-Vue3-FastAPI框架开发的智能机器人综合管理平台,专注于提供机器人设备管理、人脸识别、门禁控制、讲解内容管理等功能。
|
||||
|
||||
* 前端采用Vue3、Element Plus,基于<u>[RuoYi-Vue3](https://github.com/yangzongzhuan/RuoYi-Vue3)</u>前端项目修改。
|
||||
* 后端采用FastAPI、sqlalchemy、MySQL(PostgreSQL)、Redis、OAuth2 & Jwt。
|
||||
* 权限认证使用OAuth2 & Jwt,支持多终端认证系统。
|
||||
* 支持加载动态权限菜单,多方式轻松权限控制。
|
||||
* Vue2版本:
|
||||
- Gitte仓库地址:https://gitee.com/insistence2022/RuoYi-Vue-FastAPI
|
||||
- GitHub仓库地址:https://github.com/insistence/RuoYi-Vue-FastAPI
|
||||
* 纯Python版本:
|
||||
- Gitte仓库地址:https://gitee.com/insistence2022/dash-fastapi-admin
|
||||
- GitHub仓库地址:https://github.com/insistence/Dash-FastAPI-Admin
|
||||
* 特别鸣谢:<u>[RuoYi-Vue3](https://github.com/yangzongzhuan/RuoYi-Vue3)</u>
|
||||
* 后端采用FastAPI、SQLAlchemy、Redis、OAuth2 & Jwt构建高性能异步API服务
|
||||
* 前端基于Vue3、Element Plus实现现代化UI界面
|
||||
* 集成海康威视平台实现门禁设备管理和视频监控
|
||||
* 集成Compreface实现高精度人脸识别功能
|
||||
* 支持机器人角色管理、讲解内容管理、动作控制等机器人专属功能
|
||||
* 提供完整的系统监控、日志管理、权限控制等企业级特性
|
||||
|
||||
## 内置功能
|
||||
## 核心功能
|
||||
|
||||
1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
|
||||
2. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
|
||||
3. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
|
||||
4. 部门管理:配置系统组织机构(公司、部门、小组)。
|
||||
5. 岗位管理:配置系统用户所属担任职务。
|
||||
6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
|
||||
7. 参数管理:对系统动态配置常用参数。
|
||||
8. 通知公告:系统通知公告信息发布维护。
|
||||
9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
|
||||
10. 登录日志:系统登录日志记录查询包含登录异常。
|
||||
11. 在线用户:当前系统中活跃用户状态监控。
|
||||
12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
|
||||
13. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
|
||||
14. 缓存监控:对系统的缓存信息查询,命令统计等。
|
||||
15. 在线构建器:拖动表单元素生成相应的HTML代码。
|
||||
16. 系统接口:根据业务代码自动生成相关的api接口文档。
|
||||
17. 代码生成:配置数据库表信息一键生成前后端代码(python、sql、vue、js),支持下载。
|
||||
### 系统管理
|
||||
1. **用户管理**:系统用户配置、权限分配
|
||||
2. **角色管理**:角色菜单权限分配、数据范围权限控制
|
||||
3. **菜单管理**:动态菜单配置、操作权限管理
|
||||
4. **字典管理**:系统固定数据维护
|
||||
5. **操作日志**:系统操作记录查询与审计
|
||||
6. **登录日志**:用户登录记录及异常监控
|
||||
|
||||
## 演示图
|
||||
### 机器人管理
|
||||
1. **机器人信息管理**:机器人基本信息维护
|
||||
2. **机器人角色配对**:机器人与角色关联管理
|
||||
3. **机器人动作管理**:机器人动作序列配置
|
||||
4. **引导词管理**:机器人引导语配置
|
||||
5. **讲解内容管理**:讲解内容的增删改查
|
||||
6. **讲解风格管理**:不同机器人讲解风格配置
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/login.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/dashboard.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/user.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/role.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/menu.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/dept.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/post.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/dict.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/config.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/notice.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/operLog.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/loginLog.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/online.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/job.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/server.png"/></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/cache.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/cacheList.png"></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/form.png"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/api.png"></td>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/gen.png"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/profile.png"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
### 人脸识别与门禁
|
||||
1. **人脸识别管理**:基于Compreface的人脸检测与识别
|
||||
2. **门禁设备管理**:海康威视门禁设备的配置与控制
|
||||
3. **识别记录管理**:人脸识别记录查询与统计
|
||||
4. **识别统计管理**:人脸识别数据统计分析
|
||||
|
||||
## 在线体验
|
||||
- *账号:admin*
|
||||
- *密码:admin123*
|
||||
- 演示地址:<a href="https://vfadmin.insistence.tech">vfadmin管理系统<a>
|
||||
### 系统监控与维护
|
||||
1. **在线用户**:活跃用户状态监控
|
||||
2. **定时任务**:任务调度与执行日志
|
||||
3. **服务监控**:系统CPU、内存、磁盘等资源监控
|
||||
4. **代码生成**:数据库表一键生成前后端代码
|
||||
|
||||
## 项目开发及发布相关
|
||||
## 技术栈
|
||||
|
||||
### 开发
|
||||
### 后端技术
|
||||
| 技术 | 版本 | 用途 |
|
||||
| ---- | ---- | ---- |
|
||||
| FastAPI | ≥0.100.0 | 异步Web框架 |
|
||||
| SQLAlchemy | ≥2.0.0 | ORM框架 |
|
||||
| Redis | ≥6.0 | 缓存、会话管理 |
|
||||
| MySQL/PostgreSQL | ≥5.7/≥12.0 | 数据库 |
|
||||
| OAuth2 + JWT | - | 身份认证与授权 |
|
||||
| Asyncio | - | 异步编程支持 |
|
||||
|
||||
```bash
|
||||
# 克隆项目
|
||||
git clone https://gitee.com/insistence2022/RuoYi-Vue3-FastAPI.git
|
||||
### 前端技术
|
||||
| 技术 | 版本 | 用途 |
|
||||
| ---- | ---- | ---- |
|
||||
| Vue3 | ≥3.2.0 | 前端框架 |
|
||||
| Element Plus | ≥2.0.0 | UI组件库 |
|
||||
| Vue Router | ≥4.0.0 | 路由管理 |
|
||||
| Pinia | ≥2.0.0 | 状态管理 |
|
||||
| Vite | ≥4.0.0 | 构建工具 |
|
||||
|
||||
# 进入项目根目录
|
||||
cd RuoYi-Vue3-FastAPI
|
||||
### 第三方服务集成
|
||||
| 服务 | 用途 |
|
||||
| ---- | ---- |
|
||||
| 海康威视平台 | 门禁设备管理、视频监控 |
|
||||
| Compreface | 人脸识别服务 |
|
||||
| RAGFlow | AI对话与知识库管理 |
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
├── main.py # 项目入口文件
|
||||
├── ruoyi-fastapi-backend/ # 后端应用目录
|
||||
│ ├── app.py # FastAPI应用入口
|
||||
│ ├── server.py # 应用配置与路由注册
|
||||
│ ├── config/ # 配置文件目录
|
||||
│ ├── module_admin/ # 核心业务模块
|
||||
│ │ ├── controller/ # 控制器层
|
||||
│ │ ├── service/ # 服务层
|
||||
│ │ ├── dao/ # 数据访问层
|
||||
│ │ └── entity/ # 实体层
|
||||
│ ├── utils/ # 工具类目录
|
||||
│ │ ├── haikang_util.py # 海康平台工具
|
||||
│ │ ├── compreface_util.py # Compreface工具
|
||||
│ │ └── ...
|
||||
│ └── ...
|
||||
└── ruoyi-fastapi-frontend/ # 前端应用目录
|
||||
├── src/ # 前端源代码
|
||||
├── index.html # HTML入口
|
||||
├── package.json # 项目依赖
|
||||
└── ...
|
||||
```
|
||||
|
||||
#### 前端
|
||||
## 开发与部署
|
||||
|
||||
### 开发环境准备
|
||||
|
||||
#### 后端环境
|
||||
```bash
|
||||
# 进入后端目录
|
||||
cd ruoyi-fastapi-backend
|
||||
|
||||
# 安装依赖(MySQL版本)
|
||||
pip3 install -r requirements.txt
|
||||
# 或安装PostgreSQL版本依赖
|
||||
pip3 install -r requirements-pg.txt
|
||||
|
||||
# 配置环境变量
|
||||
cp .env.dev.example .env.dev
|
||||
# 编辑.env.dev文件,配置数据库、Redis、海康平台、Compreface等参数
|
||||
|
||||
# 初始化数据库
|
||||
# 1. 创建数据库
|
||||
# 2. 执行sql/ruoyi-fastapi.sql(MySQL)或sql/ruoyi-fastapi-pg.sql(PostgreSQL)
|
||||
|
||||
# 启动开发服务器
|
||||
python3 app.py --env=dev
|
||||
```
|
||||
|
||||
#### 前端环境
|
||||
```bash
|
||||
# 进入前端目录
|
||||
cd ruoyi-fastapi-frontend
|
||||
|
||||
# 安装依赖
|
||||
npm install 或 yarn --registry=https://registry.npmmirror.com
|
||||
|
||||
# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
|
||||
npm install --registry=https://registry.npmmirror.com
|
||||
|
||||
# 启动服务
|
||||
npm run dev 或 yarn dev
|
||||
# 启动开发服务器
|
||||
npm run dev
|
||||
```
|
||||
|
||||
#### 后端
|
||||
### 生产部署
|
||||
|
||||
#### 前端构建
|
||||
```bash
|
||||
# 进入后端目录
|
||||
cd ruoyi-fastapi-backend
|
||||
|
||||
# 如果使用的是MySQL数据库,请执行以下命令安装项目依赖环境
|
||||
pip3 install -r requirements.txt
|
||||
# 如果使用的是PostgreSQL数据库,请执行以下命令安装项目依赖环境
|
||||
pip3 install -r requirements-pg.txt
|
||||
|
||||
# 配置环境
|
||||
在.env.dev文件中配置开发环境的数据库和redis
|
||||
|
||||
# 运行sql文件
|
||||
1.新建数据库ruoyi-fastapi(默认,可修改)
|
||||
2.如果使用的是MySQL数据库,使用命令或数据库连接工具运行sql文件夹下的ruoyi-fastapi.sql;如果使用的是PostgreSQL数据库,使用命令或数据库连接工具运行sql文件夹下的ruoyi-fastapi-pg.sql
|
||||
|
||||
# 运行后端
|
||||
python3 app.py --env=dev
|
||||
# 构建生产版本
|
||||
npm run build:prod
|
||||
# 构建产物将生成在dist目录
|
||||
```
|
||||
|
||||
#### 访问
|
||||
#### 后端部署
|
||||
```bash
|
||||
# 默认账号密码
|
||||
账号:admin
|
||||
密码:admin123
|
||||
# 配置生产环境变量
|
||||
cp .env.prod.example .env.prod
|
||||
# 编辑.env.prod文件配置生产环境参数
|
||||
|
||||
# 浏览器访问
|
||||
地址:http://localhost:80
|
||||
```
|
||||
|
||||
### 发布
|
||||
|
||||
#### 前端
|
||||
```bash
|
||||
# 构建测试环境
|
||||
npm run build:stage 或 yarn build:stage
|
||||
|
||||
# 构建生产环境
|
||||
npm run build:prod 或 yarn build:prod
|
||||
```
|
||||
|
||||
#### 后端
|
||||
```bash
|
||||
# 配置环境
|
||||
在.env.prod文件中配置生产环境的数据库和redis
|
||||
|
||||
# 运行后端
|
||||
# 启动生产服务器
|
||||
python3 app.py --env=prod
|
||||
```
|
||||
|
||||
## 交流与赞助
|
||||
如果有对本项目及FastAPI感兴趣的朋友,欢迎加入知识星球一起交流学习,让我们一起变得更强。如果你觉得这个项目帮助到了你,你可以请作者喝杯咖啡表示鼓励☕。扫描下面微信二维码添加微信备注VF-Admin即可进群。
|
||||
<table>
|
||||
## 环境配置
|
||||
|
||||
<tr>
|
||||
<td><img alt="wxcode" src="https://gitee.com/insistence2022/RuoYi-Vue-FastAPI/raw/master/demo-pictures/wxcode.jpg"></td>
|
||||
</tr>
|
||||
</table>
|
||||
### 核心配置文件
|
||||
- `.env.dev`:开发环境配置
|
||||
- `.env.prod`:生产环境配置
|
||||
|
||||
### 关键配置项
|
||||
```env
|
||||
# 应用配置
|
||||
APP_NAME=康达机器人管理系统
|
||||
APP_PORT=9099
|
||||
|
||||
# 数据库配置
|
||||
DB_TYPE=mysql
|
||||
DB_HOST=localhost
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=ruoyi-fastapi
|
||||
DB_USERNAME=root
|
||||
DB_PASSWORD=password
|
||||
|
||||
# Redis配置
|
||||
REDIS_HOST=localhost
|
||||
REDIS_PORT=6379
|
||||
|
||||
# 海康平台配置
|
||||
HAIKANG_URL=http://your-haikang-server
|
||||
HAIKANG_AK=your-access-key
|
||||
HAIKANG_SK=your-secret-key
|
||||
|
||||
# Compreface配置
|
||||
COMPREFACE_BASE_URL=http://your-compreface-server
|
||||
COMPREFACE_API_KEY=your-api-key
|
||||
```
|
||||
|
||||
## API文档
|
||||
|
||||
项目启动后,可通过以下地址访问API文档:
|
||||
- Swagger UI: `http://localhost:9099/dev-api/docs`
|
||||
- ReDoc: `http://localhost:9099/dev-api/redoc`
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. 首次使用需先配置数据库并执行初始化SQL脚本
|
||||
2. 海康平台和Compreface服务需提前部署并配置API密钥
|
||||
3. 生产环境需修改默认JWT密钥和数据库密码
|
||||
4. 建议使用Nginx作为前端静态资源服务器和API反向代理
|
||||
|
||||
## 许可证
|
||||
|
||||
本项目基于Apache License 2.0开源协议。
|
||||
3122
ruoyi-fastapi-backend/doc/api_documentation.md
Normal file
3122
ruoyi-fastapi-backend/doc/api_documentation.md
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user