feat: 实现服务层核心功能与文档更新

refactor(ProductService): 修复createProduct方法和其他方法错误
fix(InventoryAgingService): 修复AGING_THRESHOLD_DAYS引用问题
fix(InventoryService): 修复predictSKUDemand方法
refactor(ChatBotController): 从tsoa风格改为Express风格
fix(CommandCenterController): 修复类型问题
fix(AdAutoService): 修复stock可能为undefined的问题
docs: 更新SERVICE_MAP、DOMAIN_MODEL等架构文档
chore: 启动前端服务(运行在http://localhost:8000)
This commit is contained in:
2026-03-18 12:35:52 +08:00
parent 2ad40da777
commit 5cfd0c4c89
55 changed files with 6077 additions and 1733 deletions

View File

@@ -0,0 +1,116 @@
# BILLING_RULES
## 收费模式
### 1. 功能收费
#### 基础功能(免费)
- 商品管理
- 订单处理
- 基础数据报表
- 库存管理
#### 高级功能(收费)
Feature: ADV_ANALYTICS高级数据分析
- 类型:订阅制
- 月费:$10
- 功能ROI分析、趋势预测、数据导出
Feature: API_CALLAPI调用
- 类型:按量计费
- 每次:$0.01
- 功能:第三方系统集成、批量操作
Feature: AUTO_REPLENISH自动补货
- 类型:订阅制
- 月费:$15
- 功能:智能库存预警、自动下单
Feature: MARKETING_AUTO营销自动化
- 类型:订阅制
- 月费:$20
- 功能:自动促销、客户分群
Feature: CROSS_BORDER_LOGISTICS跨境物流加速
- 类型:按量计费
- 每单:$2
- 功能:优先物流通道、清关协助
---
### 2. 订单抽成
- 每笔订单抽成5%
- 最低抽成:$0.5
- 最高抽成:$50
---
### 3. 增值服务
- 技术支持:$50/小时
- 定制开发:根据需求报价
- 数据迁移:$100/次
---
## 收费触发点
- 功能开通 → 立即收费
- API调用 → 累计计费(每日结算)
- 订单完成 → 抽成
- 增值服务 → 服务完成后收费
---
## 账单生成
- 每个收费行为必须记录 Bill
- 每个 Bill 必须关联来源feature/order/service
- 账单生成时间每日23:59
- 账单周期:自然月
---
## 结算周期
- 功能订阅:预付费
- API调用T+1
- 订单抽成T+7
- 增值服务:服务完成后立即结算
---
## 支付方式
- 银行转账
- 电子钱包(支付宝、微信支付)
- 信用卡
- PayPal
---
## 退款规则
- 功能订阅:未使用部分可退款
- API调用已使用部分不可退款
- 订单抽成:不可退款
- 增值服务:根据服务完成度退款
---
## 账单管理
- 商户可在后台查看详细账单
- 支持账单导出PDF/Excel
- 账单查询周期最近12个月
---
## 逾期处理
- 逾期3天系统提醒
- 逾期7天暂停高级功能
- 逾期15天暂停所有功能
- 逾期30天账户冻结

View File

@@ -0,0 +1,172 @@
# DOMAIN_MODEL领域模型
## 核心实体
### Merchant商户
- id
- name
- statuspending / active / inactive
- created_at
- updated_at
- contact_person
- contact_email
- contact_phone
- address
- business_typeB2B / B2C
---
### User用户
- id
- merchant_id
- roleadmin / operator / viewer
- status
- username
- email
- password_hash
- created_at
- updated_at
---
### Store店铺
- id
- merchant_id
- name
- platform
- platform_shop_id
- description
- status
- created_at
- updated_at
---
### Feature功能
- code
- name
- price_typefree / paid
- price_value
- description
- category
---
### MerchantFeature商户功能
- id
- merchant_id
- feature_code
- statusinactive / pending_payment / active / expired
- expire_at
- created_at
- updated_at
---
### Order订单
- id
- user_id
- merchant_id
- total_amount
- statuspending / paid / split / shipped / completed / refunded
- created_at
- updated_at
- shipping_address
- payment_method
---
### SubOrder子订单
- id
- order_id
- merchant_id
- store_id
- amount
- status
- created_at
- updated_at
---
### Product商品
- id
- merchant_id
- store_id
- name
- sku
- price
- stock
- status
- created_at
- updated_at
---
### Inventory库存
- id
- product_id
- merchant_id
- warehouse_id
- quantity
- status
- last_sync_at
---
### Payment支付
- id
- merchant_id
- amount
- statuscreated / paid / failed
- typefeature / order
- payment_method
- transaction_id
- created_at
- updated_at
---
### Bill账单
- id
- merchant_id
- typeincome / expense
- amount
- statuspending / confirmed / settled
- source_typeorder / feature
- source_id
- created_at
- updated_at
---
### Permission权限
- id
- role
- resource
- action
- created_at
---
### Settlement结算
- id
- merchant_id
- total_amount
- platform_fee
- net_amount
- status
- period_start
- period_end
- created_at
- updated_at
---
### Analytics数据分析
- id
- merchant_id
- report_type
- data
- generated_at
- period_start
- period_end

View File

@@ -0,0 +1,85 @@
# PERMISSION_RULES
## 基础规则
- 商户只能访问自己的数据
- 所有请求必须带 merchant_id
- 超级管理员可跨商户访问
- 权限校验必须在所有接口调用前执行
- 未授权访问必须返回 403 Forbidden
---
## 功能权限
- 未开通功能 → 拒绝访问403
- 已开通 → 正常访问
- 功能过期 → 拒绝访问403
- 功能暂停 → 拒绝访问403
---
## 角色权限
### Admin商户管理员
- 全部权限
- 可管理商户信息
- 可管理用户账号
- 可开通/关闭功能
- 可查看所有报表
### Operator运营专员
- 订单处理(创建、确认、发货)
- 商品管理(添加、编辑、上下架)
- 库存管理(更新库存)
- 客户服务(处理售后)
### Viewer查看员
- 只读权限
- 可查看订单、商品、库存信息
- 可查看报表
### System系统角色
- 系统级操作权限
- 可执行系统维护任务
---
## 数据权限
- 商户只能查看和操作自己的:
- 订单
- 商品
- 库存
- 店铺
- 账单
- 报表
- 超级管理员可查看和操作所有商户数据
---
## 接口校验流程
Request
→ AuthMiddleware身份验证
→ PermissionService.check权限校验
→ FeatureService.checkAccess功能访问校验
→ Controller
---
## 权限管理
- 权限必须通过 PermissionService 进行管理
- 角色权限可通过管理界面进行配置
- 权限变更必须记录操作日志
---
## 安全措施
- 密码必须加密存储
- 敏感操作必须进行二次验证
- API 调用必须使用 token 认证
- 定期权限审计

View File

@@ -0,0 +1,127 @@
# SERVICE_MAP服务编排总图
## 设计原则
- 所有业务必须通过 Service 层
- Controller 不允许直接操作数据库
- 一个业务 = 一条 Service Flow
- 服务调用必须遵循 STATE_MACHINE 定义的状态流转
- 涉及收费的业务必须接入 BILLING 系统
- 所有接口必须经过权限校验
---
## 1. 功能开通闭环(收费核心)
Flow:
Frontend
→ FeatureController.openFeature
→ FeatureService.checkAccess
→ PaymentService.createPayment
→ PaymentCallbackService.confirm
→ FeatureService.activateFeature
→ PermissionService.grant
→ BillingService.record
→ Response
---
## 2. 多商户订单闭环
Flow:
Frontend
→ OrderController.create
→ OrderService.createOrder
→ OrderService.splitByMerchant
→ InventoryService.lockStock
→ OrderRepository.save
→ Response
---
## 3. 订单履约闭环
Flow:
OrderService.confirm
→ ShipmentService.createShipment
→ OrderService.updateStatus
→ NotificationService.send
---
## 4. 结算闭环
Flow:
Scheduler / Manual Trigger
→ SettlementService.calculate
→ SettlementService.generateBill
→ PaymentService.payout
→ BillingService.record
---
## 5. 权限校验闭环(所有接口必须经过)
Flow:
Request
→ AuthMiddleware
→ PermissionService.check
→ Controller
---
## 6. 商户管理闭环
Flow:
Frontend
→ MerchantController.create
→ MerchantService.register
→ VerificationService.verify
→ RBACService.assignRole
→ Response
---
## 7. 店铺管理闭环
Flow:
Frontend
→ StoreController.create
→ StoreService.createStore
→ ProductService.setupProducts
→ InventoryService.initializeInventory
→ Response
---
## 8. 商户数据与分析闭环
Flow:
Scheduler / Manual Trigger
→ AnalyticsService.collectData
→ ReportService.generateReport
→ NotificationService.sendReport
→ Response
---
## 9. 多商户库存同步闭环
Flow:
Merchant Portal
→ InventoryController.sync
→ InventorySyncService.syncMerchantInventory
→ InventoryService.updateStock
→ ProductService.updateProductStatus
→ Response
---
## 10. 异常处理闭环
Flow:
Frontend / System
→ ExceptionController.handle
→ ExceptionService.process
→ NotificationService.alert
→ SettlementService.adjust
→ Response

View File

@@ -0,0 +1,132 @@
# STATE_MACHINE
## Merchant商户状态
pending
→ active
→ inactive
→ suspended
---
## User用户状态
pending
→ active
→ inactive
→ locked
---
## Store店铺状态
pending
→ active
→ inactive
→ suspended
---
## Feature功能状态
inactive
→ pending_payment
→ active
→ expired
→ suspended
---
## Order订单状态
pending
→ paid
→ split
→ processing
→ shipped
→ completed
→ refunded
→ cancelled
---
## SubOrder子订单状态
pending
→ processing
→ shipped
→ completed
→ refunded
→ cancelled
---
## Product商品状态
draft
→ pending_approval
→ active
→ inactive
→ discontinued
---
## Inventory库存状态
normal
→ low
→ out_of_stock
→ overstock
---
## Payment支付状态
created
→ processing
→ paid
→ failed
→ refunded
---
## Bill账单状态
pending
→ confirmed
→ settled
→ disputed
---
## Settlement结算状态
pending
→ processing
→ completed
→ failed
---
## 状态变更原则
- 所有状态变更必须通过 Service
- 禁止前端直接控制状态
- 状态变更必须记录操作日志
- 状态变更必须遵循预定义的流转路径
- 状态变更可能触发相关业务逻辑(如通知、计费等)
---
## 状态变更触发条件
- 商户状态:审核结果、逾期未付费、违规行为
- 用户状态:登录异常、权限变更、账号管理
- 店铺状态:平台审核、违规行为、商户操作
- 功能状态:支付结果、订阅到期、手动操作
- 订单状态:支付结果、商户操作、物流状态
- 商品状态:审核结果、库存状态、商户操作
- 库存状态:库存数量变化、库存同步
- 支付状态:支付渠道反馈、人工处理
- 账单状态:系统确认、支付结果、人工处理
- 结算状态:系统处理、支付结果、人工处理