when($request->status, function ($query, $status) { return $query->where('status', $status); }) ->latest() ->paginate(10); return view('admin.machines.index', compact('machines')); } /** * 顯示特定機台的日誌與詳細資訊 */ public function show(int $id): View { $machine = Machine::with(['logs' => function ($query) { $query->latest()->limit(50); }])->findOrFail($id); return view('admin.machines.show', compact('machine')); } /** * 顯示所有機台日誌列表 */ public function logs(Request $request): View { $logs = \App\Models\Machine\MachineLog::with('machine') ->when($request->level, function ($query, $level) { return $query->where('level', $level); }) ->when($request->machine_id, function ($query, $machineId) { return $query->where('machine_id', $machineId); }) ->latest() ->paginate(20); $machines = Machine::select('id', 'name')->get(); return view('admin.machines.logs', compact('logs', 'machines')); } /** * 機台權限設定 (開發中) */ public function permissions(Request $request): View { return view('admin.machines.index', ['machines' => Machine::paginate(1)]); // Placeholder } /** * 機台使用率統計 (開發中) */ public function utilization(Request $request): View { return view('admin.machines.index', ['machines' => Machine::paginate(1)]); // Placeholder } /** * 機台到期管理 (開發中) */ public function expiry(Request $request): View { return view('admin.machines.index', ['machines' => Machine::paginate(1)]); // Placeholder } /** * 機台維護紀錄 (開發中) */ public function maintenance(Request $request): View { return view('admin.machines.index', ['machines' => Machine::paginate(1)]); // Placeholder } }