input('page_index'); $page_size=$request->input('page_size'); $num=$page_size*($page_index-1); $pid=$request->input('pid'); $count=Cate::query()->where('pid',$pid)->count(); $list=Cate::query()->where('pid',$pid) ->withCount(['course'=>function($query){ $query->where('state','1'); }]) ->orderBy('sort','desc')->orderBy('id','desc') ->skip($num)->take($page_size) ->get(); if($pid==0){ foreach($list as $key=>$val){ $cate_id=Cate::query()->where('pid',$val->id)->pluck('id'); $list[$key]->course_count=Course::where('state','1')->whereIn('c_id',$cate_id)->count(); } } return $this->success_list($list,'',$count); } }