chore: initialize tuhui repository

This commit is contained in:
Codex
2026-03-08 19:28:32 +08:00
commit ee10c46aae
189 changed files with 17754 additions and 0 deletions

128
backend/README.md Normal file
View File

@@ -0,0 +1,128 @@
# 爱设计后端 API
基于 FastAPI 的付费下载平台后端
## 功能特性
- ✅ 用户注册/登录JWT认证
- ✅ 作品浏览/搜索
- ✅ 付费下载(易收米支付)
- ✅ 图片水印处理
- ✅ 缩略图生成
- ✅ 订单管理
- ✅ 支付回调处理
- ✅ 订单状态查询
- ✅ Docker 容器化部署
## 快速开始
### 1. 使用 Docker Compose推荐
```bash
# 启动所有服务
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
```
### 2. 本地开发
```bash
# 安装依赖
pip install -r requirements.txt
# 复制环境变量文件
cp .env.example .env
# 修改 .env 中的配置
# 启动服务
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
```
## API 文档
启动后访问:
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
## 目录结构
```
backend/
├── app/
│ ├── api/ # API 路由
│ ├── core/ # 核心配置
│ ├── models/ # 数据库模型
│ ├── schemas/ # Pydantic 模型
│ ├── services/ # 业务逻辑
│ ├── utils/ # 工具函数
│ └── main.py # 入口文件
├── uploads/ # 文件上传目录
│ ├── original/ # 原图(高清)
│ ├── watermarked/ # 带水印图
│ └── thumbnail/ # 缩略图
├── requirements.txt
├── Dockerfile
└── docker-compose.yml
```
## 环境变量
查看 `.env.example` 文件了解所有配置项
## 部署到生产环境
### 使用 Caddy
在服务器上创建 Caddyfile
```
api.aishej.com {
reverse_proxy localhost:8000
}
```
然后启动 Caddy
```bash
caddy start
```
## 接口列表
### 认证
- POST `/api/auth/register` - 用户注册
- POST `/api/auth/login` - 用户登录
### 作品
- GET `/api/works` - 作品列表
- GET `/api/works/{id}` - 作品详情
### 订单
- POST `/api/orders/create` - 创建订单
- POST `/api/orders/pay/{id}` - 支付订单(模拟支付,仅测试用)
- GET `/api/orders/my` - 我的订单
### 支付(易收米)
- POST `/api/payment/create/{order_id}` - 创建支付链接(真实支付)
- POST `/api/payment/notify` - 支付回调接口(易收米异步通知)
- GET `/api/payment/query/{order_number}` - 查询订单支付状态
- POST `/api/payment/cancel/{order_id}` - 取消订单
## 后续开发
- [ ] 接入真实支付接口(支付宝/微信)
- [ ] 作品上传管理
- [ ] 管理后台
- [ ] 数据统计
- [ ] Redis 缓存
- [ ] 日志系统
## License
MIT