<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/11/21 * Time: 17:25 */ namespace App\Repositories; use App\Models\PersonFavorite; use Prettus\Repository\Eloquent\BaseRepository; use Prettus\Repository\Criteria\RequestCriteria; /** * Class MemberRepositoryEloquent. * * @package namespace App\Repositories; */ class PersonFavoriteRepository extends BaseRepository { /** * Specify Model class name * * @return string */ public function model() { return PersonFavorite::class; } /** * Boot up the repository, pushing criteria */ public function boot() { $this->pushCriteria(app(RequestCriteria::class)); } public function jobsF($settr, $where, $uid) { return $this->model->with(['jobs'=>function($query) use ($where) { $query->where('valid', 1)->whereIn('audit', $where)->where('display', 1); },'personalJobsApply'=>function($query) use ($uid) { $date = config('aix.personal_set.per_set.per_set.apply_job_space'); $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"))); }])->whereHas('jobs')->where($settr)->orderBy('id', 'desc')->paginate(10); } public function delPersonFavorite($id) { return $this->model->whereIn('id', $id)->delete(); } public function getInfo($where) { return $this->model->where($where)->first(); } public function cancelFavor($where) { return $this->model->where($where)->delete(); } public function addData($data) { return $this->model->create($data); } public function getList($where) { return $this->model->where($where)->get(); } public function insertData($data) { return $this->model->insert($data); } }