123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074 |
- <?php
- namespace App\Http\Controllers\Jkq\Person;
- use App\Http\Controllers\Jkq\JkqBaseController;
- use App\Models\Member;
- use App\Models\Resume;
- use App\Services\Common\CategoryService;
- use App\Services\Common\QueueAutoRefreshService;
- use App\Services\HomeService;
- use App\Services\Person\ResumeCredentService;
- use App\Services\Person\ResumeEducationService;
- use App\Services\Person\ResumeEntrustService;
- use App\Services\Person\ResumeLanguageService;
- use App\Services\Person\ResumeImageService;
- use App\Services\Person\ResumeService;
- use App\Services\Person\ResumeTrainService;
- use App\Services\Person\ResumeWorkService;
- use App\Services\Company\JobsService;
- use App\Services\Common\SearchService;
- use App\Services\Person\SubsiteResumeService;
- use App\Services\SubsiteService;
- use App\Validators\PersonValidatorRequest;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Cache;
- use Illuminate\Support\Facades\Storage;
- class ResumeController extends JkqBaseController
- {
- /**
- * @var ResumeService
- */
- protected $resumeService;
- protected $ResumeEducationService;
- protected $ResumeWorkService;
- protected $ResumeTrainService;
- protected $ResumeCredentService;
- protected $ResumeLanguageService;
- protected $homeService;
- protected $categoryService;
- protected $jobsService;
- protected $searchService;
- protected $subsiteService;
- protected $subsiteResumeService;
- protected $resumeEntrustService;
- protected $resumeImageService;
- protected $queueAutoRefreshService;
- /**
- * ResumeController constructor.
- * @param ResumeService $resumeService
- * @param ResumeEducationService $ResumeEducationService
- * @param ResumeWorkService $ResumeWorkService
- * @param ResumeTrainService $ResumeTrainService
- * @param ResumeCredentService $ResumeCredentService
- * @param ResumeLanguageService $ResumeLanguageService
- * @param HomeService $homeService
- * @param CategoryService $categoryService
- * @param JobsService $jobsService
- * @param SearchService $searchService
- * @param subsiteService $subsiteService
- * @param subsiteResumeService $subsiteResumeService
- */
- public function __construct(ResumeService $resumeService, ResumeEducationService $ResumeEducationService, ResumeWorkService $ResumeWorkService, ResumeTrainService $ResumeTrainService, ResumeCredentService $ResumeCredentService, ResumeLanguageService $ResumeLanguageService, HomeService $homeService, CategoryService $categoryService, JobsService $jobsService, SearchService $searchService, SubsiteService $subsiteService, SubsiteResumeService $subsiteResumeService, ResumeEntrustService $resumeEntrustService, QueueAutoRefreshService $queueAutoRefreshService,ResumeImageService $resumeImageService)
- {
- $this->resumeService = $resumeService;
- $this->ResumeEducationService = $ResumeEducationService;
- $this->ResumeWorkService = $ResumeWorkService;
- $this->ResumeTrainService = $ResumeTrainService;
- $this->ResumeCredentService = $ResumeCredentService;
- $this->ResumeLanguageService = $ResumeLanguageService;
- $this->homeService = $homeService;
- $this->categoryService = $categoryService;
- $this->jobsService = $jobsService;
- $this->searchService = $searchService;
- $this->recommend_limit = 12;
- $this->recommend_need_limit = 100;
- $this->subsiteService = $subsiteService;
- $this->subsiteResumeService = $subsiteResumeService;
- $this->resumeEntrustService = $resumeEntrustService;
- $this->queueAutoRefreshService = $queueAutoRefreshService;
- $this->resumeImageService = $resumeImageService;
- }
- /**
- * @des 个人中心
- */
- public function index()
- {
- $res = $this->resumeService->loginValidate(auth('web-member')->user());
- $member = Member::find($res['member']['uid']);
- $member_status=$member['member_status'];
- switch ($member_status){
- case 1:
- $tpl="index1";
- break;
- case 2:
- $tpl="index2";
- break;
- default :
- $tpl="index1";
- break;
- }
- if (Cache::has('recommend_click_jobs_'.get_subsite_id())) {
- Cache::forget('recommend_click_jobs_'.get_subsite_id());
- }
- //推荐职位
- $recommend_jobs = $this->getRecommendJobs($this->recommend_limit);
- $message = $this->resumeService->popPms(auth('web-member')->user());
- return view('jkq.person.index')->with(
- [
- 'resume'=>$res['resume'],
- 'stick'=>$res['stick'],
- 'recommend_jobs'=>$recommend_jobs['jobs'],
- 'match_resume' => $recommend_jobs['match_resume'],
- 'has_resume' => $recommend_jobs['has_resume'],
- 'message'=>$message,
- 'member'=>$res['member']
- ]
- );
- }
- //切换会员工作状态
- public function changeneed(Request $request){
- $uid= $request->uid;
- $change = $request->change;
- if ($change == 2) {
- Member::where('id', $uid)->update(['member_status' => 2]);
- session('visitor.member_status', 2);
- } else {
- Member::where('id', $uid)->update(['member_status' => 1]);
- session('visitor.member_status', 1);
- }
- return redirect(route('jkq.person.index'));
- }
- //获取置顶、点击量高、刷新靠前的职位
- public function getClickJobs($limit)
- {
- $jobs = Cache::get('recommend_click_jobs_'.get_subsite_id());
- if ($jobs === null) {
- $where[] = array('valid','=',1);
- $where[] = array('display','=',1);
- if (config('aix.companyset.comset.show_set.jobs_display')==1) {
- $where[] = array('audit','=',1);
- } else {
- $where[] = array('audit','<>',3);
- }
- $where[] = array('subsite_ids','=',get_subsite_id());
- $order = array('click'=>'desc','stime'=>'desc','refresh_time'=> 'desc');
- $click_jobs = $this->searchService->search('Job', $where, $order, '', $limit);
- $jobs = $click_jobs->items();
- Cache::put('recommend_click_jobs_'.get_subsite_id(), $jobs, 600);
- }
- return $jobs;
- }
- //获取推荐职位
- public function getRecommendJobs($limit = 10)
- {
- $user = $this->getUser();
- $need_limit = $this->recommend_need_limit;
- $click_jobs = $this->getClickJobs($need_limit); //获取置顶、点击量高、刷新靠前的职位
- $recommend_order = $this->jobsService->getRecommendOrder($user); //排序条件
- $resume = array();
- $has_resume = 1;
- if ($user && $user->utype == 2) {
- $recommend_where = $this->jobsService->getRecommendWhere($user);
- if ($recommend_where) {
- //添加30天的时间限制
- $recommend_where['and'][] = ['refresh_time','>=', strtotime(date("Y-m-d", strtotime("-30 day")))];
- $has_resume = 1;
- $recommend_job_lists = $this->searchService->getRecommends($user, 'Job', $recommend_where, $recommend_order, '', $limit);
- $jids = array();
- if ($recommend_job_lists) {
- $jids = $recommend_job_lists->pluck('id')->toArray();
- }
- if ($recommend_job_lists && $recommend_job_lists->total()>=$limit) {
- $list = array_slice($recommend_job_lists->items(), 0, $limit);
- } else {
- if ($click_jobs && $jids) {
- foreach ($click_jobs as $k => $v) {
- if (in_array($v->id, $jids)) {
- unset($click_jobs[$k]);
- }
- }
- }
- $recommend_jobs = $recommend_job_lists?$recommend_job_lists->items():array();
- $recommend_total = $recommend_job_lists?$recommend_job_lists->total():0;
- $need_jobs = array_slice($click_jobs, 0, $limit - $recommend_total);
- $all_jobs = array_merge($recommend_jobs, $need_jobs);
- $list = array_slice($all_jobs, 0, $limit);
- }
- } else {
- //没有可匹配的简历
- $list = null;
- $has_resume = 0;
- }
- } else {
- $list = array_slice($click_jobs, 0, $limit);
- }
- if ($list) {
- $list = $this->jobsService->dealjobFilelds($list);
- }
- return array(
- 'jobs' => $list,
- 'match_resume' => $resume,
- 'has_resume' => $has_resume
- );
- }
- public function popPms()
- {
- $content = $this->resumeService->popPms(auth('web-member')->user());
- if ($content) {
- $html = view('app.person.ajax.pop_pms', ['content'=>$content])->render();
- return $this->sendSuccessResponse(['html'=>$html,'code'=>1]);
- } else {
- return $this->sendSuccessResponse(['html'=>'','code'=>0]);
- }
- }
- 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 ajaxGetInterestJobs()
- {
- $params = request()->all();
- $limit = $this->recommend_limit;
- $need_limit = $this->recommend_need_limit;
- $list = array();
- $page = array_has($params, 'p')?$params['p']:1;
- $has_resume = 1;
- //推荐职位
- if ($params['type'] == 'recommend_jobs') {
- $user = $this->getUser();
- $recommend_order = $this->jobsService->getRecommendOrder($user);
- $recommend_where = $this->jobsService->getRecommendWhere($user);
- if ($recommend_where) {
- $has_resume = 1;
- //添加30天的时间限制
- $recommend_where['and'][] = ['refresh_time','>=', strtotime(date("Y-m-d", strtotime("-30 day")))];
- $recommend_job_lists = $this->searchService->getRecommends($user, 'Job', $recommend_where, $recommend_order, '', $need_limit);
- $jids = $recommend_job_lists->pluck('id')->toArray();
- $next_page = (int)$page + 1;
- if (count($recommend_job_lists->items()) >= $next_page*$limit) {
- $list = array_slice($recommend_job_lists->items(), $page*$limit, $limit);
- } else {
- $click_jobs = $this->getClickJobs($need_limit);
- if ($click_jobs && $jids) {
- foreach ($click_jobs as $k => $v) {
- if (in_array($v->id, $jids)) {
- unset($click_jobs[$k]);
- }
- }
- }
- $recommend_jobs = $recommend_job_lists->items();
- $recommend_total = count($recommend_job_lists->items());
- $need_jobs = array_slice($click_jobs, 0, $need_limit - $recommend_total);
- $all_jobs = array_merge($recommend_jobs, $need_jobs);
- $list = array_slice($all_jobs, $page*$limit, $limit);
- if (!$list) {
- $list = array_slice($all_jobs, 0, $limit);
- $next_page = 1;
- }
- }
- } else {
- $list = [];
- $has_resume = 0;
- $next_page = 1;
- }
- $list = $this->jobsService->dealjobFilelds($list);
- $html = view('jkq.person.ajax.jobs_list', ['content'=>$list, 'has_resume'=>$has_resume])->render();
- return $this->sendSuccessResponse(['html'=>$html,'page'=>$next_page]);
- } else {
- $next_page = 1;
- if ($params['type'] == 'new_jobs') {
- $jobs = $this->getNewJobs($limit, $page);
- } else {
- $jobs = $this->getNearByJobs($params, $limit, $page);
- }
- if ($jobs->isNotEmpty()) {
- $list = $this->jobsService->dealjobFilelds($jobs->items());
- $next_page = (int)$page + 1;
- } else {
- if ($params['type'] == 'new_jobs') {
- $first_jobs = $this->getNewJobs($limit, $next_page);
- } else {
- $first_jobs = $this->getNearByJobs($params, $limit, $next_page);
- }
- if ($first_jobs->isNotEmpty()) {
- $list = $this->jobsService->dealjobFilelds($first_jobs->items());
- $next_page = 2;
- }
- }
- $html = view('jkq.person.ajax.jobs_list', ['content'=>$list, 'has_resume'=>$has_resume])->render();
- return $this->sendSuccessResponse(['html'=>$html,'page'=>$next_page]);
- }
- }
- public function getNearByJobs($params, $limit, $page)
- {
- $where[] = array('valid','=',1);
- $where[] = array('display','=',1);
- if (config('aix.companyset.comset.show_set.jobs_display')==1) {
- $where[] = array('audit','=',1);
- } else {
- $where[] = array('audit','<>',3);
- }
- $where[] = array('subsite_ids','=',get_subsite_id());
- //获取坐标
- $lng = array_has($params, 'lng') ? $params['lng']: '';
- $lat = array_has($params, 'lat') ? $params['lat']: '';
- if ($lng && $lat) {
- $where[] = array('lng', '=', $lng);
- $where[] = array('lat', '=', $lat);
- $where[] = array('range', '=',round(config('aix.system.map.map.map_range'), 2));
- }
- $order = array('click'=>'desc','stime'=>'desc','refresh_time'=> 'desc');
- return $recommend_job_lists = $this->searchService->search('Job', $where, $order, '', $limit, $page);
- }
- public function getNewJobs($limit, $page)
- {
- $where[] = array('valid','=',1);
- $where[] = array('display','=',1);
- if (config('aix.companyset.comset.show_set.jobs_display')==1) {
- $where[] = array('audit','=',1);
- } else {
- $where[] = array('audit','<>',3);
- }
- $where[] = array('subsite_ids','=',get_subsite_id());
- $order = array('refresh_time'=>'desc');
- return $recommend_job_lists = $this->searchService->search('Job', $where, $order, '', $limit, $page);
- }
- public function popPmsRead()
- {
- return $this->resumeService->popPmsRead(request()->id);
- }
- /**
- * @des 签到
- */
- public function signIn()
- {
- $res = $this->resumeService->signIn(auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse($res['info']);
- }
- }
- public function resume()
- {
- $content = $this->resumeService->myResume(auth('web-member')->user());
- return view('jkq.person.resume', ['content'=>$content]);
- }
- public function resumeAjax()
- {
- $content = $this->resumeService->myResumeAjax(auth('web-member')->user());
- return view('jkq.person.ajax.addResume', ['content'=>$content]);
- }
- public function resumeAdd()
- {
- $res = $this->resumeService->loginValidate(auth('web-member')->user());
- $district = $this->categoryService->getDefaultDistrict();
- $subsite = $this->subsiteService->getSubsite(auth('web-member')->user());
- return view('jkq.person.resume_add',
- [
- 'member'=>$res['member'],
- 'resume'=>$res['resume'],
- 'defaultCity'=>$district->defaultCity,
- 'disCity'=>$district->disCity,
- 'disHan'=>$district->disHan,
- 'resumeTitle'=>$res['resumeTitle'],
- 'subsite'=>$subsite,
- ]
- );
- }
- public function resumeCreate(PersonValidatorRequest $request)
- {
- $res = $this->resumeService->resumeCreate($request->except(['add_tag','_token']), auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse(['id'=>$res['info'],'tag'=>$request->add_tag]);
- } else {
- return $this->sendErrorResponse('更新简历失败', '', 400);
- }
- }
- public function resumeCheck()
- {
- return view('jkq.person.resume_check');
- }
- public function resumeUpdate()
- {
- $de_resume = Resume::find(request()->id);
- $back_url = \Illuminate\Support\Facades\URL::previous();
- if(!$de_resume){
- return $this->showMessage('对不起,您只能查看自己的简历!', $back_url, true, '上一页', '3');
- }
- if($de_resume->uid!=auth('web-member')->user()->id){
- return $this->showMessage('对不起,您只能查看自己的简历!', $back_url, true, '上一页', '3');
- }
- $res = $this->resumeService->getResumeById(request()->id, auth('web-member')->user());
- $district = $this->categoryService->getDefaultDistrict();
- $subsiteResume = $this->subsiteResumeService->getSubsiteResumeById(auth('web-member')->user(), request()->id);
- $subsiteAll = $this->subsiteService->getSubsite(auth('web-member')->user());
- $refresh = $this->queueAutoRefreshService->getQueuAutoRefresh(request()->id, auth('web-member')->user()->utype);
- $entrust = $this->resumeEntrustService->getEntrustByResumeId(request()->id);
- return view('jkq.person.resume_update', [
- 'resume'=>$res['resume'],
- 'member'=>$res['member'],
- 'imgs'=>$res['imgs'],
- 'defaultCity'=>$district->defaultCity,
- 'subsiteResume'=>$subsiteResume['sub'],
- 'subsiteAll'=>$subsiteAll,
- 'subId'=>$subsiteResume['subId'],
- 'refresh'=>$refresh,
- 'entrust'=>$entrust
- ]);
- }
- public function updateSubditeResume()
- {
- $resume_id = request()->get('id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->subsiteResumeService->updateSubditeResume($user, request()->all());
- if ($res['code']) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function updateTitle()
- {
- $res = $this->resumeService->updateTitle(request()->title, request()->id,auth('web-member')->user());
- if ($res) {
- return $this->sendSuccessResponse('更新成功');
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function updateHunting()
- {
- $resume_id = request()->get('id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->resumeService->updateHunting(request()->except('_token'), auth('web-member')->user());
- if ($res) {
- return $this->sendSuccessResponse('更新成功');
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function updateSpecialty()
- {
- $resume_id = request()->get('id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->resumeService->updateSpecialty(request()->except('_token'),auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse('更新成功');
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function resumeEducationAdd()
- {
- $res = $this->ResumeEducationService->resumeEducationAdd(request()->all(), auth('web-member')->user());
- if ($res['code']==1) {
- $html = view('jkq.person.ajax.resume_education', ['content'=>$res['info']])->render();
- return $this->sendSuccessResponse($html);
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function resumeEducation()
- {
- $res = $this->ResumeEducationService->getResumeEducationByResumeId(request()->resume_id,auth('web-member')->user());
- return view('jkq.person.ajax.resume_education', ['content'=>$res]);
- }
- public function resumeEducationUpdate()
- {
- $res = $this->ResumeEducationService->resumeUpdate(request()->id,auth('web-member')->user());
- return $this->sendSuccessResponse($res);
- }
- public function resumeEduDelete()
- {
- if (request()->method()=='POST') {
- $res = $this->ResumeEducationService->resumeEduDelete(request()->id,auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse('删除成功');
- } else {
- return $this->sendErrorResponse('删除失败', '', 400);
- }
- } else {
- return view('jkq.person.ajax.resume_delete', ['tpis'=>'删除后将无法恢复,您确定要删除该教育经历吗?']);
- }
- }
- public function resumeWork()
- {
- $res = $this->ResumeWorkService->getResumeWorkByResumeId(request()->resume_id,auth('web-member')->user());
- return view('jkq.person.ajax.resume_work', ['content'=>$res]);
- }
- public function resumeWorkAdd()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->ResumeWorkService->resumeWorkAdd(request()->all(), auth('web-member')->user());
- if ($res['code']==1) {
- $html = view('jkq.person.ajax.resume_work', ['content'=>$res['info']])->render();
- return $this->sendSuccessResponse($html);
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function resumeWorkUpdate()
- {
- $work_id = request()->get('id');
- $user = $this->getUser();
- $this->ResumeWorkService->isOwn($work_id,$user);
- $res = $this->ResumeWorkService->resumeUpdate(request()->id);
- return $this->sendSuccessResponse($res);
- }
- public function resumeWorkDelete()
- {
- if (request()->method()=='POST') {
- $work_id = request()->get('id');
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->ResumeWorkService->isOwn($work_id,$user,$resume_id);
- $res = $this->ResumeWorkService->resumeWorkDelete(request()->id);
- if ($res['code']==1) {
- return $this->sendSuccessResponse('删除成功');
- } else {
- return $this->sendErrorResponse('删除失败', '', 400);
- }
- } else {
- return view('jkq.person.ajax.resume_delete', ['tpis'=>'删除后将无法恢复,您确定要删除该工作经历吗?']);
- }
- }
- public function resumeTrain()
- {
- $res = $this->ResumeTrainService->getResumeTrainByResumeId(request()->resume_id,auth('web-member')->user());
- return view('jkq.person.ajax.resume_train', ['content'=>$res]);
- }
- public function resumeTrainAdd()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->ResumeTrainService->resumeTrainAdd(request()->all(), auth('web-member')->user());
- if ($res['code']==1) {
- $html = view('jkq.person.ajax.resume_train', ['content'=>$res['info']])->render();
- return $this->sendSuccessResponse($html);
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function resumeTrainUpdate()
- {
- $train_id = request()->get('id');
- $user = $this->getUser();
- $this->ResumeTrainService->isOwn($train_id,$user);
- $res = $this->ResumeTrainService->resumeUpdate(request()->id);
- return $this->sendSuccessResponse($res);
- }
- public function resumeTrainDelete()
- {
- if (request()->method()=='POST') {
- $train_id = request()->get('id');
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->ResumeTrainService->isOwn($train_id,$user,$resume_id);
- $res = $this->ResumeTrainService->resumeTrainDelete(request()->id);
- if ($res['code']==1) {
- return $this->sendSuccessResponse('删除成功');
- } else {
- return $this->sendErrorResponse('删除失败', '', 400);
- }
- } else {
- return view('jkq.person.ajax.resume_delete', ['tpis'=>'删除后将无法恢复,您确定要删除该培训经历吗?']);
- }
- }
- public function resumeCredent()
- {
- $res = $this->ResumeCredentService->getResumeCredentByResumeId(request()->resume_id,auth('web-member')->user());
- return view('jkq.person.ajax.resume_credent', ['content'=>$res]);
- }
- public function resumeCredentAdd()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->ResumeCredentService->resumeCredentAdd(request()->all(), auth('web-member')->user());
- if ($res['code']==1) {
- $html = view('jkq.person.ajax.resume_credent', ['content'=>$res['info']])->render();
- return $this->sendSuccessResponse($html);
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function resumeCredentUpdate()
- {
- $train_id = request()->get('id');
- $user = $this->getUser();
- $this->ResumeCredentService->isOwn($train_id,$user);
- $res = $this->ResumeCredentService->resumeUpdate(request()->id);
- return $this->sendSuccessResponse($res);
- }
- public function resumeCredentDelete()
- {
- if (request()->method()=='POST') {
- $train_id = request()->get('id');
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->ResumeCredentService->isOwn($train_id,$user,$resume_id);
- $res = $this->ResumeCredentService->resumeCredentDelete(request()->id);
- if ($res['code']==1) {
- return $this->sendSuccessResponse('删除成功');
- } else {
- return $this->sendErrorResponse('删除失败', '', 400);
- }
- } else {
- return view('jkq.person.ajax.resume_delete', ['tpis'=>'删除后将无法恢复,您确定要删除该证书吗?']);
- }
- }
- public function resumeLanAdd()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->ResumeLanguageService->resumeLanAdd(request()->resume_id);
- return view('jkq.person.ajax.resume_edit_language', ['content'=>$res]);
- }
- public function getLanguageL()
- {
- $res = $this->ResumeLanguageService->getLanguageL(request()->resume_id,auth('web-member')->user());
- return view('jkq.person.ajax.get_language_list', ['content'=>$res]);
- }
- public function saveLanguage()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->ResumeLanguageService->saveLanguage(request()->all(), auth('web-member')->user());
- if ($res['code']==1) {
- $html = view('jkq.person.ajax.get_language_list', ['content'=>$res['info']])->render();
- return $this->sendSuccessResponse($html);
- } else {
- return $this->sendErrorResponse('添加失败', '', 400);
- }
- }
- public function delLanguage()
- {
- $language_id = request()->get('id');
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->ResumeLanguageService->isOwn($language_id,$user,$resume_id);
- $res = $this->ResumeLanguageService->delLanguage(request()->all());
- if ($res['code']==1) {
- return $this->sendSuccessResponse('删除成功');
- } else {
- return $this->sendErrorResponse('删除失败', '', 400);
- }
- }
- public function tagSave()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $res = $this->resumeService->tagSave(request()->all());
- if ($res['code']==1) {
- return $this->sendSuccessResponse('更新成功');
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function resumeCopy()
- {
- $res = $this->resumeService->resumeCopy(request()->id, auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse('创建简历失败', '', 400);
- }
- }
- public function saveBasicInfo()
- {
- $res = $this->resumeService->saveBasicInfo(request()->except('_token'),auth('web-member')->user());
- if ($res) {
- return $this->sendSuccessResponse('更新成功');
- } else {
- return $this->sendErrorResponse('更新失败', '', 400);
- }
- }
- public function refreshResume()
- {
- $res = $this->resumeService->refreshResume(request()->id, auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse($res['info']);
- }
- }
- public function resumeShow()
- {
- $user = $this->getUser();
- $res = $this->resumeService->resumeShow(request()->id,'',$user);
- return view('jkq.person.resume_show', ['content'=>$res,'resume'=>$res['resume'], 'redirect_url'=>url(\Illuminate\Support\Facades\Request::getRequestUri())]);
- }
- public function resumeDoc()
- {
- $res = $this->resumeService->resumeDoc(request()->id);
- if ($res) {
- $html = view('jkq.tpl.word_resume', ['content'=>$res])->render();
- return $this->resumeService->descript($res, $html);
- } else {
- return $this->sendErrorResponse('请选择简历!', '', 400);
- }
- }
- public function delResume()
- {
- $res = $this->resumeService->delResume(request()->id);
- $html = view('jkq.person.ajax.del_resume', ['content'=>$res['data']])->render();
- return json_encode(['code'=>$res['code'],'data'=>$html]);
- }
- public function setDelResume()
- {
- $res = $this->resumeService->setDelResume(request()->id, auth('web-member')->user());
- if ($res) {
- return $this->sendSuccessResponse('删除成功');
- } else {
- return $this->sendErrorResponse('删除失败', '', 400);
- }
- }
- public function setDef()
- {
- $res = $this->resumeService->setDef(request()->id, auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse($res['info'], '', 400);
- }
- }
- public function entrust()
- {
- $res = $this->resumeService->entrust(request()->id, auth('web-member')->user());
- if ($res['code']==0) {
- $html = view('jkq.person.ajax.entrust', ['content'=>$res['data']])->render();
- return json_encode(['code'=>0,'html'=>$html,'data'=>$res['data']['entrust']-time()]);
- } else {
- $html = view('jkq.person.ajax.entruct_cancle', ['content'=>$res['data']])->render();
- return json_encode(['code'=>0,'html'=>$html,'data'=>$res['data']['entrust_end']-time()]);
- }
- }
- public function setEntrust()
- {
- $res = $this->resumeService->setEntrust(request()->id, auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse($res['info'], '', 400);
- }
- }
- public function setEntrustDel()
- {
- $res = $this->resumeService->setEntrustDel(request()->id,auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse($res['info'], '', 400);
- }
- }
- public function tagCn()
- {
- if (request()->method()=='POST') {
- dd(11);
- } else {
- $result = $this->resumeService->tagCn(auth('web-member')->user());
- if ($result['code']==0) {
- return $result;
- } else {
- return view('jkq.person.ajax.resume_tag', $result);
- }
- }
- }
- public function resumeStick()
- {
- if (request()->method()=='POST') {
- dd(22);
- } else {
- $result = $this->resumeService->resumeStick(auth('web-member')->user());
- if ($result['code']==0) {
- return $result;
- } else {
- return view('jkq.person.ajax.resume_stick', $result);
- }
- }
- }
- public function incrementAddSave()
- {
- $result = $this->resumeService->incrementAddSave(request()->all(), auth('web-member')->user());
- if ($result['code']==1) {
- return $this->sendSuccessResponse($result['info']);
- } else {
- return $this->sendErrorResponse($result['info'], '', 400);
- }
- }
- public function incrementStickSave()
- {
- $result = $this->resumeService->incrementStickSave(request()->all(), auth('web-member')->user());
- if ($result['code']==1) {
- return $this->sendSuccessResponse($result['info']);
- } else {
- return $this->sendErrorResponse($result['info'], '', 400);
- }
- }
- public function uploadImages()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $result = $this->resumeService->uploadImages(request()->all(), auth('web-member')->user());
- if ($result['code']==1) {
- return $this->sendSuccessResponse($result['info']);
- } else {
- return $this->sendErrorResponse($result['info']);
- }
- }
- public function uploadFiles()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $result = $this->resumeService->uploadFiles(request()->all());
- if ($result) {
- return $this->sendSuccessResponse('上传成功!');
- } else {
- return $this->sendErrorResponse('上传失败,请重试!');
- }
- }
- public function delFile()
- {
- if (request()->method()=='POST') {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $result = $this->resumeService->delFile(request()->all());
- if ($result) {
- return $this->sendSuccessResponse('删除成功!');
- } else {
- return $this->sendErrorResponse('删除失败,请重试!');
- }
- } else {
- return view('jkq.person.ajax.resume_delete', ['tpis'=>'删除后将无法恢复,您确定要删除该附件简历吗?']);
- }
- }
- public function autoRefresh()
- {
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeService->isOwn($resume_id,$user);
- $result = $this->resumeService->autoRefresh(request()->all(),auth('web-member')->user());
- if ($result['code']==1) {
- return $this->sendSuccessResponse($result['info']);
- } else {
- return $this->sendErrorResponse($result['info']);
- }
- }
- public function del_images()
- {
- if (request()->method()=='POST') {
- $img_id = request()->get('id');
- $resume_id = request()->get('resume_id');
- $user = $this->getUser();
- $this->resumeImageService->isOwn($img_id,$user,$resume_id);
- $result = $this->resumeService->del_images(request()->all());
- if ($result['code']==1) {
- return $this->sendSuccessResponse('ok');
- } else {
- return $this->sendErrorResponse('删除失败!');
- }
- } else {
- return view('jkq.person.ajax.resume_delete', ['tpis'=>'删除后将无法恢复,您确定要删除该条数据吗?']);
- }
- }
- //职位匹配
- public function matchJobs($id)
- {
- $resume = $this->resumeService->getResumeInfo($id);
- if(!$resume){
- return $this->showMessage('您的简历审核未通过/审核中,无法匹配职位', \Illuminate\Support\Facades\URL::previous(), true, '上一页', '3');
- }
- //匹配职位
- $jobs = $this->searchService->searchRecommendJobs(5, $this->getUser(), 'show_page');
- /*
- $where = $this->jobsService->setRecommendJobWhere($resume);
- $order = array('refresh_time'=>'desc');
- $jobs = $this->searchService->search('Job', $where, $order, '', 10);
- */
- $list_items = array();
- if($jobs){
- if ($jobs->total()>0) {
- $list_items = $this->jobsService->dealjobFilelds($jobs->items());
- }
- }
- $return_data = array(
- 'list'=>$jobs,
- 'jobs'=>$list_items
- );
- return view('jkq.person.jobs_match', $return_data);
- }
-
- public function resumeTpl(Request $request)
- {
- $res = $this->resumeService->resumeTpl(auth('web-member')->user(), $request->pid);
- $html = view('jkq.person.ajax.resume_tpl', ['tpl'=>$res['tpl'],'resume_tpl'=>$res['resume_tpl'],'resume_id'=>$request->pid])->render();
- return json_encode(['html'=>$html]);
- }
-
- public function resumeTplUpdate(Request $request)
- {
- $res = $this->resumeService->resumeTplUpdate($request->pid, $request->tpl,auth('web-member')->user());
- if ($res) {
- return $this->sendSuccessResponse('更新成功!');
- } else {
- return $this->sendErrorResponse('更新失败!');
- }
- }
-
- public function incrementTplPoints(Request $request)
- {
- $res = $this->resumeService->incrementTplPoints(auth('web-member')->user(), $request->all());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse($res['info']);
- }
- }
-
- public function incrementTplPay(Request $request)
- {
- $res = $this->resumeService->incrementTplPay(auth('web-member')->user(), $request->all(), $request->route());
-
- if ($res['code']=='wechat') {
- if ($res['type']=='wap') {
- return $res['tradeCode'];
- } else {
- return json_encode(['tradeCode'=>$res['tradeCode'],'tradeNo'=>$res['tradeNo']]);
- }
- } else {
- return $res['tradeCode'];
- }
- }
-
- public function downFile(Request $request)
- {
- $id = $request->id;
- $user = $this->getUser();
- $this->resumeService->isOwn($id,$user);
- $back_url = \Illuminate\Support\Facades\URL::previous();
- if(!$id){
- return $this->showMessage('简历不存在!', $back_url, true, '上一页', '3');
- }
- $resume = Resume::find($id);
- if(Storage::disk('public')->exists($resume->word_resume)){
- return response()->download(Storage::disk('public')->path($resume->word_resume), $resume->word_resume_title);
- }else{
- return $this->showMessage('文件不存在!', $back_url, true, '上一页', '3');
- }
- }
- public function resumeDisplay(Request $request)
- {
- $user = $this->getUser();
- $res = $this->resumeService->resumeDisplay($request->display, $request->id,$user);
- if ($res) {
- return $this->sendSuccessResponse('更新成功!');
- } else {
- return $this->sendErrorResponse('更新失败!');
- }
- }
- public function delRefreshResume(Request $request)
- {
- $user = $this->getUser();
- $res = $this->queueAutoRefreshService->delRefreshResume($request->pid,$user);
- if ($res) {
- return $this->sendSuccessResponse('取消成功!');
- } else {
- return $this->sendErrorResponse('取消失败!');
- }
- }
- public function delEntrustResume(Request $request)
- {
- $res = $this->resumeEntrustService->delEntrustResume($request->pid, $request->resume_id,auth('web-member')->user());
- if ($res['code']==1) {
- return $this->sendSuccessResponse($res['info']);
- } else {
- return $this->sendErrorResponse('取消失败!');
- }
- }
- }
|