重构充值订单模块:用 tb_recharge_order + tb_payment 替换 tb_asset_recharge_record
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m32s

- 新增 RechargeOrder 和 Payment 模型及对应 Store
- 新增 ClientRechargeOrderHandler 提供充值订单列表/详情接口
- 修改 client_wallet.go 使用新表读写充值数据
- 修改 callback/payment.go 将 CRCH 订单路由到 rechargeOrderService
- 修改 client_order/service.go 的强充流程使用新表
- 修改 auto_purchase.go 从 tb_recharge_order 读取 linked_package_ids
- 修改 order/service.go 的 WalletPay 使用 tb_payment 记录
- 修改 wechat_config_store.go 从 tb_recharge_order 统计待支付充值数
- 移除 AssetRechargeStore 和 AssetRechargeRecord 的注册引用
- 修复文档生成器缺失 ClientRechargeOrder handler
- 状态枚举改为 0-based: Pending=0, Paid=1, Closed=2, Refunded=3
This commit is contained in:
2026-04-15 11:00:32 +08:00
parent d26010b29d
commit b972a776d9
33 changed files with 1589 additions and 1017 deletions

View File

@@ -33,7 +33,7 @@ type AuditServiceInterface interface {
type Service struct {
store *postgres.WechatConfigStore
orderStore *postgres.OrderStore
assetRechargeStore *postgres.AssetRechargeStore
rechargeOrderStore *postgres.RechargeOrderStore
agentRechargeStore *postgres.AgentRechargeStore
auditService AuditServiceInterface
redis *redis.Client
@@ -44,7 +44,7 @@ type Service struct {
func New(
store *postgres.WechatConfigStore,
orderStore *postgres.OrderStore,
assetRechargeStore *postgres.AssetRechargeStore,
rechargeOrderStore *postgres.RechargeOrderStore,
agentRechargeStore *postgres.AgentRechargeStore,
auditService AuditServiceInterface,
rdb *redis.Client,
@@ -53,7 +53,7 @@ func New(
return &Service{
store: store,
orderStore: orderStore,
assetRechargeStore: assetRechargeStore,
rechargeOrderStore: rechargeOrderStore,
agentRechargeStore: agentRechargeStore,
auditService: auditService,
redis: rdb,
@@ -521,7 +521,7 @@ func (s *Service) resolvePaymentConfigID(ctx context.Context, orderNo string) (*
return order.PaymentConfigID, nil
case len(orderNo) >= 4 && orderNo[:4] == constants.AssetRechargeOrderPrefix:
record, err := s.assetRechargeStore.GetByRechargeNo(ctx, orderNo)
record, err := s.rechargeOrderStore.GetByRechargeOrderNo(ctx, orderNo)
if err != nil {
return nil, err
}