123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472 |
- <?php
- namespace App\Console\Commands\Transfer;
- use App\Models\Jobfair\JobfairFloorplan;
- use App\Transfer\Jobfair;
- use App\Transfer\JobfairJob;
- use App\Transfer\JobfairJobContact;
- use App\Transfer\JobfairBlackList;
- use App\Transfer\JobfairYuyue;
- use App\Transfer\JobfairExhibitors;
- use App\Transfer\JobfairPutJob;
- use App\Transfer\Category;
- use Illuminate\Console\Command;
- use Illuminate\Support\Facades\DB;
- use Illuminate\Support\Facades\Log;
- class TransJobfair extends Command
- {
- /**
- * The name and signature of the console command.
- *
- * @var string
- */
- protected $signature = 'aix:transfer-jobfair';
- /**
- * The console command description.
- *
- * @var string
- */
- protected $description = '甘肃旧系统招聘会数据';
- /**
- * Create a new command instance.
- *
- * @return void
- */
- public function __construct()
- {
- parent::__construct();
- }
- /**
- * Execute the console command.
- *
- * @return mixed
- */
- public function handle()
- {
- $this->info("清除招聘会数据表:jobfairs");
- DB::table('jobfairs')->truncate();
- $this->info("清除招聘会数据表:jobfair_floorplans");
- DB::table('jobfair_floorplans')->truncate();
- $this->info("清除招聘会数据表:jobfair_floorplan_stands");
- DB::table('jobfair_floorplan_stands')->truncate();
- $this->info("清除招聘会数据表:jobfair_floorplan_templates");
- DB::table('jobfair_floorplan_templates')->truncate();
- $this->info("清除招聘会黑名单数据表:jobfair_blacklists");
- DB::table('jobfair_blacklists')->truncate();
- $this->info("清除招聘会企业预订数据表:jobfair_companys");
- DB::table('jobfair_companys')->truncate();
- $this->info("清除招聘会职位库数据表:jobfair_jobs");
- DB::table('jobfair_jobs')->truncate();
- $this->info("清除招聘会职位库联系人数据表:jobfair_jobs_contacts");
- DB::table('jobfair_jobs_contacts')->truncate();
- $this->info("清除招聘会参展职位数据表:jobfair_put_jobs");
- DB::table('jobfair_put_jobs')->truncate();
- $this->info("清除招聘会参展职位数据表:jobfair_personal_jobs_applys");
- DB::table('jobfair_personal_jobs_applys')->truncate();
- $this->info("清除招聘会分类表:jobfair_managements");
- DB::table('jobfair_managements')->truncate();
- $this->info("开始转移数据...");
- $total = Jobfair::count();
- $bar=$this->output->createProgressBar($total);
- Jobfair::orderBy('id', 'asc')->chunk(10, function ($jobfairs) use ($bar) {
- $jobfair_array = [];
- $jobfair_floorplan = [];
- $jobfair_floorplan_stands = [];
- foreach ($jobfairs as $key=>$jobfair) {
- $areaid = $this->handleJobfairFloorplan($jobfair, $jobfair_floorplan);
- $this->handleJobfairFloorplanStand($jobfair, $jobfair_floorplan_stands);
- $this->handleJobfair($jobfair, $jobfair_array,$areaid);
- }
- \App\Models\Jobfair\Jobfair::insert($jobfair_array);
- \App\Models\Jobfair\JobfairFloorplanStand::insert($jobfair_floorplan_stands);
- $bar->advance(10);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移jobfairs数据数据成功.");
- $this->info("开始转移数据...");
- $total = JobfairExhibitors::count();
- $bar=$this->output->createProgressBar($total);
- JobfairExhibitors::orderBy('id', 'asc')->chunk(100, function ($jobfairCompany) use ($bar) {
- $jobfair_company = [];
- foreach ($jobfairCompany as $val) {
- $this->handleJobfairCompany($val, $jobfair_company);
- }
- \App\Models\Jobfair\JobfairCompany::insert($jobfair_company);
- $bar->advance(100);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移JobfairCompany数据数据成功.");
- $this->info("开始转移数据...");
- $total = JobfairBlackList::count();
- $bar=$this->output->createProgressBar($total);
- JobfairBlackList::orderBy('id', 'asc')->chunk(1000, function ($jobfairBlack) use ($bar) {
- $jobfair_black = [];
- foreach ($jobfairBlack as $val) {
- $this->handleJobfairBlack($val, $jobfair_black);
- }
- \App\Models\Jobfair\JobfairBlacklist::insert($jobfair_black);
- $bar->advance(1000);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移JobfairBlacklist数据数据成功.");
- $this->info("开始转移数据...");
- $total = JobfairJob::count();
- $bar=$this->output->createProgressBar($total);
- JobfairJob::orderBy('id', 'asc')->chunk(1000, function ($jobfairJob) use ($bar) {
- $jobfair_job = [];
- foreach ($jobfairJob as $val) {
- $this->handleJobfairJob($val, $jobfair_job);
- }
- \App\Models\Jobfair\JobfairJob::insert($jobfair_job);
- $bar->advance(1000);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移JobfairJob数据数据成功.");
- $this->info("开始转移数据...");
- $total = JobfairJobContact::count();
- $bar=$this->output->createProgressBar($total);
- JobfairJobContact::orderBy('id', 'asc')->chunk(1000, function ($jobfairJobContact) use ($bar) {
- $jobfair_job_contact = [];
- foreach ($jobfairJobContact as $val) {
- $this->handleJobfairJobContact($val, $jobfair_job_contact);
- }
- \App\Models\Jobfair\JobfairJobsContact::insert($jobfair_job_contact);
- $bar->advance(1000);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移JobfairJobsContact数据数据成功.");
- $this->info("开始转移数据...");
- $total = JobfairPutJob::count();
- $bar=$this->output->createProgressBar($total);
- JobfairPutJob::with('jobs')->orderBy('id', 'asc')->chunk(1000, function ($jobfairPutJob) use ($bar) {
- $jobfair_put_job = [];
- foreach ($jobfairPutJob as $val) {
- $this->handleJobfairPutJob($val, $jobfair_put_job);
- }
- \App\Models\Jobfair\JobfairPutJob::insert($jobfair_put_job);
- $bar->advance(1000);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移JobfairPutJob数据数据成功.");
- $this->info("开始转移数据...");
- $total = JobfairYuyue::count();
- $bar=$this->output->createProgressBar($total);
- JobfairYuyue::orderBy('id', 'asc')->chunk(100, function ($jobfairYuyue) use ($bar) {
- $jobfair_yuyue = [];
- foreach ($jobfairYuyue as $val) {
- $this->handleJobfairYuyue($val, $jobfair_yuyue);
- }
- \App\Models\Jobfair\JobfairPersonalJobsApply::insert($jobfair_yuyue);
- $bar->advance(100);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移JobfairPersonalJobsApply数据数据成功.");
- $this->info("开始转移数据...");
- $total = Category::where('c_alias','aix_jobfair_type')->count();
- $bar=$this->output->createProgressBar($total);
- Category::where('c_alias','aix_jobfair_type')->orderBy('c_id', 'asc')->chunk(100, function ($jobfairCategory) use ($bar) {
- $jobfair_category = [];
- foreach ($jobfairCategory as $val) {
- $this->handleJobfairCategory($val, $jobfair_category);
- }
- \App\Models\Jobfair\JobfairManagement::insert($jobfair_category);
- $bar->advance(100);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移JobfairManagements数据数据成功.");
- }
- public function handleJobfair($jobfair, &$jobfair_array,$areaid)
- {
- $jobfairArr=[];
- $jobfairArr['id'] = $jobfair->id;
- $jobfairArr['title'] = $jobfair->title;
- $jobfairArr['industry'] = $jobfair->industry;
- $jobfairArr['holddate_start'] = $jobfair->holddate_start;
- $jobfairArr['holddate_end'] = $jobfair->holddate_end;
- $jobfairArr['predetermined_start'] = $jobfair->predetermined_start;
- $jobfairArr['predetermined_end'] = $jobfair->predetermined_end;
- $jobfairArr['predetermined_start'] = $jobfair->predetermined_start;
- $jobfairArr['bus'] = $jobfair->bus;
- $jobfairArr['address'] = $jobfair->address;
- $jobfairArr['contact'] = $jobfair->contact;
- $jobfairArr['phone'] = $jobfair->phone;
- $jobfairArr['areaid'] = $jobfair->areaid;
- $jobfairArr['predetermined_point'] = $jobfair->predetermined_point;
- $jobfairArr['nosign_point'] = $jobfair->nosign_point;
- $jobfairArr['late_point'] = $jobfair->late_point;
- $jobfairArr['display'] = $jobfair->display;
- $jobfairArr['is_commonweal'] = $jobfair->is_commonweal;
- $jobfairArr['jobsfair_num'] = $jobfair->jobsfair_num;
- $jobfairArr['ordid'] = $jobfair->ordid;
- $jobfairArr['jobfair_introduction'] = htmlspecialchars_decode($jobfair->introduction);
- $jobfairArr['map_x'] = $jobfair->map_x;
- $jobfairArr['map_y'] = $jobfair->map_y;
- $jobfairArr['subsite_id'] = $jobfair->subsite_id;
- $jobfairArr['areaid'] = $areaid;
- $jobfairArr['jobfair_type'] = $jobfair->aix_jobfair_type;
- $jobfairArr['created_at'] = date('Y-m-d H:i:s',$jobfair->addtime);
- $jobfairArr['updated_at'] = date('Y-m-d H:i:s',$jobfair->addtime);
- $jobfair_array[] = $jobfairArr;
- }
- public function handleJobfairFloorplan($jobfair, &$jobfair_floorplan)
- {
- $jobfairArr=[];
- $jobfairArr['name'] = '批量导入';
- $jobfairArr['jobfair_id'] = $jobfair->id;
- $jobfairArr['bg_images'] = '无';
- $jobfairArr['created_at'] = date('Y-m-d H:i:s', time());
- $jobfairArr['updated_at'] = date('Y-m-d H:i:s', time());
- $jobfairArr;
- $areaid = JobfairFloorplan::insertGetId($jobfairArr);
- return $areaid;
- }
- public function handleJobfairCompany($val,&$jobfair_company)
- {
- $array = [];
- $array['id'] = $val->id;
- $array['audit'] = $val->audit;
- $array['etype'] = $val->etype;
- $array['company_id'] = $val->uid;
- $array['jobfair_id'] = $val->jobfair_id;
- $array['position'] = $val->position_id;
- $array['position_id'] = \App\Models\Jobfair\JobfairFloorplanStand::where('jobfair_id',$val->jobfair_id)->where('name',$val->position_id)->value('id');
- $array['note'] = $val->note;
- $array['recommend'] = $val->recommend;
- $array['pay_type'] = $val->pay_type;
- $array['read_card_num'] = $val->read_card_num;
- $array['created_at'] = date('Y-m-d H:i:s',$val->eaddtime);
- $array['updated_at'] = date('Y-m-d H:i:s',$val->eaddtime);
- $jobfair_company[] = $array;
- }
- public function handleJobfairFloorplanStand($jobfair, &$jobfair_floorplan_stands)
- {
- $exhibitors = JobfairExhibitors::where('jobfair_id',$jobfair->id)->get();
- if($exhibitors->isNotEmpty()){
- foreach ($exhibitors as $val)
- {
- $jobfairArr=[];
- static $left = 0;
- static $top = 20;
- if($left > 960){
- $left = 0;
- $top += 50;
- }
- $jobfairArr['name'] = $val->position_id;
- $jobfairArr['jobfair_id'] = $val->jobfair_id;
- $jobfairArr['floorplan_id'] = \App\Models\jobfair\JobfairFloorplan::where('jobfair_id',$val->jobfair_id)->value('id');
- $jobfairArr['equipment_id'] = 0;
- $jobfairArr['sortindex'] = 0;
- $jobfairArr['left'] = $left+=50;
- $jobfairArr['left'] = $jobfairArr['left'].'px';
- $jobfairArr['top'] = $top.'px';
- $jobfairArr['created_at'] = date('Y-m-d H:i:s', time());
- $jobfairArr['updated_at'] = date('Y-m-d H:i:s', time());
- $jobfair_floorplan_stands[] = $jobfairArr;
- }
- }
- }
- public function handleJobfairBlack($val, &$jobfair_black)
- {
- $array = [];
- $array['id'] = $val->id;
- $array['company_id'] = $val->uid;
- $array['type'] = $val->type;
- $array['details'] = $val->details;
- $array['add_time'] = $val->add_time;
- $array['remove_time'] = $val->remove_time;
- $array['operator'] = $val->operation;
- $array['created_at'] = date('Y-m-d H:i:s', $val->add_time);
- $array['updated_at'] = date('Y-m-d H:i:s', $val->add_time);
- $jobfair_black[] = $array;
- }
- public function handleJobfairJob($val, &$jobfair_job)
- {
- $array = [];
- $array['id'] = $val->id;
- $array['jobs_name'] = $val->jobs_name;
- $array['company_id'] = $val->uid;
- $array['company_name'] = $val->companyname;
- $array['company_audit'] = $val->companyprofile->audit;
- $array['company_addtime'] = $val->addtime;
- $array['nature'] = $val->nature;
- $array['nature_cn'] = $val->nature_cn;
- $array['sex'] = $val->sex;
- $array['sex_cn'] = $val->sex_cn;
- $array['age'] = $val->age;
- $array['amount'] = $val->amount;
- $array['topclass'] = $val->topclass;
- $array['category'] = $val->category;
- $array['subclass'] = $val->subclass;
- $array['category_cn'] = $val->category_cn;
- $array['trade'] = $val->trade;
- $array['trade_cn'] = $val->trade_cn;
- $array['district'] = $val->district.'.'.$val->sdistrict.'.'.$val->tdistrict;
- $array['district_cn'] = $val->district_cn;
- $array['tag'] = $val->tag;
- $array['tag_cn'] = $val->tag_cn;
- $array['education'] = $val->education;
- $array['education_cn'] = $val->education_cn;
- $array['wage_min'] = $val->minwage;
- $array['wage_max'] = $val->maxwage;
- $array['wage_cn'] = $val->minwage.'~'.$val->maxwage.'/月';
- $array['negotiable'] = $val->negotiable;
- if($val->negotiable == 1){
- $array['wage'] = -1;
- }else{
- $array['wage'] = 0;
- }
- $array['jobs_content'] = $val->contents;
- $array['audit'] = $val->audit;
- $array['department'] = $val->department;
- $array['ygxs'] = $val->zs_ygxs;
- $array['ygxs_cn'] = $val->zs_ygxs_cn;
- $array['syq'] = $val->zs_syq;
- $array['syq_cn'] = $val->zs_syq_cn;
- $array['syqxz_min'] = $val->zs_syqxz_min;
- $array['syqxz_max'] = $val->zs_syqxz_max;
- $array['techlevel'] = $val->techlevel;
- $array['scale'] = $val->companyprofile->scale;
- $array['scale_cn'] = $val->companyprofile->scale_cn;
- $array['experience'] = $val->experience;
- $array['experience_cn'] = $val->experience_cn;
- $array['created_at'] = date('Y-m-d H:i:s',$val->addtime);
- $array['updated_at'] = date('Y-m-d H:i:s',$val->addtime);
- $jobfair_job[] = $array;
- }
- public function handleJobfairJobContact($val, &$jobfair_job_contact)
- {
- $array = [];
- $array['id'] = $val->id;
- $array['pid'] = $val->pid;
- $array['contact'] = $val->contact;
- $array['qq'] = $val->details;
- $array['mobile'] = $val->telephone;
- $array['landline_tel'] = $val->landline_tel;
- $array['email'] = $val->email;
- $array['address'] = $val->address;
- $array['notify'] = $val->notify;
- $array['notify_mobile'] = $val->notify_mobile;
- $array['contact_show'] = $val->contact_show;
- $array['telephone_show'] = $val->telephone_show;
- $array['email_show'] = $val->email_show;
- $array['landline_tel_show'] = $val->landline_tel_show;
- $array['created_at'] = date('Y-m-d H:i:s', time());
- $array['updated_at'] = date('Y-m-d H:i:s', time());
- $jobfair_job_contact[] = $array;
- }
- public function handleJobfairPutJob($val, &$jobfair_put_job)
- {
- $array = [];
- if($val->jobs)
- {
- $array['id'] = $val->id;
- $array['exid'] = $val->exid;
- $array['jobfair_id'] = $val->jobfair_id;
- $array['job_id'] = $val->fairjob_id;
- $array['position_id'] = $val->position_id;
- $array['jobs_name'] = $val->jobs->jobs_name;
- $array['company_id'] = $val->jobs->uid;
- $array['company_name'] = $val->jobs->companyname;
- $array['company_audit'] = $val->jobs->companyprofile->audit;
- $array['nature'] = $val->jobs->nature;
- $array['nature_cn'] = $val->jobs->nature_cn;
- $array['sex'] = $val->jobs->sex;
- $array['sex_cn'] = $val->jobs->sex_cn;
- $array['age'] = $val->jobs->age;
- $array['amount'] = $val->jobs->amount;
- $array['topclass'] = $val->jobs->topclass;
- $array['category'] = $val->jobs->category;
- $array['subclass'] = $val->jobs->subclass;
- $array['category_cn'] = $val->jobs->category_cn;
- $array['trade'] = $val->jobs->trade;
- $array['trade_cn'] = $val->jobs->trade_cn;
- $array['district'] = $val->jobs->district.'.'.$val->jobs->sdistrict.'.'.$val->jobs->tdistrict;
- $array['district_cn'] = $val->jobs->district_cn;
- $array['tag'] = $val->jobs->tag;
- $array['tag_cn'] = $val->jobs->tag_cn;
- $array['education'] = $val->jobs->education;
- $array['education_cn'] = $val->jobs->education_cn;
- $array['wage'] = $val->jobs->wage;
- $array['wage_min'] = $val->jobs->minwage;
- $array['wage_max'] = $val->jobs->maxwage;
- $array['wage_cn'] = $val->jobs->minwage.'~'.$val->jobs->maxwage.'/月';
- $array['negotiable'] = $val->jobs->negotiable;
- if($val->jobs->negotiable == 1){
- $array['wage'] = -1;
- }
- $array['jobs_content'] = $val->jobs->contents;
- $array['audit'] = $val->jobs->audit;
- $array['department'] = $val->jobs->department;
- $array['ygxs'] = $val->jobs->zs_ygxs;
- $array['ygxs_cn'] = $val->jobs->zs_ygxs_cn;
- $array['syq'] = $val->jobs->zs_syq;
- $array['syq_cn'] = $val->jobs->zs_syq_cn;
- $array['syqxz_min'] = $val->jobs->zs_syqxz_min;
- $array['syqxz_max'] = $val->jobs->zs_syqxz_max;
- $array['scale'] = $val->jobs->scale;
- $array['scale_cn'] = $val->jobs->scale_cn;
- $array['experience'] = $val->jobs->experience;
- $array['experience_cn'] = $val->jobs->experience_cn;
- $array['created_at'] = date('Y-m-d H:i:s',$val->jobs->addtime);
- $array['updated_at'] = date('Y-m-d H:i:s',$val->jobs->addtime);
- $jobfair_put_job[] = $array;
- }
- }
- public function handleJobfairYuyue($val, &$jobfair_personal_jobs_apply)
- {
- $array = [];
- $array['id'] = $val->id;
- $array['resume_id'] = 0;
- $array['personal_uid'] = $val->uid;
- $array['notes'] = 'wu';
- $array['jobs_id'] = $val->jobsfair_job_id;
- $array['company_id'] = $val->company_uid;
- $array['jobfair_id'] = $val->jobfairid;
- $array['position_id'] = $val->position_id;
- $array['created_at'] = date('Y-m-d H:i:s',$val->addtime);
- $array['updated_at'] = date('Y-m-d H:i:s',$val->addtime);
- $jobfair_personal_jobs_apply[] = $array;
- }
- public function handleJobfairCategory($val, &$jobfair_category)
- {
- $array = [];
- $array['id'] = $val->c_id;
- $array['name'] = $val->c_name;
- $array['order_list'] = $val->c_order;
- $array['created_at'] = date('Y-m-d H:i:s',time());
- $array['updated_at'] = date('Y-m-d H:i:s',time());
- $jobfair_category[] = $array;
- }
- }
|