From f62623955577d03ca78c403cfbcca9018e7a2896 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=90=9D=E5=8D=9C?= Date: Wed, 11 Mar 2026 09:20:10 +0000 Subject: [PATCH] =?UTF-8?q?=E5=B9=B3=E5=8F=B0=E8=AE=A2=E5=8D=95=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E5=8C=BA=EF=BC=9A=E5=90=8C=E6=AD=A5=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E7=AD=9B=E9=80=89=E4=B8=8B=E5=A2=9E=E5=8A=A0=E6=B2=BB=E7=90=86?= =?UTF-8?q?=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resources/views/admin/platform_orders/index.blade.php | 10 ++++++++++ .../AdminPlatformOrderToolsGovernanceHintTest.php | 11 +++++++++++ 2 files changed, 21 insertions(+) diff --git a/resources/views/admin/platform_orders/index.blade.php b/resources/views/admin/platform_orders/index.blade.php index abeb5f1..cd46bff 100644 --- a/resources/views/admin/platform_orders/index.blade.php +++ b/resources/views/admin/platform_orders/index.blade.php @@ -260,6 +260,9 @@ $hasReconcileMismatchFilter = (($filters['reconcile_mismatch'] ?? '') === '1'); $hasRefundInconsistentFilter = (($filters['refund_inconsistent'] ?? '') === '1'); $hasSyncableOnlyFilter = (($filters['syncable_only'] ?? '') === '1'); + $hasSyncFailedFilter = (($filters['sync_status'] ?? '') === 'failed') + || trim((string) ($filters['sync_error_keyword'] ?? '')) !== '' + || (($filters['fail_only'] ?? '') === '1'); @endphp @if($hasReconcileMismatchFilter || $hasRefundInconsistentFilter) @@ -285,6 +288,13 @@ @endif @endif + @if($hasSyncFailedFilter) +
+ 提示:当前筛选包含「同步失败/失败原因」范围。建议先治理失败原因(修复数据或重试同步),再执行批量同步订阅等工具动作。 + 进入同步失败集合 +
+ @endif +
diff --git a/tests/Feature/AdminPlatformOrderToolsGovernanceHintTest.php b/tests/Feature/AdminPlatformOrderToolsGovernanceHintTest.php index 1ee76e0..a0dee6f 100644 --- a/tests/Feature/AdminPlatformOrderToolsGovernanceHintTest.php +++ b/tests/Feature/AdminPlatformOrderToolsGovernanceHintTest.php @@ -49,4 +49,15 @@ class AdminPlatformOrderToolsGovernanceHintTest extends TestCase ->assertSee('先去治理(取消只看可同步)', false) ->assertSee('syncable_only=', false); } + + public function test_platform_orders_tools_show_hint_when_sync_failed_filters_present(): void + { + $this->loginAsPlatformAdmin(); + + $this->get('/admin/platform-orders?sync_status=failed') + ->assertOk() + ->assertSee('当前筛选包含「同步失败/失败原因」范围', false) + ->assertSee('进入同步失败集合', false) + ->assertSee('sync_status=failed', false); + } }