From 80118b9f049afc22fd504fc5d3dba80c174323be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=90=9D=E5=8D=9C?= Date: Wed, 18 Mar 2026 05:04:23 +0800 Subject: [PATCH] admin: dashboard add bmpa success quick link --- app/Http/Controllers/Admin/DashboardController.php | 6 ++++++ resources/views/admin/dashboard.blade.php | 2 ++ 2 files changed, 8 insertions(+) diff --git a/app/Http/Controllers/Admin/DashboardController.php b/app/Http/Controllers/Admin/DashboardController.php index b14711b..5d601f2 100644 --- a/app/Http/Controllers/Admin/DashboardController.php +++ b/app/Http/Controllers/Admin/DashboardController.php @@ -103,6 +103,12 @@ class DashboardController extends Controller 'platform_orders_bmpa_failed' => PlatformOrder::query() ->whereRaw("JSON_EXTRACT(meta, '$.batch_mark_paid_and_activate_error.message') IS NOT NULL") ->count(), + // BMPA 成功:用于运营抽样复核(spot-check)批量标记支付并生效的成功集合 + // 口径与平台订单列表 bmpa_success_only=1 一致:run_id 存在且 error.message 为空 + 'platform_orders_bmpa_success' => PlatformOrder::query() + ->whereRaw("JSON_EXTRACT(meta, '$.batch_mark_paid_and_activate.run_id') IS NOT NULL") + ->whereRaw("JSON_EXTRACT(meta, '$.batch_mark_paid_and_activate_error.message') IS NULL") + ->count(), // 无回执(已支付但缺少回执证据):用于治理“已付但无回执”的风险订单 'platform_orders_paid_no_receipt' => PlatformOrder::query() ->where('payment_status', 'paid') diff --git a/resources/views/admin/dashboard.blade.php b/resources/views/admin/dashboard.blade.php index 541de6b..21d6ca6 100644 --- a/resources/views/admin/dashboard.blade.php +++ b/resources/views/admin/dashboard.blade.php @@ -70,6 +70,7 @@ 'sync_failed' => \App\Support\BackUrl::withBack('/admin/platform-orders?sync_status=failed', $selfWithoutBack), 'renewal_missing_subscription' => \App\Support\BackUrl::withBack('/admin/platform-orders?renewal_missing_subscription=1', $selfWithoutBack), 'bmpa_failed' => \App\Support\BackUrl::withBack('/admin/platform-orders?bmpa_failed_only=1', $selfWithoutBack), + 'bmpa_success' => \App\Support\BackUrl::withBack('/admin/platform-orders?bmpa_success_only=1', $selfWithoutBack), 'paid_no_receipt' => \App\Support\BackUrl::withBack('/admin/platform-orders?payment_status=paid&receipt_status=none', $selfWithoutBack), 'reconcile_mismatch' => \App\Support\BackUrl::withBack('/admin/platform-orders?reconcile_mismatch=1', $selfWithoutBack), 'refund_inconsistent' => \App\Support\BackUrl::withBack('/admin/platform-orders?refund_inconsistent=1', $selfWithoutBack), @@ -319,6 +320,7 @@ 待生效({{ (int) ($stats['platform_orders_paid_pending'] ?? 0) }}) 续费缺订阅({{ (int) ($stats['platform_orders_renewal_missing_subscription'] ?? 0) }}) BMPA失败({{ (int) ($stats['platform_orders_bmpa_failed'] ?? 0) }}) + BMPA成功({{ (int) ($stats['platform_orders_bmpa_success'] ?? 0) }})