|
@@ -2654,25 +2654,28 @@ class NewsService implements NewsServiceInterface
|
|
|
* */
|
|
|
public function getWebsiteJobList(array $data): array
|
|
|
{
|
|
|
- $where = [];
|
|
|
- $web = Website::where('id', $data['website_id'])->first(['id', 'website_name']);
|
|
|
- if (empty($web)) {
|
|
|
+ $recruit_where = [];
|
|
|
+ $hunt_where = [];
|
|
|
+ $web = Website::where('id', $data['website_id'])->first(['id','website_name']);
|
|
|
+ if(empty($web)){
|
|
|
return Result::error("此网站不存在", 0);
|
|
|
}
|
|
|
$website_id['website_id'] = $data['website_id'];
|
|
|
- if (isset($data['hy_id']) && !empty($data['hy_id'])) {
|
|
|
- array_push($where, ['hy_id', $data['hy_id']]);
|
|
|
- }
|
|
|
- if (isset($data['zw_id']) && !empty($data['zw_id'])) {
|
|
|
- array_push($where, ['zw_id', $data['zw_id']]);
|
|
|
- }
|
|
|
- if (isset($data['jtzw_id']) && !empty($data['jtzw_id'])) {
|
|
|
- array_push($where, ['jtzw_id', $data['jtzw_id']]);
|
|
|
- }
|
|
|
- if ((isset($data['type']) && $data['type'] == 1) || !isset($data['type'])) {
|
|
|
+
|
|
|
+
|
|
|
+ if((isset($data['type']) && $data['type'] == 1) || !isset($data['type'])){
|
|
|
+ if(isset($data['zw_id']) && !empty($data['zw_id'])){
|
|
|
+ array_push($recruit_where, ['zw_id',$data['zw_id']]);
|
|
|
+ }
|
|
|
+ if(isset($data['jtzw_id']) &&!empty($data['jtzw_id'])){
|
|
|
+ array_push($recruit_where, ['jtzw_id',$data['jtzw_id']]);
|
|
|
+ }
|
|
|
+ if(isset($data['hy_id']) && !empty($data['hy_id'])){
|
|
|
+ array_push($recruit_where, ['hy_id',$data['hy_id']]);
|
|
|
+ }
|
|
|
$query = JobRecruiting::where('job_recruiting.status', 1)
|
|
|
->where('job_recruiting.website_id', $data['website_id'])
|
|
|
- ->where($where)
|
|
|
+ ->where($recruit_where)
|
|
|
->when(isset($data['city_id']) &&!empty($data['city_id']), function ($query) use ($data) {
|
|
|
$query->where(function($q) use ($data) {
|
|
|
$q->WhereRaw("JSON_CONTAINS(job_recruiting.city_arr_id, '". intval($data['city_id']). "') = 1");
|
|
@@ -2700,22 +2703,31 @@ class NewsService implements NewsServiceInterface
|
|
|
$JobRecruiting = $this->processJob($JobRecruiting, $website_id);
|
|
|
}
|
|
|
}
|
|
|
- if ((isset($data['type']) && $data['type'] == 2) || !isset($data['type'])) {
|
|
|
+ if((isset($data['type']) && $data['type'] == 2) || !isset($data['type'])){
|
|
|
+ if(isset($data['zw_id']) && !empty($data['zw_id'])){
|
|
|
+ array_push($hunt_where, ['job',$data['zw_id']]);
|
|
|
+ }
|
|
|
+ if(isset($data['jtzw_id']) &&!empty($data['jtzw_id'])){
|
|
|
+ array_push($hunt_where, ['job_name_get',$data['jtzw_id']]);
|
|
|
+ }
|
|
|
+ if(isset($data['hy_id']) && !empty($data['hy_id'])){
|
|
|
+ array_push($hunt_where, ['industry',$data['hy_id']]);
|
|
|
+ }
|
|
|
$query = JobHunting::where('status', 2)
|
|
|
- ->where('job_hunting.website_id', $data['website_id'])
|
|
|
- ->where($where)
|
|
|
- ->when(isset($data['city_id']) && !empty($data['city_id']), function ($query) use ($data) {
|
|
|
- $query->where(function ($q) use ($data) {
|
|
|
- $q->WhereRaw("JSON_CONTAINS(job_hunting.city_arr_id, '" . intval($data['city_id']) . "') = 1");
|
|
|
- });
|
|
|
- })
|
|
|
- ->when(isset($data['catid_id']) && !empty($data['catid_id']), function ($query) use ($data) {
|
|
|
- $query->where(function ($q) use ($data) {
|
|
|
- $q->WhereRaw("JSON_CONTAINS(job_hunting.cat_arr_id, '" . intval($data['catid_id']) . "') = 1");
|
|
|
- });
|
|
|
- })
|
|
|
- ->select('id', 'sexy', 'experience', 'origin', 'industry', 'name', 'job', 'job_name_get', 'city_arr_id', 'cat_arr_id', 'created_at', 'updated_at')
|
|
|
- ->orderBy('updated_at', 'desc');
|
|
|
+ ->where('job_hunting.website_id', $data['website_id'])
|
|
|
+ ->where($hunt_where)
|
|
|
+ ->when(isset($data['city_id']) &&!empty($data['city_id']), function ($query) use ($data) {
|
|
|
+ $query->where(function($q) use ($data) {
|
|
|
+ $q->WhereRaw("JSON_CONTAINS(job_hunting.city_arr_id, '". intval($data['city_id']). "') = 1");
|
|
|
+ });
|
|
|
+ })
|
|
|
+ ->when(isset($data['catid_id']) &&!empty($data['catid_id']), function ($query) use ($data) {
|
|
|
+ $query->where(function($q) use ($data) {
|
|
|
+ $q->WhereRaw("JSON_CONTAINS(job_hunting.cat_arr_id, '". intval($data['catid_id']). "') = 1");
|
|
|
+ });
|
|
|
+ })
|
|
|
+ ->select('id','sexy','experience','origin','industry','name','job','job_name_get','city_arr_id','cat_arr_id','created_at','updated_at')
|
|
|
+ ->orderBy('updated_at', 'desc');
|
|
|
$hunt_count = $query->count();
|
|
|
$query = clone $query;
|
|
|
$JobHunting = $query
|