Pagination and Searching Riwayat

This commit is contained in:
Zakiaass 2024-03-19 14:42:23 +07:00
parent fba20e68c5
commit 79626e28b2
2 changed files with 42 additions and 5 deletions

View File

@ -245,8 +245,11 @@ public function perangkingan(Request $request)
return view('perhitungan.perangkingan', compact('criterias', 'extracuricullars', 'nilaiAkhir', 'totalNilaiAkhir', 'totalNilaiAkhirPersen', 'peringkat'));
}
public function getRiwayatHasil()
public function getRiwayatHasil(Request $request)
{
// Ambil data riwayat hasil dengan pagination
$logsQuery = LogActivity::query();
// Periksa apakah pengguna telah login
if (auth()->check()) {
// Jika pengguna adalah admin, ambil semua aktivitas log
@ -262,6 +265,20 @@ public function getRiwayatHasil()
$logs = collect();
}
if ($request->has('search')) {
$search = $request->search;
$logsQuery->where(function ($query) use ($search) {
$query->whereHas('user', function ($query) use ($search) {
$query->where('name', 'like', '%' . $search . '%');
})->orWhereHas('extracuricullar', function ($query) use ($search) {
$query->where('nama', 'like', '%' . $search . '%');
});
});
}
// Lakukan pagination dengan 10 item per halaman
$logs = $logsQuery->paginate(10);
// Ambil data dari formulir atau perhitungan Anda
$nilaiUtility = session('nilaiUtility', []);
@ -335,7 +352,7 @@ public function getRiwayatHasil()
public function index()
{
//
}
/**

View File

@ -33,7 +33,19 @@
</div>
<div class="card-box mb-30">
<div class="pd-20">
<h4 class="text-blue h4 mb-0">Hasil Riwayat</h4>
<h4 class="text-blue h4 mb-0">Hasil Riwayat Penilaian</h4>
</div>
<div class="card-header d-flex align-items-center">
<form class="form-inline ml-auto" action="{{ route('riwayat.hasil') }}" method="GET">
<div class="input-group">
<input type="search" class="form-control" name="search" placeholder="Search">
<div class="input-group-append">
<button class="btn btn-primary" type="submit">
<i class="icon dw dw-search"></i>
</button>
</div>
</div>
</form>
</div>
<form method="POST" action="">
@csrf
@ -49,9 +61,9 @@
</tr>
</thead>
<tbody>
@forelse ($logs as $log)
@forelse ($logs as $index => $log)
<tr>
<td>{{ $loop->iteration }}</td>
<td>{{ $index + $logs->firstItem() }}</td>
<td>{{ $log->user->name }}</td>
<td>{{ $log->extracuricullar->nama }}</td>
<td>{{ $log->final_score }}</td>
@ -63,6 +75,14 @@
@endforelse
</tbody>
</table>
<div>
<div style="display: flex; justify-content: space-between; align-items: center; margin: 0 20px;">
<div style="font-size: 14px;">
Showing data {{ $logs->firstItem() }} to {{ $logs->lastItem() }} of {{ $logs->total() }} entries
</div>
<div style="font-size: 14px;">{{ $logs->links() }}</div>
</div>
</div>
</div>
</div>
</form>