feat: log create/update/delete/login activity across controllers

This commit is contained in:
GuavaPopper
2026-06-03 20:56:50 +07:00
parent 7fb649f690
commit cb3933541d
4 changed files with 28 additions and 2 deletions
@@ -2,6 +2,7 @@
namespace App\Http\Controllers;
use App\Models\ActivityLog;
use App\Models\User;
use Illuminate\Http\Request;
@@ -34,6 +35,7 @@ class AdminUserController extends Controller
]);
$user->syncRoles([$validated['role']]);
ActivityLog::record('create', "Membuat pengguna: {$user->email}", 'user', $user->id);
return response()->json(['success' => true, 'data' => [
'id' => $user->id, 'name' => $user->name,
'email' => $user->email, 'role' => $validated['role'],
@@ -53,6 +55,7 @@ class AdminUserController extends Controller
$user->update(['name' => $validated['name'], 'email' => $validated['email']]);
$user->syncRoles([$validated['role']]);
ActivityLog::record('update', "Mengubah pengguna: {$user->email}", 'user', $user->id);
return response()->json(['success' => true, 'data' => [
'id' => $user->id, 'name' => $user->name,
'email' => $user->email, 'role' => $validated['role'],
@@ -68,6 +71,7 @@ class AdminUserController extends Controller
}
$user->delete();
ActivityLog::record('delete', "Menghapus pengguna: {$user->email}", 'user', $id);
return response()->json(['success' => true]);
}
@@ -80,6 +84,7 @@ class AdminUserController extends Controller
]);
$user->update(['password' => $request->password]);
ActivityLog::record('update', "Reset password pengguna: {$user->email}", 'user', $user->id);
return response()->json(['success' => true]);
}
}
+3
View File
@@ -2,6 +2,7 @@
namespace App\Http\Controllers;
use App\Models\ActivityLog;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
@@ -21,6 +22,7 @@ class AuthController extends Controller
if (Auth::attempt($credentials, $request->boolean('remember'))) {
$request->session()->regenerate();
ActivityLog::record('login', 'Pengguna masuk ke sistem');
return redirect()->intended('/map');
}
@@ -31,6 +33,7 @@ class AuthController extends Controller
public function logout(Request $request)
{
ActivityLog::record('logout', 'Pengguna keluar dari sistem');
Auth::logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
@@ -2,6 +2,7 @@
namespace App\Http\Controllers;
use App\Models\ActivityLog;
use App\Models\RumahIbadah;
use Illuminate\Http\Request;
@@ -29,6 +30,7 @@ class IbadahController extends Controller
$validated['user_id'] = auth()->id();
$ibadah = RumahIbadah::create($validated);
ActivityLog::record('create', "Menambah rumah ibadah: {$ibadah->nama}", 'ibadah', $ibadah->id);
return response()->json(['success' => true, 'data' => $ibadah]);
}
@@ -54,6 +56,7 @@ class IbadahController extends Controller
]);
$ibadah->update($validated);
ActivityLog::record('update', "Mengubah rumah ibadah: {$ibadah->nama}", 'ibadah', $ibadah->id);
return response()->json(['success' => true, 'data' => $ibadah]);
}
@@ -66,6 +69,7 @@ class IbadahController extends Controller
}
$ibadah->delete();
ActivityLog::record('delete', "Menghapus rumah ibadah: {$ibadah->nama}", 'ibadah', $id);
return response()->json(['success' => true]);
}
}
+16 -2
View File
@@ -2,6 +2,7 @@
namespace App\Http\Controllers;
use App\Models\ActivityLog;
use App\Models\RumahMiskin;
use Illuminate\Http\Request;
@@ -16,14 +17,20 @@ class MiskinController extends Controller
{
$validated = $request->validate([
'id_rumah' => 'required|string|unique:rumah_miskin,id_rumah',
'alamat' => 'required|string',
'nama_kk' => 'nullable|string',
'alamat' => 'nullable|string',
'jumlah_kk' => 'required|integer',
'jumlah_orang' => 'required|integer',
'latitude' => 'required|numeric',
'longitude' => 'required|numeric',
'pekerjaan' => 'nullable|string',
'pendapatan' => 'nullable|numeric',
'kondisi_rumah' => 'nullable|string',
'keterangan' => 'nullable|string',
]);
$miskin = RumahMiskin::create($validated);
ActivityLog::record('create', "Menambah keluarga miskin: {$miskin->id_rumah}", 'miskin', $miskin->id_rumah);
return response()->json(['success' => true, 'data' => $miskin]);
}
@@ -31,14 +38,20 @@ class MiskinController extends Controller
{
$miskin = RumahMiskin::findOrFail($id_rumah);
$validated = $request->validate([
'alamat' => 'required|string',
'nama_kk' => 'nullable|string',
'alamat' => 'nullable|string',
'jumlah_kk' => 'required|integer',
'jumlah_orang' => 'required|integer',
'latitude' => 'required|numeric',
'longitude' => 'required|numeric',
'pekerjaan' => 'nullable|string',
'pendapatan' => 'nullable|numeric',
'kondisi_rumah' => 'nullable|string',
'keterangan' => 'nullable|string',
]);
$miskin->update($validated);
ActivityLog::record('update', "Mengubah keluarga miskin: {$miskin->id_rumah}", 'miskin', $miskin->id_rumah);
return response()->json(['success' => true, 'data' => $miskin]);
}
@@ -46,6 +59,7 @@ class MiskinController extends Controller
{
$miskin = RumahMiskin::findOrFail($id_rumah);
$miskin->delete();
ActivityLog::record('delete', "Menghapus keluarga miskin: {$id_rumah}", 'miskin', $id_rumah);
return response()->json(['success' => true]);
}
}