user()->can('qms.capa.view')) { abort(403); } $business_id = $request->session()->get('user.business_id'); $capas = CapaAction::forBusiness($business_id)->with(['ncr', 'owner'])->latest('id')->paginate(20); return view('qualitymanagement::capa.index', compact('capas')); } public function updateStatus($id, Request $request) { if (! auth()->user()->can('qms.capa.update')) { abort(403); } $business_id = $request->session()->get('user.business_id'); $capa = CapaAction::forBusiness($business_id)->findOrFail($id); $validated = $request->validate([ 'status' => 'required|in:planned,in_progress,verification,closed,cancelled', 'effectiveness_notes' => 'nullable|string', ]); if ($validated['status'] === 'closed') { $validated['verified_at'] = now()->toDateString(); $validated['verified_by'] = auth()->id(); } $capa->update($validated); return redirect()->back()->with('status', ['success' => 1, 'msg' => __('qualitymanagement::lang.capa_updated')]); } }