From 5eb66a1c75fb2f422b4b1f7aa92f746c119980cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=8B=BC?= <2468023037@qq.com> Date: Fri, 28 Feb 2025 22:57:29 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E6=98=8E=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/api/v1/UserRewardController.php | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 app/controller/admin/api/v1/UserRewardController.php diff --git a/app/controller/admin/api/v1/UserRewardController.php b/app/controller/admin/api/v1/UserRewardController.php new file mode 100644 index 0000000..5e94619 --- /dev/null +++ b/app/controller/admin/api/v1/UserRewardController.php @@ -0,0 +1,55 @@ +post(); + + // 构建查询构造器 + $query = UserReward::query(); + + if (isset($data['updatedat']) && is_array($data['updatedat']) && count($data['updatedat']) == 2) { + // 直接从数组中获取开始和结束日期 + $startDate = $data['updatedat'][0]; + $endDate = $data['updatedat'][1]; + + if ($startDate === $endDate) { + // 如果开始日期和结束日期相同,则查询这一天的所有记录 + $query->whereDate('updated_at', '=', $startDate); + } else { + // 否则查询日期范围内的记录 + $query->whereBetween('updated_at', [$startDate . ' 00:00:00', $endDate . ' 23:59:59']); + } + } + + // 根据 username 进行模糊查询 + if (!empty($data['username'])) { + $query->where('username', 'like', '%' . $data['username'] . '%'); + } + $query->orderBy('id', 'desc'); + // 执行查询并返回数据 + $users = $query->paginate($data['pageSize'], ['*'], 'page', $data['current']); + + // 格式化结果为数组 + return ApiResponse::success(200, $users); + } +}