user['id']); if ($request->input('id')) { $plan = Plan::where('id', $request->input('id'))->first(); if (!$plan) { abort(500, __('Subscription plan does not exist')); } if ((!$plan->show && !$plan->renew) || (!$plan->show && $user->plan_id !== $plan->id)) { abort(500, __('Subscription plan does not exist')); } return response([ 'data' => $plan ]); } $counts = PlanService::countActiveUsers(); $plans = Plan::where('show', 1) ->orderBy('sort', 'ASC') ->get(); foreach ($plans as $k => $v) { if ($plans[$k]->capacity_limit === NULL) continue; if (!isset($counts[$plans[$k]->id])) continue; $plans[$k]->capacity_limit = $plans[$k]->capacity_limit - $counts[$plans[$k]->id]->count; } return response([ 'data' => $plans ]); } }