feat: add WonderQ admin backend
Add FastAPI admin/public API service, database setup, Docker deployment files, docs, and tests.
This commit is contained in:
8
docs/README.md
Normal file
8
docs/README.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# WonderQ-Admin 文档
|
||||
|
||||
本目录存放后端 API 相关文档。
|
||||
|
||||
- `backend/README.md`:当前 Python + FastAPI 后端运行说明。
|
||||
- `admin-backend-plan.md`:早期后台建设规划,保留作业务范围和阶段规划参考;其中技术栈建议已被当前 Python 迁移方案取代。
|
||||
|
||||
后台管理前端文档位于 `D:\www\znkj\WonderQ-Admin-UI\docs`。
|
||||
36
docs/admin-backend-plan.md
Normal file
36
docs/admin-backend-plan.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# WonderQ-Admin 后端规划摘要
|
||||
|
||||
## 当前定位
|
||||
|
||||
`WonderQ-Admin` 是 WonderQ 的独立后端 API 服务,当前技术栈已调整为 Python + FastAPI + SQLAlchemy 2 + Alembic + PostgreSQL,通过 Docker Compose 部署 API、PostgreSQL 和 Redis。
|
||||
|
||||
## 核心目标
|
||||
|
||||
- 为 H5 前台提供稳定的 Public API。
|
||||
- 为后台管理端提供 JWT 鉴权的 Admin API。
|
||||
- 保留现有 PostgreSQL 数据和主要接口路径,降低前端联调成本。
|
||||
- 使用 Alembic 管理后续数据库迁移,已有数据库通过 `alembic stamp head` 接入 baseline。
|
||||
|
||||
## 当前业务模块
|
||||
|
||||
- 首页配置:轮播、目的地、主题卡片、底部 CTA、发布版本。
|
||||
- 线路产品:列表、详情、图片、详情区块、状态和排序。
|
||||
- 目的地:目的地基础信息、别名、热门状态。
|
||||
- 活动专题:活动和产品关联。
|
||||
- 线索:前台提交、后台列表、状态流转。
|
||||
- 媒体:媒体资源登记。
|
||||
- 审计:后台关键变更写入 `AuditLog`。
|
||||
|
||||
## 近期优先级
|
||||
|
||||
1. 保持 Public/Admin API 与现有前端调用兼容。
|
||||
2. 补充更多 PostgreSQL 集成测试,覆盖迁移、seed 和核心接口。
|
||||
3. 建立生产迁移流程:备份、`alembic stamp head`、后续增量迁移。
|
||||
4. 按实际业务继续扩展权限、订单、客户和消息模块。
|
||||
|
||||
## 安全与部署原则
|
||||
|
||||
- 生产环境必须替换 `JWT_SECRET`,禁止使用示例值。
|
||||
- 不提交 `.env`、日志、数据库备份和任何真实密钥。
|
||||
- `python -m app.seed` 会重置内容数据,生产环境执行前必须明确确认。
|
||||
- Docker Compose 适合本地和单机部署;生产可按相同环境变量拆分到托管数据库或容器平台。
|
||||
25
docs/backend/README.md
Normal file
25
docs/backend/README.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# 后台 API 服务
|
||||
|
||||
`WonderQ-Admin` 当前是独立的 Python + FastAPI API 服务,使用 PostgreSQL 保存业务数据,通过 Docker Compose 启动 `api`、`postgres` 和 `redis`。
|
||||
|
||||
## 本地 API 启动
|
||||
|
||||
```bash
|
||||
python -m venv .venv
|
||||
.venv\Scripts\activate
|
||||
pip install -r requirements.txt
|
||||
docker compose up -d postgres redis
|
||||
alembic upgrade head
|
||||
python -m app.seed
|
||||
uvicorn app.main:app --host 0.0.0.0 --port 4000 --reload
|
||||
```
|
||||
|
||||
健康检查:`http://localhost:4000/health`
|
||||
|
||||
## 前端联调
|
||||
|
||||
后台管理前端位于 `D:\www\znkj\WonderQ-Admin-UI`。如需连接本服务,在前端 `.env` 或环境变量中配置:
|
||||
|
||||
```text
|
||||
VITE_API_BASE_URL="http://localhost:4000"
|
||||
```
|
||||
Reference in New Issue
Block a user