2026-05-26 08:14:29 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
|
|
|
|
|
|
use App\Http\Controllers\Controller;
|
|
|
|
|
use App\Models\ActivityLog;
|
|
|
|
|
use App\Models\User;
|
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
|
|
|
|
|
|
class ActivityLogController extends Controller
|
|
|
|
|
{
|
|
|
|
|
public function index(Request $request)
|
|
|
|
|
{
|
|
|
|
|
$query = ActivityLog::with('user');
|
|
|
|
|
|
|
|
|
|
if ($request->filled('user_id')) {
|
|
|
|
|
$query->where('user_id', $request->user_id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('module')) {
|
|
|
|
|
$query->where('module', $request->module);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('action')) {
|
|
|
|
|
$query->where('action', $request->action);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('from')) {
|
|
|
|
|
$query->whereDate('created_at', '>=', $request->from);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('to')) {
|
|
|
|
|
$query->whereDate('created_at', '<=', $request->to);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$logs = $query->orderByDesc('created_at')->paginate(50);
|
|
|
|
|
$users = User::orderBy('name')->get();
|
|
|
|
|
$modules = ActivityLog::select('module')->distinct()->pluck('module');
|
|
|
|
|
|
|
|
|
|
return view('admin.activity-logs.index', compact('logs', 'users', 'modules'));
|
|
|
|
|
}
|
2026-06-02 22:07:16 +02:00
|
|
|
|
|
|
|
|
public function destroy(Request $request)
|
|
|
|
|
{
|
|
|
|
|
$query = ActivityLog::query();
|
|
|
|
|
|
|
|
|
|
if ($request->filled('user_id')) {
|
|
|
|
|
$query->where('user_id', $request->user_id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('module')) {
|
|
|
|
|
$query->where('module', $request->module);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('action')) {
|
|
|
|
|
$query->where('action', $request->action);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('from')) {
|
|
|
|
|
$query->whereDate('created_at', '>=', $request->from);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($request->filled('to')) {
|
|
|
|
|
$query->whereDate('created_at', '<=', $request->to);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$count = $query->count();
|
|
|
|
|
$query->delete();
|
|
|
|
|
|
|
|
|
|
return redirect()->route('admin.activity-logs.index')
|
|
|
|
|
->with('success', "Eliminati {$count} log.");
|
|
|
|
|
}
|
2026-05-26 08:14:29 +02:00
|
|
|
}
|