show()->sort()->get(); return $this->json(RegionCategoryResource::collection($list)); } public function index(Request $request) { $query = Region::with(['currentPlant', 'monitorModes'])->filter($request->all(), RegionFilter::class)->sort()->show(); $list = $query->paginate($request->input('per_page')); return $this->json(RegionResource::collection($list)); } public function show($id) { $info = Region::with(['currentPlant', 'monitorModes', 'category'])->show()->findOrFail($id); return $this->json(RegionResource::make($info)); } public function plants($id, Request $request) { $info = Region::show()->findOrFail($id); $query = $info->plants(); $per = $request->input('per_page'); if ($per == -1) { $list = $query->get(); } else { $list = $query->paginate($per); } return $this->json(RegionPlantResource::collection($list)); } public function harvests($id, Request $request) { $info = Region::show()->findOrFail($id); $query = $info->harvests()->filter($request->all()); $per = $request->input('per_page'); if ($per == -1) { $list = $query->get(); } else { $list = $query->paginate($per); } return $this->json(PlantHarvestResource::collection($list)); } }