PersonFavoriteRepository.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2018/11/21
  6. * Time: 17:25
  7. */
  8. namespace App\Repositories;
  9. use App\Models\PersonFavorite;
  10. use Prettus\Repository\Eloquent\BaseRepository;
  11. use Prettus\Repository\Criteria\RequestCriteria;
  12. /**
  13. * Class MemberRepositoryEloquent.
  14. *
  15. * @package namespace App\Repositories;
  16. */
  17. class PersonFavoriteRepository extends BaseRepository
  18. {
  19. /**
  20. * Specify Model class name
  21. *
  22. * @return string
  23. */
  24. public function model()
  25. {
  26. return PersonFavorite::class;
  27. }
  28. /**
  29. * Boot up the repository, pushing criteria
  30. */
  31. public function boot()
  32. {
  33. $this->pushCriteria(app(RequestCriteria::class));
  34. }
  35. public function jobsF($settr, $where, $uid)
  36. {
  37. return $this->model->with(['jobs'=>function($query) use ($where) {
  38. $query->where('valid', 1)->whereIn('audit', $where)->where('display', 1);
  39. },'personalJobsApply'=>function($query) use ($uid) {
  40. $date = config('aix.personal_set.per_set.per_set.apply_job_space');
  41. $query->where('personal_uid', $uid)->where('created_at', '>=', date('Y-m-d H:i:s', strtotime("-{$date} day")))->where('created_at', '<=', date('Y-m-d H:i:s', strtotime("{$date} day")));
  42. }])->whereHas('jobs')->where($settr)->orderBy('id', 'desc')->paginate(10);
  43. }
  44. public function delPersonFavorite($id)
  45. {
  46. return $this->model->whereIn('id', $id)->delete();
  47. }
  48. public function getInfo($where)
  49. {
  50. return $this->model->where($where)->first();
  51. }
  52. public function cancelFavor($where)
  53. {
  54. return $this->model->where($where)->delete();
  55. }
  56. public function addData($data)
  57. {
  58. return $this->model->create($data);
  59. }
  60. public function getList($where)
  61. {
  62. return $this->model->where($where)->get();
  63. }
  64. public function insertData($data)
  65. {
  66. return $this->model->insert($data);
  67. }
  68. }