<?php
namespace App\Http\Controllers\Mobile\Content;
use App\Http\Controllers\Mobile\MobileBaseController;
use App\Services\Company\JobsService;
use Illuminate\Http\Request;
use App\Exceptions\ResponseException;
use App\Services\Company\CompanyService;
use App\Validators\Content\ReportValidatorRequest;
class CompanyController extends MobileBaseController
{
protected $jobsService;
protected $companyService;
/**
* JobsController constructor.
* @param $jobsService
* @param $companyService
*/
public function __construct(JobsService $jobsService, CompanyService $companyService)
{
$this->jobsService = $jobsService;
$this->companyService = $companyService;
}
public function companyShow(Request $request)
{
//获取企业信息
$company_id = $request->input('id');
$company_info = $this->companyService->getCompanyInfo(array(array('id','=',$company_id)));
$this->putSeoData('company', $company_info);
//在招职位
$jobs_where = array(
array('company_id','=',$company_info->id),
array('valid','=',1),
array('display','=',1)
);
$jobs_display = config('aix.companyset.comset.show_set.jobs_display');
if ($jobs_display == 1) {
$jobs_where[] = array('audit','=','1');
} else {
$jobs_where[] = array('audit','<>','3');
}
$jobs = $this->jobsService->getOtherJobs($jobs_where);
//看过该公司的人还看过(获取相同行业的企业)
$company_where = array(
'trade' => $company_info->trade,
'except_id' =>$company_info->id
);
//$other_companys = $this->companyService->getOtherCompanies($company_where, 5);
$return_data = array(
'info'=>$company_info,
'jobs'=>$jobs,
'user'=> $this->getUser(),
//'other_companys'=>$other_companys
);
//$tpl = $company_info->tpl;
return view('mobile.app.content.jobs.comshow', $return_data);
}
public function getUser()
{
$user = array();
if (auth('web-member')->check()) {
$user = auth('web-member')->user();
} elseif (auth('web-company')->check()) {
$user = auth('web-company')->user();
}
return $user;
}
//关注企业
public function companyFocus(Request $request)
{
$company_id = $request->input('company_id');
if (!$company_id) {
throw new ResponseException('请选择要关注的企业!');
}
$rst = $this->companyService->focusCompany($company_id, auth('web-member')->user()->id);
return response()->json($rst);
}
//企业访客统计
public function addStatistics(Request $request)
{
$company_id = $request->input('company_id');
$rst = $this->companyService->addStatistics($company_id, 0, $this->getUser(), 0, 3);
}
//在招职位页面
public function jobs(Request $request)
{
//获取企业信息
$company_id = $request->input('id');
$company_info = $this->companyService->getCompanyInfo(array(array('id','=',$company_id)));
$this->putSeoData('company', $company_info);
//在招职位
$jobs_where = array(
array('company_id','=',$company_info->id),
array('valid','=',1),
array('display','=',1)
);
$jobs_display = config('aix.companyset.comset.show_set.jobs_display');
if ($jobs_display == 1) {
$jobs_where[] = array('audit','=','1');
} else {
$jobs_where[] = array('audit','<>','3');
}
$jobs = $this->jobsService->getOtherJobs($jobs_where);
//看过该公司的人还看过(获取相同行业的企业)
$company_where = array(
'trade' => $company_info->trade,
'except_id' =>$company_info->id
);
$other_companys = $this->companyService->getOtherCompanies($company_where, 5);
$return_data = array(
'info'=>$company_info,
'jobs'=>$jobs,
'other_companys'=>$other_companys
);
$tpl = $company_info->tpl;
return view('app.common.tpl_company.'.$tpl.'.company_jobs', $return_data);
}
}