From f639ef2fbb754be21b8071ecbd8b3123e994f699 Mon Sep 17 00:00:00 2001 From: long <452591453@qq.com> Date: Wed, 20 May 2026 17:38:28 +0800 Subject: [PATCH] feat: add time dimension filter (today/3d/7d/30d) to resource list --- .../app/api/controller/asset/AssetAppController.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/server/app/api/controller/asset/AssetAppController.php b/server/app/api/controller/asset/AssetAppController.php index 9388b2bb..3913e606 100644 --- a/server/app/api/controller/asset/AssetAppController.php +++ b/server/app/api/controller/asset/AssetAppController.php @@ -84,6 +84,7 @@ class AssetAppController extends BaseApiController $type = $this->request->get('type', 1); $pageNo = $this->request->get('page_no', 1); $pageSize = $this->request->get('page_size', 20); + $days = (int)$this->request->get('days', 0); $resourceIds = AssetUserResource::where('user_id', $user->id)->column('resource_id'); @@ -96,9 +97,14 @@ class AssetAppController extends BaseApiController ]); } - $count = AssetResource::whereIn('id', $resourceIds)->where('type', $type)->count(); - $lists = AssetResource::whereIn('id', $resourceIds) - ->where('type', $type) + $query = AssetResource::whereIn('id', $resourceIds)->where('type', $type); + if ($days > 0) { + $startTime = strtotime("-{$days} days", strtotime(date('Y-m-d'))); + $query = $query->where('create_time', '>=', $startTime); + } + + $count = (clone $query)->count(); + $lists = (clone $query) ->order('id', 'desc') ->page($pageNo, $pageSize) ->select();