'desc'],$pagesize=16) { $currentQuery = $this->model; if(isset($search['keyword']) && ! empty($search['keyword'])) { $keywords = '%' . $search['keyword'] . '%'; $currentQuery = $currentQuery->where(function ($query) use ($keywords) { $query->where('companyName' , 'like', $keywords); }); } if(isset($search['district']) && ! empty($search['district'])) { $currentQuery = $currentQuery->where(function ($query) use ($search) { $query->where('district','like', '%'.$search['district'].'%'); }); } if(isset($search['entType']) && ! empty($search['entType'])) { $currentQuery = $currentQuery->where(function ($query) use ($search) { $query->where('entType',$search['entType']); }); } if(isset($search['openStatus']) && ! empty($search['openStatus'])) { $currentQuery = $currentQuery->where(function ($query) use ($search) { $query->where('openStatus',$search['openStatus']); }); } if(isset($search['industry']) && ! empty($search['industry'])) { $currentQuery = $currentQuery->where(function ($query) use ($search) { $query->where('industry',$search['industry']); }); } if($orderby && is_array($orderby)){ foreach ($orderby AS $field => $value){ $currentQuery = $currentQuery -> orderBy($field, $value); } } $currentQuery = $currentQuery->paginate($pagesize); return $currentQuery; } }