| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452 | <?phpnamespace App\Console\Commands\Transfer;use App\Models\Jobfair\JobfairFloorplan;use App\Transfer\Fuwai;use App\Transfer\FuwaiExhibitors;use App\Transfer\FuwaiInfo;use App\Transfer\FuwaiFeedback;use App\Transfer\FuwaiReserve;use App\Transfer\FuwaiReserveList;use App\Transfer\FuwaiJobs;use App\Transfer\FuwaiJobsContact;use App\Transfer\FuwaiPutJobs;use App\Transfer\FuwaiPersonalJobsApply;use Illuminate\Console\Command;use Illuminate\Support\Facades\DB;class TransJobfairout extends Command{    /**     * The name and signature of the console command.     *     * @var string     */    protected $signature = 'aix:transfer-jobfairout';    /**     * 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("清除招聘会数据表:jobfairout");        DB::table('jobfairout')->truncate();        $this->info("清除招聘会反馈表:jobfairout_feedback");        DB::table('jobfairout_feedback')->truncate();        $this->info("清除招聘会企业数据表:jobfairout_info");        DB::table('jobfairout_info')->truncate();        $this->info("清除招聘会参加人员数据表:jobfairout_reserve");        DB::table('jobfairout_reserve')->truncate();        $this->info("清除招聘会参加人员库数据表:jobfairout_reserve_list");        DB::table('jobfairout_reserve_list')->truncate();        $this->info("清除招聘会企业预订数据表:jobfairout_companys");        DB::table('jobfairout_companys')->truncate();        $this->info("清除招聘会职位库表:jobfair_jobs");        DB::table('jobfair_jobs')->where('type',2)->delete();        $this->info("清除招聘会职位库联系人表:jobfair_jobs_contacts");        DB::table('jobfair_jobs_contacts')->where('pid','>=','200000')->delete();        $this->info("清除招聘会参展职位数据表:jobfairout_put_jobs");        DB::table('jobfairout_put_jobs')->truncate();        $this->info("清除招聘会参展职位数据表:jobfairout_personal_jobs_applys");        DB::table('jobfairout_personal_jobs_applys')->truncate();        $this->info("开始转移数据...");        $total = Fuwai::count();        $bar=$this->output->createProgressBar($total);        Fuwai::orderBy('id', 'asc')->chunk(10, function ($jobfairs) use ($bar) {            $jobfair_array = [];            foreach ($jobfairs as $key=>$jobfair) {                $this->handleJobfair($jobfair, $jobfair_array);            }            \App\Models\Jobfairout\Jobfairout::insert($jobfair_array);            $bar->advance(10);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移jobfairout数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiInfo::count();        $bar=$this->output->createProgressBar($total);        FuwaiInfo::orderBy('id', 'asc')->chunk(1000, function ($jobfairInfo) use ($bar) {            $jobfair_info = [];            foreach ($jobfairInfo as $key=>$val) {                $this->handleJobfairInfo($val, $jobfair_info);            }            \App\Models\Jobfairout\JobfairoutInfo::insert($jobfair_info);            $bar->advance(1000);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairoutInfo数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiReserve::count();        $bar=$this->output->createProgressBar($total);        FuwaiReserve::orderBy('id', 'asc')->chunk(1000, function ($jobfairReserve) use ($bar) {            $jobfair_reserve = [];            foreach ($jobfairReserve as $key=>$val) {                $this->handleJobfaiReserve($val, $jobfair_reserve);            }            \App\Models\Jobfairout\JobfairoutReserve::insert($jobfair_reserve);            $bar->advance(1000);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairoutReserve数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiReserveList::count();        $bar=$this->output->createProgressBar($total);        FuwaiReserveList::orderBy('id', 'asc')->chunk(1000, function ($jobfairReserveList) use ($bar) {            $jobfair_reserve_list = [];            foreach ($jobfairReserveList as $key=>$val) {                $this->handleJobfaiReserveList($val, $jobfair_reserve_list);            }            \App\Models\Jobfairout\JobfairoutReserveList::insert($jobfair_reserve_list);            $bar->advance(1000);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairoutReserveList数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiExhibitors::count();        $bar=$this->output->createProgressBar($total);        FuwaiExhibitors::orderBy('id', 'asc')->chunk(100, function ($jobfairCompany) use ($bar) {            $jobfair_company = [];            foreach ($jobfairCompany as $val) {                $this->handleJobfairCompany($val, $jobfair_company);            }            \App\Models\Jobfairout\JobfairoutCompany::insert($jobfair_company);            $bar->advance(100);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairCompany数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiJobs::count();        $bar=$this->output->createProgressBar($total);        FuwaiJobs::orderBy('id', 'asc')->chunk(100, function ($jobfairJob) use ($bar) {            $jobfair_job = [];            foreach ($jobfairJob as $val) {                $this->handleJobfairJob($val, $jobfair_job);            }            \App\Models\Jobfair\JobfairJob::insert($jobfair_job);            $bar->advance(100);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairJob数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiJobsContact::count();        $bar=$this->output->createProgressBar($total);        FuwaiJobsContact::orderBy('id', 'asc')->chunk(100, 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(100);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairJobsContact数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiPutJobs::count();        $bar=$this->output->createProgressBar($total);        FuwaiPutJobs::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\Jobfairout\JobfairoutPutJob::insert($jobfair_put_job);            $bar->advance(1000);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairPutJob数据数据成功.");        $this->info("开始转移数据...");        $total = FuwaiPersonalJobsApply::count();        $bar=$this->output->createProgressBar($total);        FuwaiPersonalJobsApply::orderBy('did', 'asc')->chunk(100, function ($jobfairYuyue) use ($bar) {            $jobfair_yuyue = [];            foreach ($jobfairYuyue as $val) {                $this->handleJobfairYuyue($val, $jobfair_yuyue);            }            \App\Models\Jobfairout\JobfairoutPersonalJobsApply::insert($jobfair_yuyue);            $bar->advance(100);        });        $bar->finish();        $this->line("  完成!");        $this->info("转移JobfairPersonalJobsApply数据数据成功.");    }    public function handleJobfair($jobfair, &$jobfair_array)    {        $jobfairArr=[];        $jobfairArr['id'] = $jobfair->id;        $jobfairArr['title'] = $jobfair->title;        $jobfairArr['url'] = $jobfair->url;        $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['address'] = $jobfair->address;        $jobfairArr['contact'] = $jobfair->contact;        $jobfairArr['phone'] = $jobfair->phone;        $jobfairArr['predetermined_point'] = $jobfair->predetermined_point;        $jobfairArr['display'] = $jobfair->display;        $jobfairArr['is_commonweal'] = $jobfair->is_commonweal;        $jobfairArr['ordid'] = $jobfair->ordid;        $jobfairArr['jobfair_introduction'] = htmlspecialchars_decode($jobfair->introduction);        $jobfairArr['map_x'] = $jobfair->map_x;        $jobfairArr['map_y'] = $jobfair->map_y;        $jobfairArr['map_zoom'] = $jobfair->map_zoom;        $jobfairArr['subsite_id'] = $jobfair->subsite_id;        $jobfairArr['number'] = $jobfair->number;        $jobfairArr['type'] = $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 handleJobfairInfo($val,&$jobfair_info)    {        $array = [];        $array['id'] = $val->id;        $array['company_id'] = $val->uid;        $array['jobfair_id'] = $val->fuwai_id;        $array['intro'] = $val->intro;        $array['exid'] = $val->exid;        $array['contact'] = $val->contacts;        $array['landline_tel'] = $val->office_phone;        $array['phone'] = $val->phone;        $array['fax'] = $val->fax;        $array['email'] = $val->email;        $array['qq'] = $val->qq;        $array['address'] = $val->address;        $array['url'] = $val->url;        $array['is_speech'] = $val->is_xj;        $array['status'] = $val->status;        $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_info[] = $array;    }    public function handleJobfaiReserve($val,&$jobfair_reserve)    {        $array = [];        $array['id'] = $val->id;        $array['jobfair_id'] = $val->fuwai_id;        $array['company_id'] = $val->uid;        $array['exid'] = $val->exid;        $array['name1'] = $val->name1;        $array['name2'] = $val->name2;        $array['id1'] = $val->id1;        $array['id2'] = $val->id2;        $array['sex1'] = $val->sex1;        $array['sex2'] = $val->sex2;        $array['phone1'] = $val->phone1;        $array['phone2'] = $val->phone2;        $array['departmental_position1'] = $val->departmental_position1;        $array['departmental_position2'] = $val->departmental_position2;        $array['gentuan'] = $val->gentuan;        $array['intro'] = $val->intro;        $array['status'] = $val->status;        $array['created_at'] = date('Y-m-d H:i:s',$val->time);        $array['updated_at'] = date('Y-m-d H:i:s',$val->time);        $jobfair_reserve[] = $array;    }    public function handleJobfaiReserveList($val,&$jobfair_reserve_list)    {        $array = [];        $array['id'] = $val->id;        $array['name'] = $val->name;        $array['sex'] = $val->sex;        $array['telephone'] = $val->mobilephone;        $array['post'] = $val->zhiwu;        $array['idcard'] = $val->idcard;        $array['company_id'] = $val->uid;        $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_reserve_list[] = $array;    }    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['note'] = $val->note;        $array['pay_type'] = $val->pay_type;        $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 handleJobfairJob($val, &$jobfair_job)    {        $array = [];        if($val->companyprofile){            $array['id'] = $val->id+200000;            $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['type'] = 2;            $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+200000;        $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 = [];        $array['id'] = $val->id;        $array['exid'] = $val->exid;        $array['jobfair_id'] = $val->jobfair_id;        $array['job_id'] = $val->fairjob_id+200000;        $array['jobs_name'] = $val->jobs_name;        $array['company_id'] = $val->uid;        $array['company_name'] = $val->companyname;        $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.'/月';        if($val->negotiable == 1){            $array['wage'] = -1;        }else{            $array['wage'] = 0;        }        $array['jobs_content'] = $val->contents;        $array['audit'] = $val->audit == 1 ? 1 : 2;        $array['department'] = $val->department;        $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_put_job[] = $array;    }    public function handleJobfairYuyue($val, &$jobfair_personal_jobs_apply)    {        $array = [];        $array['id'] = $val->id;        $array['resume_id'] = $val->resume_id;        $array['personal_uid'] = $val->uid;        $array['jobs_id'] = $val->jobs_id;        $array['company_id'] = $val->company_uid;        $array['personal_look'] = $val->personal_look;        $array['notes'] = $val->notes;        $array['jobfair_id'] = $val->jobfair_id;        $array['is_reply'] = $val->is_reply;        $array['is_apply'] = $val->is_apply;        $array['created_at'] = date('Y-m-d H:i:s',$val->apply_addtime);        $array['updated_at'] = date('Y-m-d H:i:s',$val->apply_addtime);        $jobfair_personal_jobs_apply[] = $array;    }}
 |