validated(); $gates = Gate::where('book_id', $validated['book_id']) ->paginate($validated['per_page'], ['*'], 'page', $validated['page']); $gates->getCollection()->transform(function ($gate) { unset($gate['book_id']); $gate['is_locked'] = auth()->user()->isSubscriber() !== false ? false : Law::where('is_locked', $gate['law_id'])->first()?->is_locked; unset($gate['law_id']); return $gate; }); return $this->success($gates->items()); } }