|
@@ -5034,73 +5034,67 @@ class NewsService implements NewsServiceInterface
|
|
|
/*
|
|
|
* 获取招聘信息列表-职场机会(个人会员收到企业推送岗位)
|
|
|
* */
|
|
|
- public function getRecruitingList(array $data): array
|
|
|
- {
|
|
|
-
|
|
|
- $user = User::where('id', $data['user_id'])->first();
|
|
|
- if (empty($user) || ($user['type_id'] != 10000 && $user['type_id'] != 1)) {
|
|
|
- return Result::error("用户不存在", 0);
|
|
|
- }
|
|
|
- // 1:个人会员 职场机会
|
|
|
- if ($user['type_id'] == 1) {
|
|
|
- $where['user_id'] = $user['id'];
|
|
|
- }
|
|
|
- $recruitingId = JobResume::when($user['type_id'] == 1, function ($query) use ($user) {
|
|
|
- $query->where('recruit_id', $user['id']);
|
|
|
- })
|
|
|
- ->pluck('recruit_id');
|
|
|
- $where = [];
|
|
|
- if (isset($data['salary']) && $data['salary'] != null) {
|
|
|
- $where['job_recruiting.salary'] = $data['salary'];
|
|
|
- }
|
|
|
- if (isset($data['experience']) && $data['experience'] != null) {
|
|
|
- $where['job_recruiting.experience'] = $data['experience'];
|
|
|
- }
|
|
|
- if (isset($data['business_name']) && $data['business_name'] != null) {
|
|
|
- array_push($where, ['job_company.business_name', 'like', '%' . $data['business_name'] . '%']);
|
|
|
- }
|
|
|
- $query = JobRecruiting::whereIn('job_recruiting.id', $recruitingId)
|
|
|
- ->leftJoin('job_company', 'job_recruiting.id', '=', 'job_company.job_id')
|
|
|
- ->where($where);
|
|
|
- // ->count();
|
|
|
- $count = $query->count();
|
|
|
- $query = clone $query;
|
|
|
- $job = $query
|
|
|
- ->leftJoin('job_enum as income_enum', function ($join) {
|
|
|
- $join->on('job_recruiting.salary', '=', 'income_enum.evalue')
|
|
|
- ->where('income_enum.egroup', 'income');
|
|
|
- })
|
|
|
- ->leftJoin('job_enum as years_enum', function ($join) {
|
|
|
- $join->on('job_recruiting.experience', '=', 'years_enum.evalue')
|
|
|
- ->where('years_enum.egroup', 'years');
|
|
|
- })
|
|
|
- // ->where($where)
|
|
|
- ->orderBy('job_recruiting.updated_at', 'desc')
|
|
|
- ->select(
|
|
|
- 'job_recruiting.id',
|
|
|
- 'job_recruiting.title',
|
|
|
- 'job_company.business_name',
|
|
|
- 'income_enum.evalue as salary_evalue',
|
|
|
- 'income_enum.ename as salary_ename',
|
|
|
- 'years_enum.evalue as experience_evalue',
|
|
|
- 'years_enum.ename as experience_ename',
|
|
|
- 'job_recruiting.updated_at'
|
|
|
- )
|
|
|
- ->offset(($data['page'] - 1) * $data['pageSize'])
|
|
|
- ->limit($data['pageSize'])
|
|
|
- ->get()
|
|
|
- ->all();
|
|
|
-
|
|
|
- if (empty($job)) {
|
|
|
- return Result::error("暂无招聘信息", 0);
|
|
|
+ public function getRecruitingList(array $data): array
|
|
|
+ {
|
|
|
+ $user = User::where('id', $data['user_id'])->first();
|
|
|
+ if(empty($user) || ($user['type_id']!= 10000 && $user['type_id']!= 1)){
|
|
|
+ return Result::error("用户不存在", 0);
|
|
|
+ }
|
|
|
+ // 1:个人会员 职场机会
|
|
|
+ if($user['type_id'] == 1){
|
|
|
+ $where['user_id'] = $user['id'];
|
|
|
+ }
|
|
|
+ $recruitingId = JobResume::when($user['type_id'] == 1, function ($query) use ($user) {
|
|
|
+ $query->where('receiver_id', $user['id']);
|
|
|
+ })
|
|
|
+ ->pluck('recruit_id');
|
|
|
+ // return Result::success($recruitingId);
|
|
|
+ $where = [];
|
|
|
+ if(isset($data['salary']) && $data['salary']!=null){
|
|
|
+ $where['job_recruiting.salary'] = $data['salary'];
|
|
|
+ }
|
|
|
+ if(isset($data['experience']) && $data['experience']!=null){
|
|
|
+ $where['job_recruiting.experience'] = $data['experience'];
|
|
|
+ }
|
|
|
+ if(isset($data['business_name']) && $data['business_name']!=null){
|
|
|
+ array_push($where, ['job_company.business_name', 'like', '%' . $data['business_name'] . '%']);
|
|
|
+ }
|
|
|
+ $query = JobRecruiting::whereIn('job_recruiting.id', $recruitingId)
|
|
|
+ ->leftJoin('job_company', 'job_recruiting.id', '=', 'job_company.job_id')
|
|
|
+ ->where($where);
|
|
|
+ // ->count();
|
|
|
+ $count = $query->count();
|
|
|
+ $query = clone $query;
|
|
|
+ $job = $query
|
|
|
+ ->leftJoin('job_enum as income_enum', function ($join) {
|
|
|
+ $join->on('job_recruiting.salary', '=', 'income_enum.evalue')
|
|
|
+ ->where('income_enum.egroup', 'income');
|
|
|
+ })
|
|
|
+ ->leftJoin('job_enum as years_enum', function ($join) {
|
|
|
+ $join->on('job_recruiting.experience', '=', 'years_enum.evalue')
|
|
|
+ ->where('years_enum.egroup', 'years');
|
|
|
+ })
|
|
|
+ // ->where($where)
|
|
|
+ ->orderBy('job_recruiting.updated_at', 'desc')
|
|
|
+ ->select('job_recruiting.id','job_recruiting.title', 'job_company.business_name',
|
|
|
+ 'income_enum.evalue as salary_evalue', 'income_enum.ename as salary_ename',
|
|
|
+ 'years_enum.evalue as experience_evalue', 'years_enum.ename as experience_ename'
|
|
|
+ ,'job_recruiting.updated_at')
|
|
|
+ ->offset(($data['page'] - 1) * $data['pageSize'])
|
|
|
+ ->limit($data['pageSize'])
|
|
|
+ ->get()
|
|
|
+ ->all();
|
|
|
+
|
|
|
+ if (empty($job)) {
|
|
|
+ return Result::error("暂无招聘信息", 0);
|
|
|
+ }
|
|
|
+ $result = [
|
|
|
+ 'row' => $job,
|
|
|
+ 'count' => $count,
|
|
|
+ ];
|
|
|
+ return Result::success($result);
|
|
|
}
|
|
|
- $result = [
|
|
|
- 'row' => $job,
|
|
|
- 'count' => $count,
|
|
|
- ];
|
|
|
- return Result::success($result);
|
|
|
- }
|
|
|
- /*
|
|
|
+ /*
|
|
|
* 获取企业会员-招聘信息列表
|
|
|
* */
|
|
|
public function getRecruitingInfo(array $data): array
|