user()->can('list', MedicalCenter::class)) { return \MessageResponse::error(trans('messages.access_denied')); } $MedicalCenters = MedicalCenter::when($request->has('name') && $request->name, function($query) use($request){ $query->where('name', 'LIKE', '%'.$request->name.'%'); })->withCount('users')->paginate(10); return \MessageResponse::data($MedicalCenters); } public function create() { // } public function store(StoreMedicalCenterRequest $request) { MedicalCenter::create($request->all()); return \MessageResponse::success(trans('messages.success')); } public function show($id) { // $MedicalCenter = MedicalCenter::with('users')->findOrFail($id); // return response()->json(['MedicalCenter' => $MedicalCenter]); } public function edit(MedicalCenter $MedicalCenter) { $MedicalCenter->load('users'); return \MessageResponse::data($MedicalCenter); } public function update(StoreMedicalCenterRequest $request, MedicalCenter $MedicalCenter) { $MedicalCenter->update($request->all()); return \MessageResponse::success(trans('messages.success')); } public function destroy(MedicalCenter $MedicalCenter) { if (!auth('api')->user()->can('delete', $MedicalCenter)) { return \MessageResponse::error(trans('messages.access_denied')); } $MedicalCenter->delete(); return \MessageResponse::success(trans('messages.success')); } public function listMedicalCenters(){ $MedicalCenters = MedicalCenter::select('id','name')->get(); return \MessageResponse::data($MedicalCenters); } public function getCities(){ $Cities = City::whereNull('parent_id')->get(); return \MessageResponse::data($Cities); } }