归档支付商户池变更并同步主规格
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 1m25s

This commit is contained in:
2026-09-10 12:03:28 +08:00
parent 1e776da292
commit dc4e0d4103
8 changed files with 326 additions and 3 deletions

View File

@@ -1769,7 +1769,8 @@
"external-integration::富友调用超时兼容行为",
"identity-access::数据范围拒绝",
"order-payment-wallet::金额单位",
"external-integration::富友主扫统一下单与订单查询"
"external-integration::富友主扫统一下单与订单查询",
"merchant-payment-routing::新支付商户快照与历史兼容"
],
"classification": "behavior"
},
@@ -2696,7 +2697,8 @@
"capability": "order-payment-wallet",
"requirements": [
"external-integration::富友调用超时兼容行为",
"order-payment-wallet::钱包并发"
"order-payment-wallet::钱包并发",
"merchant-payment-routing::新支付商户快照与历史兼容"
],
"classification": "behavior"
},
@@ -2708,7 +2710,8 @@
"agent-funds-commission::充值边界",
"external-integration::富友调用超时兼容行为",
"order-payment-wallet::金额单位",
"order-payment-wallet::钱包并发"
"order-payment-wallet::钱包并发",
"merchant-payment-routing::新支付商户快照与历史兼容"
],
"classification": "behavior"
},
@@ -3642,5 +3645,122 @@
"system-operations::上下文健康检查证据链完整"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "GET /api/admin/payment-merchants",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户与微信授权配置管理"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "POST /api/admin/payment-merchants",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户与微信授权配置管理"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "GET /api/admin/payment-merchants/{id}",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户与微信授权配置管理"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "PUT /api/admin/payment-merchants/{id}",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户与微信授权配置管理"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "DELETE /api/admin/payment-merchants/{id}",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户与微信授权配置管理"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "GET /api/admin/wechat-authorizations",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户与微信授权配置管理"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "PUT /api/admin/wechat-authorizations/current",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户与微信授权配置管理"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "GET /api/admin/payment-merchant-pools",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户池唯一性与轮询配置"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "POST /api/admin/payment-merchant-pools",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户池唯一性与轮询配置"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "GET /api/admin/payment-merchant-pools/{id}",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户池唯一性与轮询配置"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "PUT /api/admin/payment-merchant-pools/{id}",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户池唯一性与轮询配置"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "POST /api/admin/payment-merchant-pools/{id}/enable",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户池唯一性与轮询配置"
],
"classification": "behavior"
},
{
"entry_type": "http",
"entry": "POST /api/admin/payment-merchant-pools/{id}/disable",
"capability": "merchant-payment-routing",
"requirements": [
"merchant-payment-routing::商户池唯一性与轮询配置"
],
"classification": "behavior"
}
]

View File

@@ -975,6 +975,106 @@
"exit_status": 0
}
},
{
"capability": "merchant-payment-routing",
"requirement": "商户与微信授权配置管理",
"spec": "openspec/specs/merchant-payment-routing/spec.md",
"entries": [
"GET /api/admin/payment-merchants",
"POST /api/admin/payment-merchants",
"GET /api/admin/payment-merchants/{id}",
"PUT /api/admin/payment-merchants/{id}",
"DELETE /api/admin/payment-merchants/{id}",
"GET /api/admin/wechat-authorizations",
"PUT /api/admin/wechat-authorizations/current"
],
"handler_consumer_job": [
"internal/handler/admin/payment_merchant.go"
],
"application_service_query": [
"internal/application/merchantpayment/management.go"
],
"domain_state_amount": [
"internal/model/payment_merchant.go"
],
"store_migration_config": [
"migrations/000210_add_payment_merchant_pools.up.sql"
],
"verification": {
"command": "代码中检索 requirePaymentMerchantAccess 与 无权限访问支付商户配置",
"literal_output": [
"internal/routes/payment_merchant.go:16:func requirePaymentMerchantAccess(handler fiber.Handler) fiber.Handler {",
"internal/routes/payment_merchant.go:20:return errors.New(errors.CodeForbidden, \"无权限访问支付商户配置\")"
],
"exit_status": 0
}
},
{
"capability": "merchant-payment-routing",
"requirement": "商户池唯一性与轮询配置",
"spec": "openspec/specs/merchant-payment-routing/spec.md",
"entries": [
"GET /api/admin/payment-merchant-pools",
"POST /api/admin/payment-merchant-pools",
"GET /api/admin/payment-merchant-pools/{id}",
"PUT /api/admin/payment-merchant-pools/{id}",
"POST /api/admin/payment-merchant-pools/{id}/enable",
"POST /api/admin/payment-merchant-pools/{id}/disable"
],
"handler_consumer_job": [
"internal/handler/admin/payment_merchant.go"
],
"application_service_query": [
"internal/application/merchantpayment/management.go"
],
"domain_state_amount": [
"internal/application/merchantpayment/routing.go"
],
"store_migration_config": [
"migrations/000210_add_payment_merchant_pools.up.sql"
],
"verification": {
"command": "代码中检索 暂无可用商户",
"literal_output": [
"internal/application/merchantpayment/routing.go:210:return nil, errors.New(errors.CodeNoPaymentConfig, \"暂无可用商户\")",
"internal/application/merchantpayment/routing.go:219:return nil, errors.New(errors.CodeNoPaymentConfig, \"暂无可用商户\")",
"internal/application/merchantpayment/routing.go:254:return nil, errors.New(errors.CodeNoPaymentConfig, \"暂无可用商户\")"
],
"exit_status": 0
}
},
{
"capability": "merchant-payment-routing",
"requirement": "新支付商户快照与历史兼容",
"spec": "openspec/specs/merchant-payment-routing/spec.md",
"entries": [
"POST /api/c/v1/orders/{id}/pay",
"POST /api/c/v1/wallet/recharge",
"POST /api/admin/agent-recharges"
],
"handler_consumer_job": [
"internal/service/client_order/service.go",
"internal/service/recharge_order/service.go",
"internal/application/agentrecharge/online_creation.go"
],
"application_service_query": [
"internal/application/merchantpayment/routing.go"
],
"domain_state_amount": [
"internal/model/payment.go"
],
"store_migration_config": [
"migrations/000210_add_payment_merchant_pools.up.sql"
],
"verification": {
"command": "代码中检索 SelectForNewPaymentWithTx 与 FreezeRoute",
"literal_output": [
"internal/service/client_order/service.go:388:route, err := s.merchantRuntime.SelectForNewPaymentWithTx(ctx, tx, paymentMethod, time.Now())",
"internal/service/client_order/service.go:400:merchantpayment.FreezeRoute(payment, route)"
],
"exit_status": 0
}
},
{
"capability": "agent-series-package-options",
"requirement": "查询系列授权套餐候选项",