<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/3/21
* Time: 10:10
*/
namespace App\Http\Controllers\Web\Hardware\Tv;
use App\Http\Controllers\Web\WebBaseController;
use App\Services\Company\JobsService;
use App\Services\Company\CompanyService;
use App\Services\Jobfair\JobfairPutJobService;
use App\Repositories\Jobfair\JobfairFloorplanStandRepository;
use App\Repositories\Jobfair\JobfairCompanyRepository;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Cache;
class TvController extends WebBaseController
{
protected $jobsfairPutJobService;
protected $jobsService;
protected $companyService;
protected $jobfairCompanyRepository;
protected $jobfairFloorplanStandRepository;
/**
* JobsController constructor.
* @param $jobsService
* @param $companyService
* @param $jobsfairPutJobService
*/
public function __construct(
JobsService $jobsService,
CompanyService $companyService,
JobfairPutJobService $jobsfairPutJobService,
JobfairFloorplanStandRepository $jobfairFloorplanStandRepository,
JobfairCompanyRepository $jobfairCompanyRepository)
{
$this->jobsService = $jobsService;
$this->companyService = $companyService;
$this->jobsfairPutJobService = $jobsfairPutJobService;
$this->jobfairFloorplanStandRepository = $jobfairFloorplanStandRepository;
$this->jobfairCompanyRepository = $jobfairCompanyRepository;
}
public function index(Request $request)
{
$res = $this->jobfairFloorplanStandRepository->getOpenJobfair(['equipment_id'=>$request->exid]);
if($res){
if($res->jobfair_company->type != 0){
return redirect('hardware/tv/show?company_id='.$res->jobfair_company->company_id.'&jobfair_id='.$res->jobfair_id.'&position_id='.$res->id.'&position='.$res->name);
}else{
return view('app.hardware.tv.index',['exid'=>$request->exid,'res'=> $res,'has_jobfair'=>1]);
}
}
$res = $this->jobfairFloorplanStandRepository->getOne(['equipment_id'=>$request->exid]);
return view('app.hardware.tv.index',['exid'=>$request->exid,'res'=> $res,'has_jobfair'=>0]);
}
public function isLogin(Request $request){
$res = $this->jobfairFloorplanStandRepository->getOpenJobfair(['equipment_id'=>$request->exid]);
if($res && $res->jobfair_company->type != 0){
return $this->sendSuccessResponse(['status'=>1,'msg'=>"登陆成功,跳转中...",'company_id'=>$res->jobfair_company->company_id,'jobfair_id'=>$res->jobfair_id,'position_id'=>$res->id,'position'=>$res->name]);
}
return $this->sendSuccessResponse(['status'=>0, 'msg'=>'企业未登录']);
}
public function isChange(Request $request){
if($request->type == 'pad'){
$value = Cache::pull($request->jobfair_id.'-'.$request->company_id);
}else{
$value = Cache::get($request->jobfair_id.'-'.$request->company_id);
}
if(!$value){
return $this->sendSuccessResponse(['status'=>0, 'msg'=>'无职位刷新']);
}
return $this->sendSuccessResponse(['status'=>1,'msg'=>"有职位刷新..."]);
}
public function show(Request $request)
{
//获取企业信息
$jobfair_id = $request->jobfair_id;
$company_id = $request->company_id;
$company_info = $this->companyService->getCompInfo($company_id);
//在招职位
$where = array(
array('company_id','=',$company_info->id),
array('jobfair_id','=',$jobfair_id),
array('display','=',1),
array('audit','=',1)
);
$where1 = ['position_id'=>$request->position_id];
$request->id = $company_id;
$jobs = $this->jobsfairPutJobService->jobfairCompany($where,$request,$where1);
return view('app.hardware.tv.show',[
'company_info'=>$company_info,
'jobs' =>$jobs,
'position' => $request->position,
'jobfair_id' => $jobfair_id,
]);
}
}