From 74bb543e7eadca9da8c643faf705c055021e86bd Mon Sep 17 00:00:00 2001 From: Jing Li Date: Tue, 16 Apr 2024 16:57:52 +0800 Subject: [PATCH] Update --- .../Controllers/Api/StatisticsController.php | 35 +++++++++++-------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/app/Http/Controllers/Api/StatisticsController.php b/app/Http/Controllers/Api/StatisticsController.php index 5df0369..4539bbe 100644 --- a/app/Http/Controllers/Api/StatisticsController.php +++ b/app/Http/Controllers/Api/StatisticsController.php @@ -13,43 +13,50 @@ class StatisticsController extends Controller */ public function dashboard(Request $request, StatisticService $statisticService): array { + $request->validate( + rules: ['date' => ['filled', 'date_format:Y-m-d']], + attributes: ['date' => '日期'], + ); + $input = $this->defaultFilterInput($request); - // 昨天 - $yesterday = Carbon::yesterday(); + $date = Carbon::yesterday(); + if ($request->filled('date')) { + $date = Carbon::parse($request->input('date')); + } // 本月上报数据统计 - $currentMonthLedger = array_merge( - ['deadline' => $yesterday->format('Y-m-d')], + $monthLedger = array_merge( + ['deadline' => $date->format('Y-m-d')], $statisticService->ledger( - $yesterday->copy()->startOfMonth(), - $yesterday->copy(), + $date->copy()->startOfMonth(), + $date->copy(), $input, ), ); // 昨日总账录入 - $yesterdayLedger = array_merge( - ['date' => $yesterday->format('Y-m-d')], + $yesdayLedger = array_merge( + ['date' => $date->format('Y-m-d')], $statisticService->ledger( - $yesterday->copy(), - $yesterday->copy(), + $date->copy(), + $date->copy(), $input, ), ); // 近30天趋势数据 $trendsOf30days = $statisticService->ledgerTrends( - $yesterday->copy()->subDays(29), - $yesterday->copy(), + $date->copy()->subDays(29), + $date->copy(), $input, ); return [ // 本月总账录入 - 'current_month_ledger' => $currentMonthLedger, + 'current_month_ledger' => $monthLedger, // 昨日累计金额 - 'yesterday_ledger' => $yesterdayLedger, + 'yesday_ledger' => $yesdayLedger, // 近30天趋势数据 'trends_of_30days' => $trendsOf30days, ];