MIF_E31220412/app/Http/Controllers/Admin/ReportController.php

29 lines
1.0 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\Sewa;
use Carbon\Carbon;
class ReportController extends Controller
{
public function transactions(Request $request)
{
// Ambil data transaksi (sewa yang sudah selesai atau dikonfirmasi)
$query = Sewa::with('user', 'paket')
->whereIn('status', ['confirmed', 'completed']); // Asumsi 'confirmed' dan 'completed' adalah status yang relevan untuk laporan transaksi
// Filter berdasarkan tanggal jika ada
if ($request->has('start_date') && $request->has('end_date')) {
$startDate = Carbon::parse($request->input('start_date'))->startOfDay();
$endDate = Carbon::parse($request->input('end_date'))->endOfDay();
$query->whereBetween('created_at', [$startDate, $endDate]);
}
$transactions = $query->latest()->paginate(10); // Paginate hasilnya
return view('admin.reports.transactions', compact('transactions', 'request'));
}
}