findOrFail($id); $territorio->restore(); activity()->causedBy(auth()->user()) ->performedOn($territorio) ->log('restored'); session()->flash('success', "Territorio {$territorio->numero} ripristinato."); } public function forceDelete(int $id) { $territorio = Territorio::onlyTrashed()->findOrFail($id); if ($territorio->assegnazioni()->exists()) { session()->flash('error', 'Impossibile eliminare definitivamente: il territorio ha assegnazioni nello storico.'); return; } activity()->causedBy(auth()->user()) ->withProperties(['numero' => $territorio->numero]) ->log('force_deleted_territorio'); $territorio->forceDelete(); session()->flash('success', 'Territorio eliminato definitivamente.'); } public function render() { return view('livewire.territori.territorio-cestino', [ 'territori' => Territorio::onlyTrashed()->orderByDesc('deleted_at')->paginate(20), ]); } }