refactor: 清理废弃业务模块并更新全栈配置
- 移除后端产品、目的地、活动专题等废弃模块的数据库表与业务代码,删除冗余API接口 - 删除小程序端详情页、线路组件等冗余代码,移除搜索工具与测试用例,调整导航逻辑 - 清理管理端废弃的类型定义、编辑器与测试代码 - 更新项目文档,修正模块维护说明与接口文档内容
This commit is contained in:
1 parent
72e6071bb1
commit
548f91c37f
80 files changed
+953
-12702
No files matched your search
@@ -23,7 +23,7 @@
|
||||
WonderQ 是三端分离的旅行产品项目集合,当前由三个独立子项目组成:
|
||||
|
||||
- `WonderQ-MiniAPP`:万趣旅行移动端前台,面向 H5 与微信小程序,技术栈为 uni-app、Vue 3、TypeScript、TailwindCSS。
|
||||
- `WonderQ-Admin-UI`:后台管理前端,用于维护首页结构、目的地、线路商品、活动入口、页面模块和客户需求线索,技术栈为 Vite、React、TypeScript、Tailwind CSS 4、shadcn/ui 风格组件。
|
||||
- `WonderQ-Admin-UI`:后台管理前端,用于维护首页结构、目的地、线路商品、页面模块和客户需求线索,技术栈为 Vite、React、TypeScript、Tailwind CSS 4、shadcn/ui 风格组件。
|
||||
- `WonderQ-Admin`:后端 API 服务,为 MiniAPP 提供 Public API,为后台管理端提供 Admin API,技术栈为 Python、FastAPI、SQLAlchemy 2、Alembic、PostgreSQL、JWT、Pydantic。
|
||||
|
||||
核心开发原则是页面驱动开发:业务围绕 MiniAPP/H5 前台页面和运营配置场景展开;后台负责配置页面数据;后端负责业务逻辑、鉴权、数据持久化和接口;MiniAPP 负责展示与交互。
|
||||
@@ -98,7 +98,6 @@ WonderQ-MiniAPP/
|
||||
│ ├─ manifest.json
|
||||
│ ├─ pages.json
|
||||
│ ├─ content.ts
|
||||
│ ├─ generated-products.json
|
||||
│ ├─ components/
|
||||
│ ├─ lib/
|
||||
│ └─ pages/
|
||||
@@ -107,11 +106,11 @@ WonderQ-MiniAPP/
|
||||
└─ scripts/
|
||||
```
|
||||
|
||||
- `src/pages/`:首页、目的地、搜索、活动、需求、权益、预订、详情和我的页面。
|
||||
- `src/components/`:复用 Vue SFC 组件,如顶部栏、底部导航、产品卡、客服弹层、空状态和留资表单。
|
||||
- `src/lib/api.ts`:Public API 客户端与类型定义,访问 `/api/public/site-config`、`/api/public/products`、`/api/public/leads`。
|
||||
- `src/pages/`:首页、目的地、需求、权益和我的页面。
|
||||
- `src/components/`:复用 Vue SFC 组件,如顶部栏、底部导航、客服弹层、空状态和留资表单。
|
||||
- `src/lib/api.ts`:Public API 客户端与类型定义,访问 `/api/public/site-config`、`/api/public/leads`。
|
||||
- `src/lib/data.ts`、`src/lib/store.ts`、`src/lib/navigation.ts`、`src/lib/support.ts`:业务数据归一化、共享状态、页面跳转和客服联系封装。
|
||||
- `src/content.ts`、`src/generated-products.json`:前台静态兜底内容与产品数据。
|
||||
- `src/content.ts`:前台静态兜底内容。
|
||||
- `public/assets/`:前台图片资源。
|
||||
|
||||
### WonderQ-Admin-UI
|
||||
@@ -140,7 +139,6 @@ WonderQ-Admin-UI/
|
||||
- `src/App.tsx`:后台应用壳、登录态、侧边导航和全局布局。
|
||||
- `src/api.ts`:Admin API 类型、Token 管理、鉴权头和请求封装。
|
||||
- `src/pages/structure/StructurePage.tsx`:首页、目的地页、需求页等页面模块配置主界面。
|
||||
- `src/pages/products/ProductsPage.tsx`:线路商品维护。
|
||||
- `src/pages/leads/LeadsPage.tsx`:需求线索查询、筛选和状态流转。
|
||||
- `src/components/ui/`:Button、Card、Input、Textarea、Badge、Alert、Switch、NativeSelect、Separator 等基础组件。
|
||||
- `src/styles.css`:Tailwind 入口、设计变量、后台工作台、表格/表单和移动端适配。
|
||||
@@ -164,7 +162,7 @@ WonderQ-Admin/
|
||||
│ ├─ admin.py
|
||||
│ └─ shared.py
|
||||
├─ alembic/
|
||||
├─ data/generated-products.json
|
||||
├─ data/
|
||||
├─ tests/
|
||||
├─ Dockerfile
|
||||
├─ docker-compose.yml
|
||||
@@ -179,7 +177,7 @@ WonderQ-Admin/
|
||||
- `app/models.py`、`app/schemas.py`、`app/serializers.py`:ORM 模型、Pydantic 校验和响应序列化。
|
||||
- `app/auth.py`:JWT 与后台鉴权。
|
||||
- `app/routers/public.py`、`app/routers/admin.py`、`app/routers/shared.py`:Public API、Admin API 和共享查询。
|
||||
- `app/content.py`、`app/seed.py`、`data/generated-products.json`:初始化内容、重置命令和迁移数据源。
|
||||
- `app/content.py`、`app/seed.py`:初始化内容、重置命令和迁移数据源。
|
||||
- `alembic/`、`Dockerfile`、`docker-compose.yml`:数据库迁移与部署入口。
|
||||
|
||||
## 7. 启动方式
|
||||
@@ -249,8 +247,8 @@ yarn dev:mp-weixin
|
||||
|
||||
- Public API 与 Admin API 分离:MiniAPP 只访问 `/api/public/...`,Admin UI 只访问 `/api/admin/...`。
|
||||
- 保持现有 API 路径和响应结构兼容;不要为了统一风格擅自改路径、改字段名或改响应包裹结构。
|
||||
- 接口设计优先 RESTful 风格,如 `GET /api/admin/products`、`POST /api/admin/products`、`PATCH /api/admin/products/{id}`。
|
||||
- 禁止新增 `/getBanner`、`/saveProduct`、`/updateConfig` 这类动作式路径,除非已有契约明确要求。
|
||||
- 接口设计优先 RESTful 风格,如 `GET /api/admin/site-config`、`PATCH /api/admin/site-config/{module}/{id}`。
|
||||
- 禁止新增 `/getBanner`、`/saveConfig`、`/updateConfig` 这类动作式路径,除非已有契约明确要求。
|
||||
- TypeScript 与 API 响应字段保持 camelCase;后端内部可使用 snake_case,但序列化给前端时遵守契约。
|
||||
- 外部输入必须通过 Pydantic schema 或前端表单校验;后端不能信任前端传参。
|
||||
- 错误响应不得泄露内部异常、SQL、环境变量、Token、密钥或敏感业务数据。
|
||||
@@ -306,9 +304,9 @@ yarn dev:mp-weixin
|
||||
### `WonderQ-MiniAPP`
|
||||
|
||||
- 不要在本子项目重新添加后端、数据库、ORM、Docker Compose、后台认证或管理后台页面。
|
||||
- `src/lib/api.ts` 的公共 API 路径保持 `/api/public/site-config`、`/api/public/products`、`/api/public/leads`,除非后端契约已同步变更。
|
||||
- `src/lib/api.ts` 的公共 API 路径保持 `/api/public/site-config`、`/api/public/leads`,除非后端契约已同步变更。
|
||||
- `vite.config.ts`、`manifest.json` 的 `/api` 代理只服务本地开发,不作为生产后端配置。
|
||||
- 不要随意改动 `src/generated-products.json`、`public/assets/source/` 中的采集/生成内容,除非任务专门针对这些资源。
|
||||
- 不要随意改动 `public/assets/source/` 中的采集内容,除非任务专门针对这些资源。
|
||||
|
||||
### `WonderQ-Admin-UI`
|
||||
|
||||
@@ -330,7 +328,7 @@ yarn dev:mp-weixin
|
||||
- `app/models.py`、`alembic/versions/*`:数据库结构和迁移。
|
||||
- `app/auth.py`:后台鉴权逻辑。
|
||||
- `app/routers/admin.py`、`app/routers/public.py`:核心 API 行为。
|
||||
- `app/seed.py`、`app/content.py`、`data/generated-products.json`:初始化内容和迁移数据源。
|
||||
- `app/seed.py`、`app/content.py`:初始化内容和迁移数据源。
|
||||
- `Dockerfile`、`docker-compose.yml`:部署入口。
|
||||
- `requirements.txt`、`pyproject.toml`:依赖和测试配置。
|
||||
|
||||
|
||||
Reference in new issue
Block a user