more optimization && add plan user count

This commit is contained in:
Tokumeikoi
2020-06-24 13:47:25 +08:00
parent ffd13fbc64
commit b5a9b3e68c
4 changed files with 19 additions and 4 deletions

View File

@ -16,8 +16,23 @@ class PlanController extends Controller
{
public function fetch(Request $request)
{
$counts = User::select(
DB::raw("plan_id"),
DB::raw("count(*) as count")
)
->where('plan_id', '!=', NULL)
->groupBy("plan_id")
->get();
$plans = Plan::orderBy('sort', 'ASC')->get();
foreach ($plans as $k => $v) {
$plans[$k]->count = 0;
foreach ($counts as $kk => $vv) {
if ($plans[$k]->id === $counts[$kk]->plan_id) $plans[$k]->count = $counts[$kk]->count;
}
}
return response([
'data' => Plan::orderBy('sort', 'ASC')->get()
'data' => $plans
]);
}