first commit

This commit is contained in:
2026-05-14 09:08:09 +08:00
commit 919b86c8ec
111 changed files with 14085 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
<?php
namespace App\Http\Controllers;
use App\Models\Jabatan;
use App\Models\Permohonan;
use App\Models\Vot;
use Spatie\Activitylog\Models\Activity;
class DashboardController extends Controller
{
public function __invoke()
{
$user = auth()->user();
$base = Permohonan::query();
if ($user->hasRole('Pemohon')) {
$base->where('user_id', $user->id);
} elseif ($user->hasRole('Pelaksana')) {
$base->where('jabatan_id', $user->jabatan_id);
}
return view('dashboard.index', [
'total' => (clone $base)->count(),
'approved' => (clone $base)->where('status', 'Approved')->sum('jumlah_keseluruhan'),
'rejected' => (clone $base)->where('status', 'Rejected')->count(),
'pending' => (clone $base)->whereIn('status', ['Submitted', 'Under Review'])->count(),
'byJabatan' => Jabatan::withCount('users')->limit(8)->get(),
'byVot' => Vot::with('jabatan')->limit(8)->get(),
'recent' => (clone $base)->latest()->with(['user', 'jabatan', 'vot'])->limit(6)->get(),
'activities' => Activity::latest()->limit(8)->get(),
]);
}
}