From 96f19ecdf2dd53d70bf9c4444600916a4601429d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=90=9D=E5=8D=9C?= Date: Tue, 17 Mar 2026 06:41:15 +0800 Subject: [PATCH] =?UTF-8?q?refactor(site-subscriptions):=20ends=5Fat=20?= =?UTF-8?q?=E5=BF=AB=E6=8D=B7=E6=97=A5=E6=9C=9F=E8=8C=83=E5=9B=B4=E7=94=B1?= =?UTF-8?q?=20controller=20=E6=B3=A8=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Admin/SiteSubscriptionController.php | 11 +++++++++++ .../views/admin/site_subscriptions/index.blade.php | 7 ++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/Admin/SiteSubscriptionController.php b/app/Http/Controllers/Admin/SiteSubscriptionController.php index d1b929f..4b27f5b 100644 --- a/app/Http/Controllers/Admin/SiteSubscriptionController.php +++ b/app/Http/Controllers/Admin/SiteSubscriptionController.php @@ -386,6 +386,12 @@ class SiteSubscriptionController extends Controller ->all(); } + // ends_at 快捷入口日期范围:由 Controller 统一注入,避免 Blade 内多次 now() 调用跨天漂移。 + $baseToday = now(); + $endsRangeToday = $baseToday->format('Y-m-d'); + $endsRange7d = $baseToday->copy()->addDays(7)->format('Y-m-d'); + $endsRange30d = $baseToday->copy()->addDays(30)->format('Y-m-d'); + return view('admin.site_subscriptions.index', [ 'subscriptions' => $subscriptions, 'filters' => $filters, @@ -413,6 +419,11 @@ class SiteSubscriptionController extends Controller ], 'expiryMerchantRows' => $expiryMerchantRows, 'expiryMerchantPlanRows' => $expiryMerchantPlanRows, + + // ends_at 快捷入口日期范围 + 'endsRangeToday' => $endsRangeToday, + 'endsRange7d' => $endsRange7d, + 'endsRange30d' => $endsRange30d, ]); } diff --git a/resources/views/admin/site_subscriptions/index.blade.php b/resources/views/admin/site_subscriptions/index.blade.php index 5378fde..b224900 100644 --- a/resources/views/admin/site_subscriptions/index.blade.php +++ b/resources/views/admin/site_subscriptions/index.blade.php @@ -276,9 +276,10 @@
@php - $endsToday = now()->format('Y-m-d'); - $ends7d = now()->addDays(7)->format('Y-m-d'); - $ends30d = now()->addDays(30)->format('Y-m-d'); + // 到期区间快捷入口:日期范围由 Controller 注入,避免 Blade 内多次 now() 调用导致跨天漂移。 + $endsToday = (string) ($endsRangeToday ?? now()->format('Y-m-d')); + $ends7d = (string) ($endsRange7d ?? now()->addDays(7)->format('Y-m-d')); + $ends30d = (string) ($endsRange30d ?? now()->addDays(30)->format('Y-m-d')); // 到期区间快捷入口:应保留当前筛选上下文(status/expiry/merchant/plan/keyword/back),仅覆盖 ends_from/ends_to,并清空 page。 $endsQuickTodayUrl = $safeFullUrlWithQuery(['ends_from' => $endsToday, 'ends_to' => $endsToday, 'page' => null]);