| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303 | <?phpnamespace App\Http\Controllers\Mobile\Person;use App\Http\Controllers\Mobile\MobileBaseController;use App\Models\PersonJobsSubscribe;use App\Services\Common\CategoryService;use App\Services\Common\EmailService;use App\Services\Common\PayService;use App\Services\Common\SmsService;use App\Services\Company\CompanyInterviewService;use App\Services\Jobfair\JobfairPersonalJopApplyService;use App\Services\Person\MemberInfoService;use App\Services\Person\MemberPointService;use App\Services\Person\MemberService;use App\Services\Person\PersonFavoriteService;use App\Services\Person\PersonJobsApplyService;use App\Services\Person\PersonJobsSubscribeService;use App\Services\Person\ResumePrivacyService;use App\Services\Person\ResumeService;use Illuminate\Http\Request;use App\Repositories\Jobfair\JobfairCompanyRepository;use App\Repositories\Jobfair\JobfairRepository;use App\Services\Jobfair\JobfairService;class JobfairController extends MobileBaseController{    /**     * @var ResumeService     */    protected $ResumeService;    protected $ResumePrivacyService;    protected $companyInterviewService;    protected $personalJobsApplyService;    protected $memberPointService;    protected $personFavoriteService;    protected $memberInfoService;    protected $memberService;    protected $smsService;    protected $emailService;    protected $payService;    protected $jobfairPersonalJopApplyService;    protected $jobfairCompanyRepository;    protected $jobfairRepository;    protected $jobfairService;    protected $personJobsSubscribeService;    protected $categoryService;    public function __construct(        ResumeService $ResumeService,        ResumePrivacyService $ResumePrivacyService,        CompanyInterviewService $companyInterviewService,        PersonJobsApplyService $personalJobsApplyService,        MemberPointService $memberPointService,        PersonFavoriteService $personFavoriteService,        MemberInfoService $memberInfoService,        MemberService $memberService,        SmsService $smsService,        EmailService $emailService,        PayService $payService,        JobfairPersonalJopApplyService $jobfairPersonalJopApplyService,        JobfairCompanyRepository $jobfairCompanyRepository,        JobfairRepository $jobfairRepository,        JobfairService $jobfairService,        PersonJobsSubscribeService $personJobsSubscribeService,        CategoryService $categoryService    )    {        $this->ResumeService = $ResumeService;        $this->ResumePrivacyService = $ResumePrivacyService;        $this->companyInterviewService = $companyInterviewService;        $this->personalJobsApplyService = $personalJobsApplyService;        $this->memberPointService = $memberPointService;        $this->personFavoriteService = $personFavoriteService;        $this->memberInfoService = $memberInfoService;        $this->memberService = $memberService;        $this->smsService = $smsService;        $this->emailService = $emailService;        $this->payService = $payService;        $this->jobfairPersonalJopApplyService = $jobfairPersonalJopApplyService;        $this->jobfairCompanyRepository = $jobfairCompanyRepository;        $this->jobfairRepository = $jobfairRepository;        $this->jobfairService  = $jobfairService;        $this->personJobsSubscribeService  = $personJobsSubscribeService;        $this->categoryService  = $categoryService;    }    //判断是哪场招聘会    public function jobfairOpen(){        $where = [            ['holddate_start', '<', strtotime("+60 minute")],            ['holddate_end', '>', time()],            ['display', '=', 1],            ['subsite_id', '=', get_subsite_id()],        ];        $allJobfair= $this->jobfairRepository->getOpenJobfair($where);        $oneJobfair = $this->jobfairRepository->getOneOpenJobfair($where);        if(count($allJobfair)>1){            $html = view('mobile.app.person.jobfair.ajax_open_jabfair', ['allJobfair'=>$allJobfair,'oneJobfair'=>$oneJobfair])->render();            $return_data = array('status'=>2, 'html' => $html);            return response()->json($return_data);        }elseif(count($allJobfair) == 1){            $return_data = array('status'=>1,'jobfair_id'=>$allJobfair[0]->id);            return response()->json($return_data);        }else{            $return_data = array('status'=>0,'error'=>'暂无举办中的招聘会');            return response()->json($return_data);        }    }    public function index(Request $request)    {        $jobfair_id = $request->jobfair_id ;        $info = $this->jobfairCompanyRepository->getComCount($jobfair_id);        $where = [            'jobfair_id'=>$jobfair_id,            'audit'=>'1'        ];        $companys = $this->jobfairService->jobfairCompany($where);        $where = [            'jobfair_id'=>$jobfair_id,        ];        $where1=[            'audit'=>1,            'display'=>1        ];        $jobs = $this->jobfairService->jobfairJobs($where,$where1);        $user = auth('web-member')->user();        $where = [            'personal_uid'=>$user->id,            'jobfair_id'=>$jobfair_id,            'is_apply'=>1        ];        $orders = $this->jobfairService->jobfairOrders($where);        $where = [            'personal_uid'=>$user->id,            'jobfair_id'=>$jobfair_id,        ];        $interview = $this->jobfairService->jobfairInterview($where);        if(!$info){            return back()->with(['error'=>'招聘会出错']);        }        return view('mobile.app.person.jobfair.index',['info'=>$info,'companys'=>$companys,'jobs'=>$jobs,'orders'=>$orders,'interview'=>$interview,'jobfair_id'=>$jobfair_id]);    }    public function jobfairCompany(Request $request)    {        $jobfair_id = $request->jobfair_id ;        $page = $request->page ? $request->page : 1;        $limit = 20;        $where = [            'jobfair_id'=>$jobfair_id,            'audit'=>'1'        ];        if($request->ajax()){            $data = $this->jobfairService->jobfairCompany($where,$limit,$page);            if($data->isEmpty()){                return response()->json(['status'=>0]);            }else{                return response()->json(['status'=>1,'data'=>view('mobile.app.person.jobfair.ajax_jobfair_company', ['list_items'=> $data])->render()]);            }        }else{            $mobile_dropload = false;            $data = $this->jobfairService->jobfairCompany($where,$limit,$page);            $list_items = array();            if($data->lastPage() > $data->currentPage()){                $mobile_dropload = true;            }        }        return view('mobile.app.person.jobfair.jobfair_company',['data'=>$data,'mobile_dropload'=>$mobile_dropload,'list_items'=>$list_items]);    }    public function jobfairJobs(Request $request)    {        $jobfair_id = $request->jobfair_id ;        $page = $request->page ? $request->page : 1;        $limit = 20;        $where=[            'jobfair_id'=>$jobfair_id,        ];        $where1=['audit'=>'1', 'display'=>1];        if($request->ajax()){            $data = $this->jobfairService->jobfairJobs($where,$where1,$limit,$page);            if($data->isEmpty()){                return response()->json(['status'=>0]);            }else{                return response()->json(['status'=>1,'data'=>view('mobile.app.person.jobfair.ajax_jobfair_jobs', ['list_items'=> $data])->render()]);            }        }else{            $mobile_dropload = false;            $data = $this->jobfairService->jobfairJobs($where,$where1,$limit,$page);            $list_items = array();            if($data->lastPage() > $data->currentPage()){                $mobile_dropload = true;            }        }        return view('mobile.app.person.jobfair.jobfair_jobs',['data'=>$data,'mobile_dropload'=>$mobile_dropload,'list_items'=>$list_items]);    }    public function jobfairOrder(Request $request)    {        $jobfair_id = $request->jobfair_id ;        $page = $request->page ? $request->page : 1;        $limit = 20;        $user = auth('web-member')->user();        $where = [            'personal_uid'=>$user->id,            'jobfair_id'=>$jobfair_id,            'is_apply'=>1        ];        if($request->ajax()){            $data = $this->jobfairService->jobfairOrders($where,$limit,$page);            if($data->isEmpty()){                return response()->json(['status'=>0]);            }else{                return response()->json(['status'=>1,'data'=>view('mobile.app.person.jobfair.ajax_jobfair_order', ['list_items'=> $data])->render()]);            }        }else{            $mobile_dropload = false;            $data = $this->jobfairService->jobfairOrders($where,$limit,$page);            $list_items = array();            if($data->lastPage() > $data->currentPage()){                $mobile_dropload = true;            }        }        return view('mobile.app.person.jobfair.jobfair_order',['data'=>$data,'mobile_dropload'=>$mobile_dropload,'list_items'=>$list_items]);    }    public function jobfairInterview(Request $request){        $jobfair_id = $request->jobfair_id ;        $user = auth('web-member')->user();        $page = $request->page ? $request->page : 1;        $limit = 20;        $where = [            'personal_uid'=>$user->id,            'jobfair_id'=>$jobfair_id,        ];        if($request->ajax()){            $data = $this->jobfairService->jobfairInterview($where,$limit,$page);            if($data->isEmpty()){                return response()->json(['status'=>0]);            }else{                return response()->json(['status'=>1,'data'=>view('mobile.app.person.jobfair.ajax_jobfair_interview', ['list_items'=> $data])->render()]);            }        }else{            $mobile_dropload = false;            $data = $this->jobfairService->jobfairInterview($where,$limit,$page);            $list_items = array();            if($data->lastPage() > $data->currentPage()){                $mobile_dropload = true;            }        }        return view('mobile.app.person.jobfair.jobfair_interview',['data'=>$data,'mobile_dropload'=>$mobile_dropload,'list_items'=>$list_items]);    }    public function userCode()    {        $res = $this->jobfairService->userCode(auth('web-member')->user());        return view('mobile.app.person.user_code',['wap_title'=>'我的二维码','user_code'=>$res]);    }    public function jobsSubscribe(Request $request)    {        $res = $this->personJobsSubscribeService->getSubscribeByuid(auth('web-member')->user());        $count = $this->personJobsSubscribeService->getSubscribeCount(auth('web-member')->user());        if ($request->ajax()) {            if ($res->lastPage() < $res->currentPage()) {                return response()->json(['status'=>0]);            }            return response()->json([                'status'=>1,                'data'=>view('mobile.app.person.ajax_tpl.ajax_subscribe',                    ['content'=>$res])->render()]);        }        return view('mobile.app.person.jobs_subscribe', ['content'=>$res,'count'=>$count,'wap_title'=>'职位订阅器']);    }    public function jobsSubscribeEdit()    {        $wap_title = '新建订阅器';        if(request()->id){            $wap_title = '修改订阅器';            $back_url = \Illuminate\Support\Facades\URL::previous();            $sub_info = PersonJobsSubscribe::find(request()->id);            if(!$sub_info){                return $this->showMessage('对不起,您只能查看自己的职位订阅器!', $back_url, true, '上一页', '3');            }            if($sub_info->uid!=auth('web-member')->user()->id){                return $this->showMessage('对不起,您只能查看自己的职位订阅器!', $back_url, true, '上一页', '3');            }        }        $res = $this->personFavoriteService->getJobsSubEdit(request()->id);        $district = $this->categoryService->getDefaultDistrict();        return view('mobile.app.person.jobs_subscribe_edit', ['content'=>$res['sub'],'defaultCity'=>$district->defaultCity,'wap_title'=>$wap_title]);    }}
 |