| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152 | 
							- <?php
 
- namespace App\Console\Commands\Transfer;
 
- use App\Models\Admin\AdminUser;
 
- use App\Models\CompanyConsultant;
 
- use App\Models\ComplaintConsultant;
 
- use App\Transfer\Consultant;
 
- use App\Transfer\ConsultantComplaint;
 
- use App\Transfer\Member;
 
- use Illuminate\Console\Command;
 
- use Illuminate\Support\Facades\DB;
 
- use Illuminate\Support\Facades\Hash;
 
- class TransferConsultant extends Command
 
- {
 
-     /**
 
-      * The name and signature of the console command.
 
-      *
 
-      * @var string
 
-      */
 
-     protected $signature = 'aix:transfer-consultant';
 
-     
 
-     /**
 
-      * 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("清除顾问数据表:consultant");
 
-         DB::delete("delete from consultant");
 
-         $this->info("清除企业顾问数据表:company_consultant");
 
-         DB::delete("delete from company_consultant");
 
-         $this->info("清除顾问消息数据表:complaint_consultant");
 
-         DB::delete("delete from complaint_consultant");
 
-         
 
-         $this->info("开始转移企业顾问数据...");
 
-         $total = Member::where('utype', 1)->count();
 
-         $bar = $this->output->createProgressBar($total);
 
-         
 
-         Member::where('utype', 1)->orderBy('uid','asc')->chunk(500, function ($members) use($bar) {
 
-             $member_array=[];
 
-             foreach ($members as $member){
 
-                 $this->handleMember($member, $member_array);
 
-             }
 
-             if ($member_array){
 
-                 CompanyConsultant::insert($member_array);
 
-             }
 
-             $bar->advance(500);
 
-         });
 
-         $bar->finish();
 
-         $this->line('完成!');
 
-         
 
-         
 
-         $this->info('开始转移顾问数据...');
 
-         $total = Consultant::count();
 
-         $bar = $this->output->createProgressBar($total);
 
-         
 
-         Consultant::orderBy('id','asc')->chunk(500, function ($Consultants) use ($bar) {
 
-             $consultant_array=[];
 
-             foreach ($Consultants as $consultant){
 
-                 $this->handleConsultant($consultant, $consultant_array);
 
-             }
 
-             if($consultant_array){
 
-                 \App\Models\Consultant::insert($consultant_array);
 
-             }
 
-             $bar->advance(500);
 
-         });
 
-         $bar->finish();
 
-         $this->line('完成!');
 
-         
 
-         
 
-         $this->info('开始转移顾问消息数据...');
 
-         $total = ConsultantComplaint::count();
 
-         $bar = $this->output->createProgressBar($total);
 
-         ConsultantComplaint::orderBy('id', 'asc')->chunk(500,function ($consultantComplaints) use ($bar){
 
-             $consultantComplaint_array=[];
 
-             foreach ($consultantComplaints as $consultantComplaint){
 
-                 $this->handleConsultantComplaint($consultantComplaint, $consultantComplaint_array);
 
-             }
 
-             if($consultantComplaint_array){
 
-                 ComplaintConsultant::insert($consultantComplaint_array);
 
-             }
 
-             $bar->advance(500);
 
-         });
 
-         $bar->finish();
 
-         $this->line('完成!');
 
-         $this->info('转移顾问数据成功!');
 
-     }
 
-     
 
-     public function handleMember($member, &$member_array)
 
-     {
 
-         if($member->consultant){
 
-             $data['consultant_id'] = $member->consultant;
 
-             $data['company_id'] = $member->uid;
 
-             $data['admin_users_id'] = $member->consultants ? $member->consultants->adminid : 0;
 
-             $data['consultant_name'] = $member->consultants ? $member->consultants->name : '';
 
-             $data['created_at'] = date('Y-m-d H:i:s', $member->reg_time);
 
-             $data['updated_at'] = date('Y-m-d H:i:s', $member->reg_time);
 
-             $member_array[] = $data;
 
-         }
 
-     }
 
-     
 
-     public function handleConsultant($consultant, &$consultant_array)
 
-     {
 
-         $data['id']=$consultant->id;
 
-         $data['name']=$consultant->name;
 
-         $data['mobile']=$consultant->mobile;
 
-         $data['telephone']=$consultant->tel;
 
-         $data['qq']=$consultant->qq;
 
-         $data['admin_users_id']=$consultant->adminid;
 
-         $data['avatar']='old/avatar/'.$consultant->pic;
 
-         $consultant_array[]= $data;
 
-     }
 
-     
 
-     public function handleConsultantComplaint($consultantComplaint, &$consultantComplaint_array)
 
-     {
 
-         $data['uid']=$consultantComplaint->uid;
 
-         $data['consultant_id']=$consultantComplaint->consultant_id;
 
-         if($consultantComplaint->audit==1){
 
-             $audit = 0;
 
-         }elseif ($consultantComplaint->audit==2){
 
-             $audit = 1;
 
-         }else{
 
-             $audit = 2;
 
-         }
 
-         $data['status']=$audit;
 
-         $data['notes']=$consultantComplaint->notes;
 
-         $data['created_at']=date('Y-m-d H:i:s', $consultantComplaint->addtime);
 
-         $data['updated_at']=date('Y-m-d H:i:s', $consultantComplaint->addtime);
 
-         $consultantComplaint_array[]= $data;
 
-     }
 
-     
 
- }
 
 
  |