organization_id; $specialityId = $request->speciality_id; if (empty($organizationId) || empty($specialityId)) { $messageorganizationId = !empty($organizationId) ? ' ' : ' organization_id or '; $messageSpecialityId = !empty($specialityId) ? ' ' : 'speciality_id'; abort(Response::HTTP_BAD_REQUEST, 'Missing Parameter' . $messageorganizationId . $messageSpecialityId); } $doctors = PractitionerRole::query() ->with(['practitioner.person', 'speciality', 'prices']) ->whereHas('prices', function ($query) { $query->where('priceable_type', Practice::class); }) ->where('organization_id', $organizationId) ->where('speciality_id', $specialityId) ->get(); foreach ($doctors as $key => $doctor) { $specialisName = $doctor->speciality->name; } return response()->json([ 'status' => 'success', 'statusCode' => Response::HTTP_OK, 'message' => 'Data Berhasil di ambil', 'data' => [ 'title' => 'Spesialis ' . $specialisName, 'doctors' => SpecialityResource::collection($doctors) ] ]); } public function listSpeciality() { $specialities = Speciality::query()->get(['name']); return response()->json([ 'status' => 'success', 'statusCode' => Response::HTTP_OK, 'message' => 'Data Berhasil di ambil', 'data' => SpecialityResource::collection($specialities) ]); } }