| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382 | 
							- <?php
 
- /**
 
-  * Created by PhpStorm.
 
-  * User: Administrator
 
-  * Date: 2019/7/31
 
-  * Time: 14:58
 
-  */
 
- namespace App\Http\Controllers\Web\Hardware\Pad;
 
- use App\Http\Controllers\Web\WebBaseController;
 
- use App\Repositories\MemberPointRepository;
 
- use App\Repositories\MemberSetmealRepository;
 
- use App\Repositories\RefreshLogRepository;
 
- use App\Repositories\SetmealRepository;
 
- use App\Repositories\CompanyContactsRepository;
 
- use App\Services\Common\CategoryService;
 
- use App\Services\Jobfair\JobfairPutJobService;
 
- use App\Services\Common\SetmealIncrementsService;
 
- use App\Services\Company\CompanyService;
 
- use App\Services\Company\ServiceService;
 
- use App\Services\Company\JobsService;
 
- use App\Services\Jobfair\JobfairCompanyService;
 
- use Carbon\Carbon;
 
- use Illuminate\Http\Request;
 
- use App\Services\Jobfair\JobfairJobsService;
 
- use App\Services\Jobfair\JobfairPersonalJopApplyService;
 
- use App\Validators\JobsSaveValidatorRequest;
 
- use App\Repositories\Jobfair\JobfairPutJobRepository;
 
- use App\Repositories\Jobfair\JobfairRepository;
 
- use App\Repositories\Jobfair\JobfairPersonalJobsApplyRepository;
 
- use App\Repositories\JobsRepository;
 
- use Illuminate\Support\Facades\Cache;
 
- class RecruitmentController extends WebBaseController
 
- {
 
-     protected $jobsfairPutJobService;
 
-     protected $categoryService;
 
-     protected $companyService;
 
-     protected $memberSetmealRepository;
 
-     protected $setmealIncrementsService;
 
-     protected $refreshLogRepository;
 
-     protected $memberPointRepository;
 
-     protected $setmealRepository;
 
-     protected $companyContactsRepository;
 
-     protected $serviceService;
 
-     protected $subsiteService;
 
-     protected $jobfairJobsService;
 
-     protected $jobfairRepository;
 
-     protected $jobfairPutJobRepository;
 
-     protected $jobfairPersonalJobsApplyRepository;
 
-     protected $jobsRepository;
 
-     protected $jobsService;
 
-     protected $jobfairCompanyService;
 
-     protected $jobfairPersonalJopApplyService;
 
-     /**
 
-      * JobsController constructor.
 
-      * @param JobfairPutJobService $jobsfairPutJob
 
-      * @param CategoryService $categoryService
 
-      * @param CompanyService $companyService
 
-      * @param $memberSetmealRepository
 
-      * @param $setmealIncrementsService
 
-      * @param $refreshLogRepository
 
-      * @param $memberPointRepository
 
-      * @param $setmealRepository
 
-      * @param $companyContactsRepository
 
-      * @param $queueAutoRefreshRepository
 
-      * @param $serviceService
 
-      * @param $jobfairRepository
 
-      * @param $jobfairPutJobRepository
 
-      * @param $jobfairPersonalJobsApplyRepository
 
-      * @param $jobsRepository
 
-      * @param $jobsService
 
-      * @param $jobfairPersonalJopApplyService
 
-      */
 
-     public function __construct(JobfairPutJobService $jobsfairPutJobService, ServiceService $serviceService, SetmealRepository $setmealRepository,CompanyContactsRepository $companyContactsRepository, MemberPointRepository $memberPointRepository, RefreshLogRepository $refreshLogRepository, CategoryService $categoryService, CompanyService $companyService, MemberSetmealRepository $memberSetmealRepository, SetmealIncrementsService $setmealIncrementsService,JobfairJobsService $jobfairJobsService,JobfairRepository $jobfairRepository,JobfairPutJobRepository $jobfairPutJobRepository,JobfairPersonalJobsApplyRepository $jobfairPersonalJobsApplyRepository,JobsRepository $jobsRepository,JobsService $jobsService,JobfairCompanyService $jobfairCompanyService,JobfairPersonalJopApplyService $jobfairPersonalJopApplyService)
 
-     {
 
-         $this->jobsfairPutJobService = $jobsfairPutJobService;
 
-         $this->categoryService = $categoryService;
 
-         $this->companyService = $companyService;
 
-         $this->memberSetmealRepository = $memberSetmealRepository;
 
-         $this->setmealIncrementsService = $setmealIncrementsService;
 
-         $this->refreshLogRepository = $refreshLogRepository;
 
-         $this->memberPointRepository = $memberPointRepository;
 
-         $this->setmealRepository = $setmealRepository;
 
-         $this->setmealRepository = $setmealRepository;
 
-         $this->companyContactsRepository = $companyContactsRepository;
 
-         $this->serviceService = $serviceService;
 
-         $this->jobfairJobsService = $jobfairJobsService;
 
-         $this->jobfairRepository = $jobfairRepository;
 
-         $this->jobfairPutJobRepository = $jobfairPutJobRepository;
 
-         $this->jobfairPersonalJobsApplyRepository = $jobfairPersonalJobsApplyRepository;
 
-         $this->jobsRepository = $jobsRepository;
 
-         $this->jobsService = $jobsService;
 
-         $this->jobfairCompanyService = $jobfairCompanyService;
 
-         $this->jobfairPersonalJopApplyService = $jobfairPersonalJopApplyService;
 
-     }
 
-     public function index()
 
-     {
 
-         return view('app.hardware.pad.recruitment.index',['title'=>'现场招聘']);
 
-     }
 
-     public function jobs()
 
-     {
 
-         return view('app.hardware.pad.recruitment.jobs.index',['title'=>'招聘会职位管理']);
 
-     }
 
-     public function jobsAdd()
 
-     {
 
-         $district = config('aix.system.site_other.site_other.district');
 
-         if($district && substr_count($district,'.') == 1){
 
-             $district .= '.0';
 
-         }elseif ($district && substr_count($district,'.') == 0){
 
-             $district .= '.0.0';
 
-         }
 
-         $user = auth('web-company')->user();
 
-         $contacts = $this->companyContactsRepository->getContacts(['company_id'=>$user->id]);
 
-         return view('app.hardware.pad.recruitment.jobs.add',['title'=>'新增职位','contacts'=>$contacts,'district'=>$district]);
 
-     }
 
-     public function jobsSave(JobsSaveValidatorRequest $request)
 
-     {
 
-         $user = auth('web-company')->user()->toArray();
 
-         return $this->jobsfairPutJobService->jobfairJobsSave($request->all(),$user);
 
-     }
 
-     public function jobsList()
 
-     {
 
-         $jobfair_id = session('floorplan_stands.jobfair_id');
 
-         //在招职位
 
-         $where['jobfair_id'] = [$jobfair_id];
 
-         $user = auth('web-company')->user();
 
-         $where1 = ['position_id'=>session('floorplan_stands.id')];
 
-         $jobs = $this->jobsfairPutJobService->jobfairCompany($where,$user,$where1,10);
 
-         if(request()->ajax())
 
-         {
 
-             if ($jobs->isNotEmpty()) {
 
-                 return response()->json(['status'=>1,'data'=>view('app.hardware.pad.recruitment.jobs.ajax_list', ['jobs'=>$jobs])->render()]);
 
-             }
 
-             return response()->json(['status'=>0]);
 
-         }
 
-         return view('app.hardware.pad.recruitment.jobs.list', ['title'=>'已发布职位','jobs' => $jobs]);
 
-     }
 
-     public function jobsEdit(Request $request)
 
-     {
 
-         $job_info = $this->jobsfairPutJobService->jobfairJobsEdit($request->id);
 
-         $page = $request->page ?? 1;
 
-         if(!$job_info){
 
-             return $this->notFount('参数错误');
 
-         }
 
-         $user = auth('web-company')->user();
 
-         $contacts = $this->companyContactsRepository->getContacts(['company_id'=>$user->id]);
 
-         return view('app.hardware.pad.recruitment.jobs.edit', ['title'=>'编辑职位','job_info' => $job_info,'page'=>$page,'contacts'=>$contacts]);
 
-     }
 
-     public function jobsUpdate(JobsSaveValidatorRequest $request)
 
-     {
 
-         $user = auth('web-company')->user();
 
-         $id = $request->id;
 
-         $this->jobfairJobsService->isOwn($id,$user);
 
-         return  $this->jobsfairPutJobService->jobfairPutJobsEdit($request,$user->toArray());
 
-     }
 
-     public function jobsDelete(Request $request)
 
-     {
 
-         $ids = $request->ids;
 
-         if(!$ids) {
 
-             return response()->json(['status' => 0, 'msg' => '请选择职位']);
 
-         }
 
-         $ids = explode(',',$ids);
 
-         $user = $this->getLoginUser();
 
-         $this->jobsfairPutJobService->isOwn($ids,$user->id);
 
-         if($this->jobfairPutJobRepository->delJobs($ids))
 
-         {
 
-             return response()->json(['status' => 1, 'msg' => '删除成功']);
 
-         }
 
-         return response()->json(['status' => 0, 'msg' => '删除失败']);
 
-     }
 
-     public function jobsDisplay(Request $request)
 
-     {
 
-         $user = $this->getLoginUser();
 
-         $this->jobsfairPutJobService->isOwn($request->id,$user->id);
 
-         return $this->jobsfairPutJobService->displayswitch($request->id,$request->display);
 
-     }
 
-     public function jobsDisplayAll(Request $request)
 
-     {
 
-         $ids = $request->ids;
 
-         if(!$ids) {
 
-             return response()->json(['status' => 0, 'msg' => '请选择职位']);
 
-         }
 
-         $ids = explode(',',$ids);
 
-         $user = $this->getLoginUser();
 
-         $this->jobsfairPutJobService->isOwn($ids,$user->id);
 
-         return $this->jobsfairPutJobService->displayAllSwitch($ids,$request->display);
 
-     }
 
-     //sync 是网络职位
 
-     public function jobsSyncList()
 
-     {
 
-         $job_where = [
 
-             ['company_id', '=', auth('web-company')->user()->id],
 
-             ['valid', '=', 1]
 
-         ];
 
-         if (config('aix.companyset.comset.show_set.jobs_display') == 1) {
 
-             $job_where[] = array('audit', '=', 1);
 
-         } else {
 
-             $job_where[] = array('audit', '<>', 3);
 
-         }
 
-         $list = $this->jobsRepository->getJobsList($job_where);
 
-         $exid = session('floorplan_stands.exid');
 
-         foreach ($list as &$val) {
 
-             $val->education_cn = get_category($val->education) ? get_category($val->education) : '不限';
 
-             $val->experience_cn = get_category($val->experience) ? get_category($val->experience) : '不限';
 
-             if($val->wage == -1)
 
-             {
 
-                 $val->wage_cn = '面议';
 
-             }else{
 
-                 if($val->wage_max) {
 
-                     $val->wage_cn = $val->wage_min .'-'.$val->wage_max.'/月';
 
-                 }else{
 
-                     $val->wage_cn = $val->wage_min . '/月以上';
 
-                 }
 
-             }
 
-             if($val->ygxs == 363) {
 
-                 $val->wage_cn = $val->wage_min .'/小时';
 
-             }
 
-             $val->nature_cn = get_category($val->nature);
 
-             $val['is_sync'] = false;
 
-             if($this->jobfairPutJobRepository->isSync(['jobs_name'=>$val['jobs_name']],['exid'=>$exid])) {
 
-                 $val['is_sync'] = true;
 
-             }
 
-         }
 
-         if(request()->ajax())
 
-         {
 
-             if ($list->isNotEmpty()) {
 
-                 return response()->json(['status'=>1,'data'=>view('app.hardware.pad.recruitment.jobs.ajax_sync_list',['list'=>$list])->render()]);
 
-             }
 
-             return response()->json(['status'=>0]);
 
-         }
 
-         $res['title']= '网络职位';
 
-         $res['list']= $list;
 
-         return view('app.hardware.pad.recruitment.jobs.sync',$res);
 
-     }
 
-     public function jobsSync(Request $request)
 
-     {
 
-         if(!is_array($request->jobs_id)) {
 
-             $request->jobs_id = explode(',',$request->jobs_id);
 
-         }
 
-         $user = auth('web-company')->user();
 
-         $this->jobsService->isOwn( $request->jobs_id,$user);
 
-         $this->jobfairCompanyService->isOwn($request->exid, $user);
 
-         return $this->jobfairJobsService->jobsToJobfairPad($request,$user->toArray());
 
-     }
 
- //    public function jobsSyncEdit(Request $request)
 
- //    {
 
- //        $user = auth('web-company')->user();
 
- //        $job_info = $this->jobfairJobsService->jobfairJobsEdit($request->id,$user);
 
- //        if(!$job_info){
 
- //            return $this->notFount('参数错误');
 
- //        }
 
- //        $job_info['page'] = $request->page ?? 1;
 
- //        $job_info['title'] = '编辑职位库职位';
 
- //        return view('app.hardware.pad.recruitment.jobs.sync_edit',$job_info);
 
- //    }
 
- //
 
- //
 
- //
 
- //    public function jobsSyncDelete(Request $request)
 
- //    {
 
- //        return $this->jobfairJobsService->jobfairJobsDel($request);
 
- //    }
 
-     public function appointment(Request $request)
 
-     {
 
-         $user = auth('web-company')->user();
 
-         $status = $request->input('status','');
 
-         $where = [
 
-             'company_id'=>$user->id,
 
-             'jobfair_id'=>session('floorplan_stands.jobfair_id'),
 
-             'type'=>1,
 
-             'is_apply'=>1,
 
-         ];
 
-         $jobfair = $this->jobfairRepository->find(session('floorplan_stands.jobfair_id'));
 
-         $holddate_start = date('Y-m-d H:i:s',$jobfair->holddate_start);
 
-         if($status == 1){
 
-             $where[] = ['created_at','<',$holddate_start];
 
-         }elseif($status == 2){
 
-             $where[] = ['created_at','>=',$holddate_start];
 
-         }
 
-         $result = $this->jobfairPersonalJobsApplyRepository->padApplyJobs($where,10);
 
-         foreach($result as &$value)
 
-         {
 
-             //1.照片为空
 
-             //2.照片主动不显示
 
-             //3.照片审核不通过
 
-             //4.先审核后显示:照片不是审核通过的(不等于1)
 
-             $avatar_default = public_data_path('/data/upload/resource/no_photo_female.png');
 
-             if ($value->resumes->memberInfos->sex == 1) {
 
-                 $avatar_default = public_data_path('/data/upload/resource/no_photo_male.png');
 
-             }
 
-             if ($value->resumes->memberInfos->images == '' || $value->resumes->memberInfos->display_images == 2 || $value->resumes->memberInfos->photo_audit == 0 || (config('aix.personal_set.per_set.show_set.resume_img_display') == 1 && $value->resumes->memberInfos->photo_audit != 2)) {
 
-                 $value->resumes->photosrc = $avatar_default;    //不显示
 
-                 $value->resumes->photosrc_show = false;
 
-             } else {
 
-                 $value->resumes->photosrc = upload_asset($value->resumes->memberInfos->images);  //显示
 
-                 $value->resumes->photosrc_show = true;
 
-             }
 
-             if($value->created_at < $holddate_start)
 
-             {
 
-                 $value->is_network =true;
 
-             }else {
 
-                 $value->is_network =false;
 
-             }
 
-         }
 
-         $params = array('status'=>$status);
 
-         if($request->ajax())
 
-         {
 
-             if ($result->isNotEmpty()) {
 
-                 return response()->json(['status'=>1,'data'=>view('app.hardware.pad.recruitment.ajax_appointment_list', ['result'=>$result])->render()]);
 
-             }
 
-             return response()->json(['status'=>0]);
 
-         }
 
-         return view('app.hardware.pad.recruitment.appointment',['title'=>'预约管理','result' => $result,'params'=>$params]);
 
-     }
 
-     public function appointmentDelete(Request $request)
 
-     {
 
-         if(!$request->id)
 
-         {
 
-             return response()->json(['status' => 0, 'msg' => '请选择预约']);
 
-         }
 
-         $user = $this->getLoginUser();
 
-         $this->jobfairPersonalJopApplyService->isComOwn($request->id,$user);
 
-         if($this->jobfairPersonalJobsApplyRepository->delete(['id'=>$request->id]))
 
-         {
 
-             return response()->json(['status' => 1, 'msg' => '删除成功']);
 
-         }
 
-         return response()->json(['status' => 0, 'msg' => '删除失败']);
 
-     }
 
-     public function manage()
 
-     {
 
-         $user = auth('web-company')->user();
 
-         $view = Cache::get('jobfair-'.$user->id);
 
-         return view('app.hardware.pad.recruitment.manage',['title'=>'展示模板','view'=>$view]);
 
-     }
 
-     public function manageSetCache(Request $request)
 
-     {
 
-         $id = $request->input('id','');
 
-         if(!$id)
 
-         {
 
-             return response()->json(['status' => 0, 'msg' => '请选择模板']);
 
-         }
 
-         $user = auth('web-company')->user();
 
-         $jobfair = $this->jobfairRepository->find(session('floorplan_stands.jobfair_id'));
 
-         $holddate_end = date('Y-m-d H:i:s',$jobfair->holddate_end);
 
-         $time = Carbon::parse($holddate_end);
 
-         Cache::put('jobfair-'.$user['id'], $id,$time);
 
-         if(Cache::get('jobfair-'.$user['id'])){
 
-             Cache::put(session('floorplan_stands.jobfair_id').'-'.$user['id'], time(),120);
 
-             return response()->json(['status' => 1, 'msg' => '设置成功,请刷新']);
 
-         }
 
-         return response()->json(['status' => 0, 'msg' => '设置失败,请重新设置']);
 
-     }
 
-     public function refresh()
 
-     {
 
-         $user = auth('web-company')->user();
 
-         Cache::put(session('floorplan_stands.jobfair_id').'-'.$user['id'], time(),120);
 
-         if(Cache::get(session('floorplan_stands.jobfair_id').'-'.$user['id'])){
 
-             return response()->json(['status' => 1, 'msg' => '刷新成功']);
 
-         }
 
-         return response()->json(['status' => 0, 'msg' => '刷新失败']);
 
-     }
 
- }
 
 
  |