public function listCheck($day, $room, $page) { $pagelen = 20; $day = Carbon::parse($day)->format('Y-m-d'); $startDate = date("Y-m-d H:i:s", strtotime($day)); $stopDate = date("Y-m-d H:i:s", strtotime($day . " 23:59:59")); $total_row = Cards::select(DB::raw('COUNT(*) as count'))->where('room_id', '=', $room)->get(); $total_page = ceil((int) $total_row[0]->count / $pagelen); $start = ($page - 1) * $pagelen; $cards = Cards::with("room")->where('room_id', '=', $room)->skip($start)->take($pagelen)->get(); $shows = Logs::with("card")->where('room_id', '=', $room)->whereBetween('access', array($startDate, $stopDate))->groupBy('card_id')->get(); $status = true; return compact("shows", "day", "cards", "status", "total_page"); }