hasRole(['admin', 'winemaker', 'worker']); return true; } /** * Determine whether the user can update the harvest. */ public function update(User $user, Harvest $harvest): bool { // TODO: Implement role-based authorization // Users can update their own harvests, or admins/winemakers can update any // Example: return $user->id === $harvest->user_id || $user->hasRole(['admin', 'winemaker']); return true; } /** * Determine whether the user can delete the harvest. */ public function delete(User $user, Harvest $harvest): bool { // TODO: Implement role-based authorization // Only administrators and winemakers should be able to delete harvests // Example: return $user->hasRole(['admin', 'winemaker']); return true; } /** * Determine whether the user can restore the harvest. */ public function restore(User $user, Harvest $harvest): bool { // TODO: Implement role-based authorization // Only administrators should be able to restore harvests // Example: return $user->hasRole('admin'); return true; } /** * Determine whether the user can permanently delete the harvest. */ public function forceDelete(User $user, Harvest $harvest): bool { // TODO: Implement role-based authorization // Only administrators should be able to force delete harvests // Example: return $user->hasRole('admin'); return true; } }