64 lines
2.4 KiB
Markdown
64 lines
2.4 KiB
Markdown
# merchant 语义重构收口记录
|
|
|
|
## 背景
|
|
项目在基础阶段曾短暂使用 `tenant` 语义,但当前产品定位已经明确为“总台管理 + 站点后台 + 商家后台”的 SaaS 电商结构,因此数据库层、代码层、页面层统一收口到 `merchant / 商家` 更符合后续长期演进方向。
|
|
|
|
## 本轮结论
|
|
`tenant -> merchant` 主链路重构已基本完成,当前项目基线统一采用:
|
|
- 表:`merchants`
|
|
- 外键:`merchant_id`
|
|
- 领域模型:`Merchant`
|
|
- 页面文案:`商家`
|
|
- 总台站点管理入口:`/admin/merchants`
|
|
- 商家后台入口:`/merchant-admin`
|
|
|
|
## 已完成项
|
|
|
|
### 数据库基线
|
|
- 基线表已统一为 `merchants`
|
|
- 相关业务表统一使用 `merchant_id`
|
|
- 相关外键已指向 `merchants`
|
|
- 已通过 `php artisan migrate:fresh --seed` 验证
|
|
|
|
### 代码层
|
|
- 模型关系已统一使用 `merchant()`
|
|
- 总台管理控制器已切到 `MerchantController`
|
|
- 商家后台上下文统一使用 `admin_merchant_id`
|
|
- 总台管理与商家后台鉴权边界均已验证通过
|
|
- API 入参 / 返回中的商家归属字段已统一为 `merchant_id`
|
|
|
|
### 页面与文案
|
|
- 总台管理 dashboard / 商品 / 分类 / 订单 / 渠道配置页已改为商家语义
|
|
- 总台站点管理页统一为 `admin/merchants`
|
|
- 首页与后台入口文案均已完成阶段性收口
|
|
|
|
### 缓存与配置
|
|
- 总台站点列表缓存 key 已统一为 `platform:merchants:list:page:{page}`
|
|
- 总台基础配置项已从 `tenant_mode` 调整为 `merchant_mode`
|
|
|
|
### 验证结果
|
|
已完成以下验证:
|
|
- `php artisan migrate:fresh --seed`
|
|
- `php artisan optimize:clear`
|
|
- `php artisan route:list --path=admin`
|
|
- `php artisan route:list --path=merchant-admin`
|
|
- `php artisan route:list --path=api/v1`
|
|
- 总台账号登录总台管理成功
|
|
- 商家账号登录商家后台成功
|
|
- 商家账号访问总台管理返回 403
|
|
- 总台账号访问商家后台返回 403
|
|
- 总台 / 商家关键页面与基础 API 返回正常
|
|
|
|
## 收尾原则
|
|
为了保持开发环境基线干净:
|
|
1. 不再继续引入新的 `tenant` 语义
|
|
2. 不再新增兼容性双命名
|
|
3. 文档、配置、缓存 key、页面文案统一使用 `merchant`
|
|
4. 后续新功能在此基线上继续推进
|
|
|
|
## 当前剩余事项
|
|
1. 继续补表单 `old()` 回填
|
|
2. 给总台 / 商家订单列表增加筛选条件
|
|
3. 补总台配置编辑能力
|
|
4. 后续视情况升级分页缓存失效策略
|