refactor(server): 重构服务层代码结构 feat(server): 添加基础设施、跨境电商、AI决策等核心服务 docs: 完善前端业务说明书和开发进度文档 style: 格式化代码和文档
746 lines
10 KiB
Markdown
746 lines
10 KiB
Markdown
你这个思路(**先把菜单页 + 内页 + 按钮铺出来**)是对的,但要注意一件事:
|
||
|
||
> ❗不能“纯UI铺页面”,必须是**带业务语义的UI骨架(Business Skeleton)**
|
||
|
||
否则你很快会推翻重做。
|
||
|
||
---
|
||
|
||
# 一、你现在要做的,其实是这个阶段:
|
||
|
||
# 👉 **UI骨架搭建阶段(不是功能开发阶段)**
|
||
|
||
目标不是“能用”,而是:
|
||
|
||
> **所有页面结构完整 + 所有按钮有明确业务意义 + 能挂Service**
|
||
|
||
---
|
||
|
||
# 二、一个正确的做法(标准流程)
|
||
|
||
我给你一个**可执行流水线**👇
|
||
|
||
---
|
||
|
||
## 🥇 Step 1:先定义菜单结构(全局)
|
||
|
||
你现在应该先固定:
|
||
|
||
```text id="menu1"
|
||
Dashboard(总览)
|
||
Product(商品 / 利润)
|
||
Orders(订单)
|
||
Ad(广告)
|
||
Inventory(库存)
|
||
B2B(贸易)
|
||
Finance(结算 / 账单)
|
||
Compliance(合规)
|
||
Settings(配置)
|
||
```
|
||
|
||
---
|
||
|
||
👉 关键:
|
||
|
||
> 每个菜单 = 一个业务域(不是页面)
|
||
|
||
---
|
||
|
||
# 三、Step 2:给每个菜单定义“页面骨架”
|
||
|
||
以 Product 为例👇
|
||
|
||
---
|
||
|
||
## 👉 Product 页面骨架(标准结构)
|
||
|
||
```text id="product1"
|
||
顶部:筛选区(店铺 / 分类 / 状态)
|
||
中间:核心表格(商品列表)
|
||
右侧/弹窗:操作面板(编辑 / AI / 定价)
|
||
底部/侧边:数据总结(利润 / ROI)
|
||
```
|
||
|
||
---
|
||
|
||
👉 这一步的目标是:
|
||
|
||
> **把页面“分区”而不是写代码**
|
||
|
||
---
|
||
|
||
# 四、Step 3:给每个页面“填按钮”(重点)
|
||
|
||
注意:
|
||
|
||
> ❗按钮不是随便加,是从“业务动作”来的
|
||
|
||
---
|
||
|
||
## 👉 Product 页面按钮(标准版)
|
||
|
||
### 行级操作(每个商品)
|
||
|
||
```text id="btn1"
|
||
编辑商品
|
||
修改价格
|
||
查看ROI
|
||
AI优化定价 🔥
|
||
上下架
|
||
```
|
||
|
||
---
|
||
|
||
### 批量操作
|
||
|
||
```text id="btn2"
|
||
批量改价
|
||
批量上架
|
||
批量分析
|
||
```
|
||
|
||
---
|
||
|
||
### 页面级操作
|
||
|
||
```text id="btn3"
|
||
创建商品
|
||
导入商品
|
||
导出数据
|
||
```
|
||
|
||
---
|
||
|
||
👉 每个按钮必须能回答:
|
||
|
||
> ❓“点了之后业务发生什么变化?”
|
||
|
||
---
|
||
|
||
# 五、Step 4:给按钮“绑定假行为”(很关键)
|
||
|
||
现在不要接后端,先做:
|
||
|
||
```text id="fake1"
|
||
点击 → mock数据变化 → UI更新
|
||
```
|
||
|
||
---
|
||
|
||
## 示例:
|
||
|
||
点击【修改价格】:
|
||
|
||
```text id="fake2"
|
||
输入新价格
|
||
→ 前端计算 ROI(假数据)
|
||
→ 表格实时更新
|
||
→ ROI变红/变绿
|
||
```
|
||
|
||
---
|
||
|
||
👉 这一步的意义是:
|
||
|
||
> **验证UI是不是“活的”,而不是死页面**
|
||
|
||
---
|
||
|
||
# 六、Step 5:统一交互规范(必须做)
|
||
|
||
否则后面会很乱
|
||
|
||
---
|
||
|
||
## 👉 你必须定这几个规则:
|
||
|
||
### 1️⃣ 所有操作必须有反馈
|
||
|
||
```text id="rule1"
|
||
loading → success / error
|
||
```
|
||
|
||
---
|
||
|
||
### 2️⃣ 所有“影响钱”的操作必须有提示
|
||
|
||
```text id="rule2"
|
||
修改价格 → 显示 ROI变化
|
||
```
|
||
|
||
---
|
||
|
||
### 3️⃣ 所有列表必须支持:
|
||
|
||
```text id="rule3"
|
||
分页 / 筛选 / 排序
|
||
```
|
||
|
||
---
|
||
|
||
### 4️⃣ 所有弹窗统一:
|
||
|
||
* 宽度
|
||
* 按钮位置
|
||
* 提交流程
|
||
|
||
---
|
||
|
||
👉 这一步是为了:
|
||
|
||
> **让AI和你写的代码风格一致**
|
||
|
||
---
|
||
|
||
# 七、Step 6:输出一个“前端任务模板”(给AI用)
|
||
|
||
你现在是多AI协作,这一步非常关键👇
|
||
|
||
---
|
||
|
||
## 👉 每个页面用这个模板:
|
||
|
||
```md id="template1"
|
||
# 页面:Product
|
||
|
||
## 页面结构
|
||
- 筛选区
|
||
- 商品表格
|
||
- 操作弹窗
|
||
|
||
## 表格字段
|
||
- 商品名
|
||
- 成本
|
||
- 售价
|
||
- 利润
|
||
- ROI
|
||
- 库存
|
||
|
||
## 按钮
|
||
- 创建商品
|
||
- 修改价格
|
||
- AI定价
|
||
- 上下架
|
||
|
||
## 交互
|
||
- 修改价格 → 更新ROI(mock)
|
||
- AI定价 → loading → 返回建议价格
|
||
|
||
## 状态
|
||
- loading
|
||
- empty
|
||
- error
|
||
```
|
||
|
||
---
|
||
|
||
👉 AI拿到这个就能直接写页面
|
||
|
||
---
|
||
|
||
# 八、你可以参考的“真实产品结构”(建议模仿)
|
||
|
||
你这个产品最接近的是👇
|
||
|
||
---
|
||
|
||
## 1️⃣ Shopify(电商后台结构)
|
||
|
||
重点看:
|
||
|
||
* 商品管理
|
||
* 订单管理
|
||
* 分析面板
|
||
|
||
---
|
||
|
||
## 2️⃣ Google Analytics(数据驱动UI)
|
||
|
||
重点看:
|
||
|
||
* 数据展示
|
||
* 图表交互
|
||
* 维度筛选
|
||
|
||
---
|
||
|
||
## 3️⃣ Jungle Scout(赚钱导向)
|
||
|
||
重点看:
|
||
|
||
* 利润
|
||
* ROI
|
||
* 选品分析
|
||
|
||
---
|
||
|
||
👉 你要做的是:
|
||
|
||
> **Shopify结构 + Analytics数据 + JungleScout赚钱逻辑**
|
||
|
||
---
|
||
|
||
# 九、你现在最正确的执行顺序(别乱)
|
||
|
||
---
|
||
|
||
## 🥇 第一步(今天)
|
||
|
||
✔ 定菜单结构
|
||
✔ 定 Product 页面骨架
|
||
✔ 把按钮全部列出来
|
||
|
||
---
|
||
|
||
## 🥈 第二步
|
||
|
||
✔ 做 Product 页面(纯前端 + mock)
|
||
✔ 所有按钮可点击
|
||
✔ ROI能变化(假数据)
|
||
|
||
---
|
||
|
||
## 🥉 第三步
|
||
|
||
✔ 再接 Service
|
||
✔ 替换 mock
|
||
|
||
---
|
||
|
||
# 十、我帮你压一句最关键的话
|
||
|
||
> **你现在做的不是“页面开发”,而是在搭“业务操作台的骨架”。**
|
||
|
||
---
|
||
|
||
# 如果你要我继续帮你(建议下一步)
|
||
|
||
我可以直接帮你:
|
||
|
||
👉 输出一份:
|
||
|
||
# **完整菜单 + 每个页面的按钮清单(全系统版)**
|
||
|
||
包括:
|
||
|
||
* Product
|
||
* Orders
|
||
* Ad
|
||
* Inventory
|
||
* Finance
|
||
|
||
👉 每个页面“该有哪些按钮 + 为什么存在”
|
||
|
||
这个东西一出来:
|
||
|
||
> 你前端就不会再“乱做”了
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
好,这一步我直接给你**“能落地的前端骨架”**,不是概念,是你可以直接让 AI/前端照着搭页面的。
|
||
|
||
---
|
||
|
||
# 一、先定一个核心原则(你必须记住)
|
||
|
||
> ❗骨架 ≠ UI布局
|
||
> ❗骨架 = **业务结构 + 操作入口 + 数据位置**
|
||
|
||
---
|
||
|
||
# 二、全系统骨架(顶层)
|
||
|
||
先把整个系统的“统一结构”定死👇
|
||
|
||
```text
|
||
Layout(全局框架)
|
||
├── Header(全局状态:商户 / 店铺 / 通知)
|
||
├── Sidebar(菜单)
|
||
└── MainContent(页面容器)
|
||
├── PageHeader(标题 + 核心操作)
|
||
├── FilterBar(筛选区)
|
||
├── Content(核心内容区)
|
||
└── Drawer/Modal(操作面板)
|
||
```
|
||
|
||
---
|
||
|
||
# 三、通用页面骨架(所有页面统一)
|
||
|
||
以后你所有页面都必须长这样👇
|
||
|
||
```text
|
||
[PageHeader]
|
||
- 页面标题
|
||
- 核心按钮(创建 / 核心操作)
|
||
|
||
[FilterBar]
|
||
- 店铺选择
|
||
- 状态筛选
|
||
- 搜索
|
||
|
||
[Content]
|
||
- Table / List / Chart
|
||
|
||
[SidePanel / Modal]
|
||
- 编辑 / AI / 详情
|
||
|
||
[FooterSummary(可选)]
|
||
- 汇总数据(利润 / ROI / 订单量)
|
||
```
|
||
|
||
---
|
||
|
||
👉 这一步的意义:
|
||
|
||
> **统一结构 = 后面不会乱**
|
||
|
||
---
|
||
|
||
# 四、核心页面骨架(重点)
|
||
|
||
我帮你把**最关键的5个页面骨架直接定出来**
|
||
|
||
---
|
||
|
||
# 🥇 1. Product(最重要)
|
||
|
||
```text
|
||
ProductPage
|
||
|
||
[PageHeader]
|
||
- 商品管理
|
||
- [+ 创建商品] [导入] [导出]
|
||
|
||
[FilterBar]
|
||
- 店铺筛选
|
||
- 分类筛选
|
||
- 状态筛选(上架/下架)
|
||
- 搜索
|
||
|
||
[Content: Table]
|
||
- 商品名
|
||
- 成本(cost)
|
||
- 售价(price)
|
||
- 利润(profit)
|
||
- ROI 🔥
|
||
- 库存(stock)
|
||
- 状态
|
||
- 操作
|
||
|
||
[Row Actions]
|
||
- 编辑
|
||
- 改价 🔥
|
||
- AI定价 🔥
|
||
- 上下架
|
||
|
||
[Modal: Edit]
|
||
- 商品信息
|
||
- 成本
|
||
- 价格
|
||
|
||
[Modal: Pricing]
|
||
- 当前价格
|
||
- 建议价格(AI)
|
||
- ROI变化
|
||
|
||
[FooterSummary]
|
||
- 总商品数
|
||
- 平均ROI
|
||
- 总利润
|
||
```
|
||
|
||
---
|
||
|
||
👉 这个页面核心一句话:
|
||
|
||
> **所有数据必须围绕“赚多少钱”**
|
||
|
||
---
|
||
|
||
# 🥈 2. Orders
|
||
|
||
```text
|
||
OrdersPage
|
||
|
||
[PageHeader]
|
||
- 订单管理
|
||
|
||
[FilterBar]
|
||
- 店铺
|
||
- 订单状态
|
||
- 时间范围
|
||
|
||
[Content: Table]
|
||
- 订单号
|
||
- 商品
|
||
- 商户
|
||
- 金额
|
||
- 成本
|
||
- 利润 🔥
|
||
- 状态
|
||
|
||
[Row Actions]
|
||
- 查看详情
|
||
- 发货
|
||
- 标记完成
|
||
|
||
[Modal: Detail]
|
||
- 商品列表
|
||
- 成本拆分
|
||
- 利润计算
|
||
|
||
[FooterSummary]
|
||
- 总订单数
|
||
- 总利润
|
||
```
|
||
|
||
---
|
||
|
||
👉 核心:
|
||
|
||
> **订单页 = 现金流页面**
|
||
|
||
---
|
||
|
||
# 🥉 3. Ad(广告)
|
||
|
||
```text
|
||
AdPage
|
||
|
||
[PageHeader]
|
||
- 广告管理
|
||
- [+ 创建广告]
|
||
|
||
[FilterBar]
|
||
- 店铺
|
||
- 广告状态
|
||
|
||
[Content: Table]
|
||
- 广告名称
|
||
- 花费
|
||
- 转化
|
||
- ROI 🔥
|
||
- 状态
|
||
|
||
[Row Actions]
|
||
- 编辑
|
||
- 启停
|
||
- AI优化 🔥
|
||
|
||
[Modal: Optimize]
|
||
- 当前ROI
|
||
- 优化建议
|
||
- 自动调整
|
||
|
||
[FooterSummary]
|
||
- 总花费
|
||
- 总转化
|
||
- 平均ROI
|
||
```
|
||
|
||
---
|
||
|
||
👉 核心:
|
||
|
||
> **广告页 = 放大器(亏钱/赚钱)**
|
||
|
||
---
|
||
|
||
# 🧠 4. Dashboard(总览)
|
||
|
||
```text
|
||
Dashboard
|
||
|
||
[Top Cards]
|
||
- 今日利润
|
||
- 今日订单
|
||
- ROI
|
||
|
||
[Charts]
|
||
- 利润趋势
|
||
- 订单趋势
|
||
|
||
[Modules]
|
||
- 低库存提醒
|
||
- 低ROI商品
|
||
- 异常订单
|
||
```
|
||
|
||
---
|
||
|
||
👉 核心:
|
||
|
||
> **一眼看赚钱情况**
|
||
|
||
---
|
||
|
||
# 💰 5. Finance(结算)
|
||
|
||
```text
|
||
FinancePage
|
||
|
||
[PageHeader]
|
||
- 结算中心
|
||
|
||
[Content: Table]
|
||
- 商户
|
||
- 订单金额
|
||
- 平台抽成
|
||
- 功能费用
|
||
- 实际利润 🔥
|
||
|
||
[Row Actions]
|
||
- 查看账单
|
||
- 导出
|
||
|
||
[Modal: Bill Detail]
|
||
- 收入
|
||
- 支出
|
||
- 费用明细
|
||
```
|
||
|
||
---
|
||
|
||
👉 核心:
|
||
|
||
> **钱最终去哪了**
|
||
|
||
---
|
||
|
||
# 五、通用组件骨架(你必须有)
|
||
|
||
---
|
||
|
||
## 1️⃣ BusinessTable(核心组件)
|
||
|
||
统一支持:
|
||
|
||
```text
|
||
- 列配置
|
||
- 排序
|
||
- 筛选
|
||
- 分页
|
||
- 行操作
|
||
```
|
||
|
||
---
|
||
|
||
## 2️⃣ ROIIndicator(重点组件)
|
||
|
||
```text
|
||
- 绿色:赚钱
|
||
- 红色:亏钱
|
||
- 显示变化趋势
|
||
```
|
||
|
||
---
|
||
|
||
---
|
||
|
||
## 3️⃣ ActionModal(统一弹窗)
|
||
|
||
```text
|
||
- 标题
|
||
- 表单
|
||
- 提交按钮
|
||
- loading状态
|
||
```
|
||
|
||
---
|
||
|
||
---
|
||
|
||
## 4️⃣ StatsCard(Dashboard用)
|
||
|
||
```text
|
||
- 数值
|
||
- 趋势
|
||
- 图标
|
||
```
|
||
|
||
---
|
||
|
||
# 六、骨架完成的“验收标准”
|
||
|
||
你可以用这个自检👇
|
||
|
||
---
|
||
|
||
## ✅ 一个页面必须满足:
|
||
|
||
1. 有没有“核心数据区”(表格/图表)
|
||
2. 有没有“操作入口”(按钮)
|
||
3. 有没有“结果反馈”(ROI / 利润)
|
||
4. 有没有“操作面板”(弹窗)
|
||
|
||
---
|
||
|
||
👉 如果缺一个:
|
||
|
||
> ❗这个页面就是残的
|
||
|
||
---
|
||
|
||
# 七、你现在该怎么做(非常具体)
|
||
|
||
---
|
||
|
||
## 🥇 第一步(今天)
|
||
|
||
先只做:
|
||
|
||
```text
|
||
Product 页面骨架
|
||
```
|
||
|
||
要求:
|
||
|
||
* 表格出来
|
||
* 按钮全部在
|
||
* ROI字段在
|
||
* 弹窗能打开(先mock)
|
||
|
||
---
|
||
|
||
## 🥈 第二步
|
||
|
||
复制结构做:
|
||
|
||
* Orders
|
||
* Ad
|
||
|
||
---
|
||
|
||
## 🥉 第三步
|
||
|
||
再接后端
|
||
|
||
---
|
||
|
||
# 八、我帮你压一句最关键的
|
||
|
||
> **骨架的本质不是“页面长什么样”,而是“用户在哪里做决策”。**
|
||
|
||
---
|
||
|
||
# 如果你要我继续帮你(强烈建议)
|
||
|
||
下一步我可以直接给你:
|
||
|
||
👉 **React + Umi 的骨架代码结构(可直接开干)**
|
||
|
||
包括:
|
||
|
||
* 路由结构
|
||
* 页面模板
|
||
* 表格组件
|
||
* Modal封装
|
||
* mock数据
|
||
|
||
这样你可以直接开始铺页面,而不是再想结构。
|