input('date'); $date= $date??Carbon::now()->format('Y-m'); $lists = UserEpisodesRecord::filterUser() ->when($date,function ($query,$date){ /* @var Builder $query*/ return $query->where('created_at', 'like', "$date%"); }) ->with(['detail.episode']) ->orderByDesc('id')->get(); foreach ($lists as $list){ $count = $list->detail->episode->withCount('lists')->first()->toArray(); $list->detail->episode->total = $count['lists_count']; $list->detail->episode->status_text = $list->detail->episode->status; } return $this->success($lists); } }