<?php /** * Created by PhpStorm. * User: Administrator * Date: 2019/3/22 * Time: 10:00 */ namespace App\Http\Controllers\Web\Hardware\Pad; use App\Http\Controllers\Web\WebBaseController; use App\Repositories\MemberPointRepository; use App\Repositories\MemberSetmealRepository; use App\Repositories\QueueAutoRefreshRepository; 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\JobsService; use App\Services\Company\ServiceService; use Illuminate\Http\Request; use App\Services\Jobfair\JobfairService; use App\Services\Jobfair\JobfairJobsService; use App\Validators\JobsSaveValidatorRequest; use App\Repositories\Jobfair\JobfairPutJobRepository; class PadJobController extends WebBaseController { /** * @var JobsService */ protected $jobsService; protected $jobsfairPutJobService; protected $categoryService; protected $companyService; protected $memberSetmealRepository; protected $setmealIncrementsService; protected $refreshLogRepository; protected $memberPointRepository; protected $setmealRepository; protected $companyContactsRepository; protected $queueAutoRefreshRepository; protected $serviceService; protected $subsiteService; protected $jobfairService; protected $jobfairJobsService; protected $jobfairPutJobRepository; /** * JobsController constructor. * @param JobsService $jobsService * @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 $subsiteService * @param $jobfairPutJobRepository */ public function __construct(JobsService $jobsService, JobfairPutJobService $jobsfairPutJobService, ServiceService $serviceService, QueueAutoRefreshRepository $queueAutoRefreshRepository, SetmealRepository $setmealRepository,CompanyContactsRepository $companyContactsRepository, MemberPointRepository $memberPointRepository, RefreshLogRepository $refreshLogRepository, CategoryService $categoryService, CompanyService $companyService, MemberSetmealRepository $memberSetmealRepository, SetmealIncrementsService $setmealIncrementsService,JobfairService $jobfairService,JobfairJobsService $jobfairJobsService,JobfairPutJobRepository $jobfairPutJobRepository) { $this->jobsService = $jobsService; $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->jobfairService = $jobfairService; $this->jobfairJobsService = $jobfairJobsService; $this->jobfairPutJobRepository = $jobfairPutJobRepository; } public function jobsList(Request $request) { $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); $jobs = is_null($jobs) ? [] : $jobs; return view('app.hardware.pad.jobs_list', ['jobs' => $jobs]); } public function edidDisplay(Request $request) { return $this->jobsfairPutJobService->displayswitch($request->id,$request->display); } public function jobShow($id){ $job_info = $this->jobfairService->jobfairShowJob($id); return view('app.hardware.pad.jobs_show', ['job_info' => $job_info['jobInfo']]); } public function jobAdd(Request $request){ $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]); $district_cn = get_district_cn($district); return view('app.hardware.pad.jobs_add',['contacts'=>$contacts,'district'=>$district,'district_cn'=>$district_cn]); } public function jobAddSave(JobsSaveValidatorRequest $request) { $user = auth('web-company')->user()->toArray(); return $this->jobsfairPutJobService->jobfairJobsSave($request->all(),$user);; } public function jobEdit(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.jobs_edit', ['job_info' => $job_info,'page'=>$page,'contacts'=>$contacts]); } public function jobEditSave(JobsSaveValidatorRequest $request){ $user = auth('web-company')->user()->toArray(); return $this->jobsfairPutJobService->jobfairPutJobsEdit($request,$user); } }