JobfairoutRepository.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: ZhangHao
  5. * Date: 2019/6/17
  6. * Time: 11:12
  7. */
  8. namespace App\Repositories\Jobfairout;
  9. use App\Models\Jobfairout\Jobfairout;
  10. use Prettus\Repository\Eloquent\BaseRepository;
  11. class JobfairoutRepository extends BaseRepository
  12. {
  13. public function model()
  14. {
  15. return Jobfairout::class;
  16. }
  17. public function getJobfairList($com_id)
  18. {
  19. return $this->model->with(['jobfairoutCompany'=>function ($query) use ($com_id){
  20. $query->where('company_id',$com_id);
  21. }])->where(function ($query) {
  22. $query->where('showendtime', '>=', time())->orWhere('showendtime', 0);
  23. })->where(['display'=>1])->orderBy('predetermined_status', 'asc')->orderBy('ordid', 'desc')
  24. ->orderBy('predetermined_end', 'desc')->paginate(10);
  25. }
  26. public function allJobfair($where, $page, $pageCount)
  27. {
  28. return $this->model->when(get_subsite_id()>0,function($query){
  29. $query->whereHas('subsite', function ($query) {
  30. $query->where('subsite_id', get_subsite_id());
  31. });
  32. })->where($where)->Where(function ($query) {
  33. $query->where('showendtime', 0)->orWhere('showendtime', '>=', time());
  34. })->orderBy('predetermined_status', 'asc')->orderBy('ordid', 'desc')->orderBy('predetermined_end', 'desc')->offset($page*$pageCount)->limit($pageCount)->get();
  35. }
  36. public function findOne($where)
  37. {
  38. return $this->model->where($where)->where(function ($query) use ($where) {
  39. $query->where('showendtime', '>=', time())->orWhere('showendtime', 0);
  40. })->first();
  41. }
  42. public function findJobfair($where)
  43. {
  44. return $this->model->where($where)->where(function ($query) {
  45. $query->where('showendtime', '>=', time())->orWhere('showendtime', 0);
  46. })->first();
  47. }
  48. //允许预定的招聘会
  49. public function getJobfairOpen()
  50. {
  51. return $this->model->where('predetermined_status', 1)->get();
  52. }
  53. }