jobfairoutRepository = $jobfairoutRepository; $this->jobfairoutCompanyRepository = $jobfairoutCompanyRepository; $this->jobfairoutPutJobRepository = $jobfairoutPutJobRepository; $this->memberSetmealRepository = $memberSetmealRepository; $this->memberPointRepository = $memberPointRepository; $this->jobfairJobRepository = $jobfairJobRepository; $this->jobfairJobsContactRepository = $jobfairJobsContactRepository; $this->memberLogRepository = $memberLogRepository; } public function jobfairoutPutJobsList($map,$map1) { $page = 10; $list = $this->jobfairoutPutJobRepository->jobfairCompanyJob($map,$map1, $page); return [ 'list' => $list ]; } public function addData($add_array,$exid,$jobfair_id) { $jobsInfo = $this->jobfairJobRepository->findWhereIn('id', $add_array)->toArray(); foreach ($jobsInfo as $val) { $insert_data = []; $insert_data['exid'] = $exid; $insert_data['jobfair_id'] = $jobfair_id; $insert_data['job_id'] = $val['id']; $insert_data['jobs_name'] = $val['jobs_name']; $insert_data['company_id'] = $val['company_id']; $insert_data['company_name'] = $val['company_name']; $insert_data['company_audit'] = $val['company_audit']; $insert_data['stick'] = $val['stick']; $insert_data['nature'] = $val['nature']; $insert_data['nature_cn'] = $val['nature_cn']; $insert_data['sex'] = $val['sex']; $insert_data['sex_cn'] = $val['sex_cn']; $insert_data['age'] = $val['age']; $insert_data['amount'] = $val['amount']; $insert_data['topclass'] = $val['topclass']; $insert_data['category'] = $val['category']; $insert_data['subclass'] = $val['subclass']; $insert_data['category_cn'] = $val['category_cn']; $insert_data['trade'] = $val['trade']; $insert_data['trade_cn'] = $val['trade_cn']; $insert_data['scale'] = $val['scale']; $insert_data['scale_cn'] = $val['scale_cn']; $insert_data['district'] = $val['district']; $insert_data['district_cn'] = $val['district_cn']; $insert_data['tag'] = $val['tag']; $insert_data['tag_cn'] = $val['tag_cn']; $insert_data['education'] = $val['education']; $insert_data['education_cn'] = $val['education_cn']; $insert_data['experience'] = $val['experience']; $insert_data['experience_cn'] = $val['experience_cn']; $insert_data['wage'] = $val['wage']; $insert_data['wage_min'] = $val['wage_min']; $insert_data['wage_max'] = $val['wage_max']; $insert_data['wage_cn'] = $val['wage_cn']; $insert_data['jobs_content'] = $val['jobs_content']; $insert_data['audit'] = $val['audit']; $insert_data['display'] = $val['display']; $insert_data['click'] = $val['click']; $insert_data['robot'] = $val['robot']; $insert_data['map_x'] = $val['map_x']; $insert_data['map_y'] = $val['map_y']; $insert_data['map_zoom'] = $val['map_zoom']; $insert_data['add_mode'] = $val['add_mode']; $insert_data['is_entrust'] = $val['is_entrust']; $insert_data['department'] = $val['department']; $insert_data['major'] = $val['major']; $insert_data['major_cn'] = $val['major_cn']; $insert_data['zcid'] = $val['zcid']; $insert_data['zc_cn'] = $val['zc_cn']; $insert_data['zc_name'] = $val['zc_name']; if (!$inser_id = $this->jobfairoutPutJobRepository->create($insert_data)) { throw new \Exception($val['jobs_name'] . '添加失败'); } } } /**招聘会参展职位修改 * @param $data * @param $user * @return \Illuminate\Http\JsonResponse * @throws \ErrorException * @throws \Prettus\Validator\Exceptions\ValidatorException */ public function jobfairPutJobsSave($data, $user) { $id = $data['id']; $message = '招聘会职位修改成功!'; $comArr = ['id','companyname','audit','trade','scale','map_x','map_y','map_zoom']; $contact = ['mobile','email','qq','landline_tel','address','contact','contact_show','email_show','landline_tel_show','telephone_show']; $data_job = []; $data_contact = []; if ($data['basis_contact']) { foreach ($contact as $key => $val) { $data_contact[$val] = $user->$val; } } else { $data_contact['contact'] = $data['contact']; $data_contact['mobile'] = $data['telephone']; $data_contact['email'] = $data['email']; $data_contact['landline_tel'] = $data['landline_tel']; $data_contact['address'] = $data['address']; $data_contact['landline_tel_show'] = $data['landline_tel_show']; $data_contact['contact_show'] = $data['contact_show']; $data_contact['email_show'] = $data['email_show']; $data_contact['telephone_show'] = $data['telephone_show']; } foreach ($comArr as $key => $val) { if ($val == "id") { $data_job['company_id'] = $user->id; } elseif ($val == 'companyname') { $data_job['company_name'] = $user->companyname; } elseif ($val == 'audit') { $data_job['company_audit'] = $user->audit; } else { $data_job[$val] = $user->$val; } } $jobArr = ['nature','sex','age','amount','district','tag','education','experience','wage','wage_min','wage_max','jobs_content','major']; foreach ($jobArr as $key => $val) { $data_job[$val] = $data[$val]; } switch ($data_job['sex']) { case 0: $data_job['sex_cn']='不限'; break; case 1: $data_job['sex_cn']='男'; break; case 2: $data_job['sex_cn']='女'; break; } if ($data['wage']==-1) { $data_job['wage'] = -1; $data_job['wage_min']=0; $data_job['wage_max']=0; $data_job['wage_cn'] ='面议'; } else { if (intval($data_job['wage'])!=0) { $wage = explode('~', format_wage(get_category($data_job['wage']))); $data_job['wage_max'] = 0; if (isset($wage[1])) { $data_job['wage_max'] =intval($wage[1]); } $data_job['wage_min'] =intval($wage[0]); $data_job['wage_cn'] =get_category($data_job['wage']); } else { $data_job['wage_min']=$data['wage_min']; $data_job['wage_max']=$data['wage_max']; $data_job['wage_cn'] =$data['wage_min'].'~'.$data['wage_max'].'/月'; } } $jobcategory = explode('.', $data['jobcategory']); $data_job['topclass'] =$jobcategory[0]; $data_job['category'] =$jobcategory[1]; $data_job['subclass'] =$jobcategory[2]; $data_job['category_cn'] =get_job_category_cn($data['jobcategory']); unset($data['jobcategory']); $data_job['trade_cn'] =get_category($data_job['trade']); $data_job['nature_cn'] =get_category($data_job['nature']); $data_job['scale_cn'] =get_category($data_job['scale']); $data_job['district'] = getDistrict($data_job['district']); $data_job['district_cn'] =get_district_cn($data_job['district']); $data_job['tag_cn'] =get_tag_cn($data_job['tag']); $data_job['education_cn'] =get_category($data_job['education']); $data_job['experience_cn'] =get_category($data_job['experience']); // $data_job['zc_cn'] =get_category($data_job['zcid']); $data_job['age'] =implode('-', $data['age']); $data_job['jobs_name'] = $data['jobs_name']; $data_job['audit'] = 2; DB::beginTransaction(); try { if ($id) { if (!$this->jobfairJobRepository->update($data_job, $id)) { throw new Exception('修改招聘会职位失败'); } if (!$this->jobfairJobsContactRepository->update($data_contact, $id)) { throw new Exception('修改联系方式失败'); } $this->memberLogRepository->createLog($user, 1037, [$id]); } DB::commit(); return response()->json(['status' => 1, 'msg' => $message]); } catch (Exception $e) { DB::rollback(); return response()->json(['status' => 0, 'msg' => $e->getMessage()]); } } public function jobfairPutJobsDel($id) { DB::beginTransaction(); try { if (!$this->jobfairoutPutJobRepository->delJobs($id)) { throw new Exception('职位删除失败'); } DB::commit(); } catch ( \Exception $e) { DB::rollback(); return response()->json(['status' => 0, 'msg' => $e->getMessage()]); } return response()->json(['status' => 1, 'msg' => " 参展职位删除成功!"]); } public function isOwn($ids,$company_id) { $ids = is_array($ids)?$ids:explode(',',$ids); $putJobs = $this->jobfairoutPutJobRepository->getPluck(['company_id'=>$company_id],'id')->toArray(); if(array_diff($ids,$putJobs)) { throw new ResponseException('抱歉,您只能操作自己的招聘会职位!'); } } }