All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 5m36s
- 新增订单管理、支付回调、购买验证等核心服务 - 实现订单、订单项目的数据存储层和 API 接口 - 添加订单数据库迁移和 DTO 定义 - 更新 API 文档和路由配置 - 同步 3 个新规范到主规范库(订单管理、订单支付、套餐购买验证) - 完成 OpenSpec 变更归档 Ultraworked with Sisyphus
2.3 KiB
2.3 KiB
Why
Phase 3 完成了卡/设备的套餐系列关联,现在需要实现订单和支付流程。核心是"强充"机制:用户不能直接给钱包充值,必须通过购买套餐来充值。这样每笔充值都有对应的套餐购买记录,便于佣金计算和业务追踪。
What Changes
新增模型:
Order:订单模型,记录套餐购买信息OrderItem:订单明细(支持一个订单购买多个套餐)
Order 核心字段:
- 订单号、订单类型(单卡购买/设备购买)
- 买家信息(个人客户/代理店铺)
- 关联的卡/设备 ID
- 支付金额、支付状态、支付方式
- 佣金计算状态
强充业务流程:
- 用户选择套餐,创建订单
- 用户支付(微信/支付宝/钱包余额)
- 支付成功后,套餐生效,流量额度增加
- 触发佣金计算(Phase 5)
新增 API:
- 创建套餐购买订单
- 查询订单列表/详情
- 订单支付(钱包支付)
- 支付回调处理
- 取消订单
业务规则:
- 只能购买卡/设备关联的套餐系列下的套餐
- 只能购买已上架且启用的套餐
- 设备购买时,套餐分配给设备下所有卡(流量共享)
- 订单金额 = 套餐零售价(代理设置的售价)
Capabilities
New Capabilities
order-management: 订单管理 - 创建/查询/取消套餐购买订单order-payment: 订单支付 - 钱包支付、第三方支付回调处理package-purchase-validation: 套餐购买验证 - 验证卡/设备是否有权购买指定套餐
Modified Capabilities
Impact
代码影响:
internal/model/- 新增 order.go(Order, OrderItem)migrations/- 创建 tb_order, tb_order_item 表internal/handler/- 新增订单 Handler(admin + app/h5)internal/service/- 新增订单 Serviceinternal/store/postgres/- 新增订单 Storeinternal/model/dto/- 新增订单相关 DTO
API 影响:
- 新增
/api/admin/orders/*后台订单管理 - 新增
/api/h5/orders/*H5 端订单操作 - 新增
/api/app/orders/*个人客户订单操作
数据库影响:
- 新增表:
tb_order,tb_order_item
依赖关系:
- 依赖 Phase 3(add-card-device-series-bindng)完成
- Phase 5(一次性佣金)依赖本期
- 依赖现有 Wallet 模型