Files
PartsInquiry/doc/admin_development.md
2025-09-24 20:35:15 +08:00

60 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 管理端开发文档
本文档用于同步当前管理端admin/)前端与数据库的开发状态与下一步计划。
## 一、前端admin/
- 技术栈Vue3 + Vite + Element Plus
- 主题:深色尊贵风格,数据展示面板/卡片/表格采用深蓝背景Tag 颜色整体降亮。
- 路由与页面:
- `/vip-review`VIP审核默认页卡片式一卡一申请
- `/vip`VIP管理是否VIP、到期时间、启用/停用)
- `/users`:用户管理(拉黑/恢复,状态文案“正常/黑名单”)
- `/parts`:用户配件管理(拉黑/恢复)
- `/consult`:咨询回复(回复/标记解决,标记后行内即时显示“已解决”)
- Mock 数据:
- 开启:`VITE_USE_MOCK=true`;使用 `public/mock/*.json`
- 覆盖:`admin_vips.json``admin_vips_reviews.json``admin_users.json``admin_parts.json``admin_consults.json`
- 状态:
- 页面与交互:已完成
- 主题色与降亮:已完成
- Mock已完成
## 二、数据库DB
- 已有与复用
- `users.status`1=正常、0=黑名单(供用户管理拉黑/恢复)
- `global_skus`公共SKU库供未来配件审核通过后发布使用
- 新增表
- `vip_users`管理VIPis_vip/status/expire_at/reviewer_id/reviewed_at/remark
- `consults``consult_replies`:咨询与回复
- 字段与索引改动
- `products.is_blacklisted TINYINT(1) NOT NULL DEFAULT 0`(黑名单标记)
- 索引:`idx_products_shop_blacklist (shop_id, is_blacklisted)`
- 文档:`doc/database_documentation.md` 已同步
## 三、API 规范OpenAPI
- 已补充
- 管理端VIP`/api/admin/vips` 列表/创建/更新/审核通过/驳回(标注“❌ Partially Implemented”
- 待补充
- 管理端用户列表kw、更新status 拉黑/恢复)
- 管理端用户配件列表kw/status、黑名单/恢复(更新 `products.is_blacklisted`
- 管理端咨询列表status/kw、回复、标记解决
## 四、落地与联调建议
- 后端接口:按上述待补充接口实现,完成后将 OpenAPI 的相应条目更新为“✅ Fully Implemented”。
- 前台/小程序:默认过滤 `products.is_blacklisted=0`,防止黑名单配件外显。
- 安全收口:后端增加 JWT 校验,从 Token 注入 `shopId/userId`,避免完全信任请求头。
## 五、环境与运行
- 开发:
```powershell
cd admin; npm i; $env:VITE_APP_API_BASE_URL="http://127.0.0.1:8080"; $env:VITE_APP_SHOP_ID="1"; npm run dev
```
- Mock
```powershell
cd admin; npm i; $env:VITE_USE_MOCK="true"; npm run dev
```
- 构建/预览:
```powershell
npm run build; npm run preview
```