filter ?? 'today'; // default hari ini $startDate = null; $endDate = null; if ($filter == 'today') { $startDate = Carbon::today(); $endDate = Carbon::today(); } elseif ($filter == 'yesterday') { $startDate = Carbon::yesterday(); $endDate = Carbon::yesterday(); } elseif ($filter == '7days') { $startDate = Carbon::now()->subDays(6); $endDate = Carbon::today(); } elseif ($filter == '30days') { $startDate = Carbon::now()->subDays(29); $endDate = Carbon::today(); } elseif ($filter == 'this_month') { $startDate = Carbon::now()->startOfMonth(); $endDate = Carbon::now()->endOfMonth(); } elseif ($filter == 'custom' && $request->start_date && $request->end_date) { $startDate = Carbon::parse($request->start_date); $endDate = Carbon::parse($request->end_date); } // Query transaksi berdasarkan range tanggal $query = Transaksi::where('is_delete', false); if ($startDate && $endDate) { $query->whereBetween('created_at', [$startDate->startOfDay(), $endDate->endOfDay()]); } $trx_today = $query->count(); $trx_nominal = $query->sum('price'); $transaksi = $query->limit(5)->get(); // Data tambahan $total_rp = RoomService::where('is_delete', false)->count(); $asuransi = Asuransi::where('is_delete', false)->count(); $pasien = Patient::where('is_delete', false)->count(); $data =[ 'title' => 'Dashboard', 'trx_today' => $trx_today, 'trx_nominal' => $trx_nominal, 'asuransi' => $asuransi, 'pasien' => $pasien, 'total_rp'=>$total_rp, 'transaksi' => $transaksi ]; return view('dashboard.index', $data); } }