123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 |
- <?php
- /**
- * Created by PhpStorm.
- * User: TangKe
- * Date: 2019/6/9
- * Time: 10:17
- */
- namespace App\Console\Commands\Transfer;
- use App\Transfer\Category;
- use App\Transfer\CategoryGroup;
- use App\Transfer\CategoryDistrict;
- use App\Transfer\CategoryJobs as categoryJob;
- use App\Transfer\CategoryMajor;
- use Illuminate\Console\Command;
- use App\Models\Category as categorys;
- use App\Models\CategoryGroups;
- use App\Models\CategoryDistrict as categoryDistricts;
- use App\Models\CategoryJobs;
- Use App\Models\CategoryMajor as categoryMajors;
- class CategoryTransfer extends Command
- {
- protected $signature = 'aix:transfer-category';
- protected $description = 'add the transfer-category data';
- /**
- * ArticleCommand constructor.
- */
- public function __construct()
- {
- parent::__construct();
- }
- public function handle()
- {
- //强制数据
- categorys::truncate();
- CategoryGroups::truncate();
- categoryDistricts::truncate();
- CategoryJobs::truncate();
- categoryMajors::truncate();
- // 导入分类
- $this->info("开始转移 categoryGroup 数据...");
- $total = CategoryGroup::count();
- $bar = $this->output->createProgressBar($total);
- CategoryGroup::orderBy('g_id', 'asc')->chunk(10, function ($categoryGroups) use ($bar) {
- $insertData = [];
- foreach ($categoryGroups as $key => $val) {
- $insertData[$key]['id'] = $val->g_id;
- $insertData[$key]['name'] = $val->g_name;
- $insertData[$key]['alias'] = str_replace("QS_", "AIX_", $val->g_alias);
- $insertData[$key]['sys'] = $val->g_sys;
- $insertData[$key]['created_at'] = date('Y-m-d H:i:s', time());
- $insertData[$key]['updated_at'] = date('Y-m-d H:i:s', time());
- }
- if ($insertData) {
- CategoryGroups::insert($insertData);
- }
- $bar->advance(10);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移 categoryGroup 数据成功.");
- $this->info("开始转移 categorys 数据...");
- $total = Category::count();
- $bar = $this->output->createProgressBar($total);
- Category::orderBy('c_id', 'asc')->chunk(10, function ($categorys) use ($bar) {
- $insertData = [];
- foreach ($categorys as $key => $val) {
- $insertData[$key]['id'] = $val->c_id;
- $insertData[$key]['alias'] = str_replace("QS_", "AIX_", $val->c_alias);
- $insertData[$key]['demand'] = $val->c_name;
- $insertData[$key]['category_name'] = CategoryGroup::where('g_alias', $val->c_alias)->value('g_name');
- $insertData[$key]['order'] = $val->c_order;
- $insertData[$key]['created_at'] = date('Y-m-d H:i:s', time());
- $insertData[$key]['updated_at'] = date('Y-m-d H:i:s', time());
- }
- if ($insertData) {
- categorys::insert($insertData);
- }
- $bar->advance(10);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移 categorys 数据成功.");
- $this->info("开始转移 categoryDistrict 数据...");
- $total = CategoryDistrict::count();
- $bar = $this->output->createProgressBar($total);
- CategoryDistrict::orderBy('id', 'asc')->chunk(10, function ($categoryDistricts) use ($bar) {
- $insertData = [];
- foreach ($categoryDistricts as $key => $val) {
- $insertData[$key]['id'] = $val->id;
- $insertData[$key]['parent_id'] = $val->parentid;
- $insertData[$key]['name'] = $val->categoryname;
- $insertData[$key]['order'] = $val->category_order;
- $insertData[$key]['spell'] = $val->spell;
- $insertData[$key]['created_at'] = date('Y-m-d H:i:s', time());
- $insertData[$key]['updated_at'] = date('Y-m-d H:i:s', time());
- }
- if ($insertData) {
- categoryDistricts::insert($insertData);
- }
- $bar->advance(10);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移 categoryDistrict 数据成功.");
- $this->info("开始转移 categoryJob 数据...");
- $total = categoryJob::count();
- $bar = $this->output->createProgressBar($total);
- categoryJob::orderBy('id', 'asc')->chunk(10, function ($categoryJobs) use ($bar) {
- $insertData = [];
- foreach ($categoryJobs as $key => $val) {
- $insertData[$key]['id'] = $val->id;
- $insertData[$key]['parent_id'] = $val->parentid;
- $insertData[$key]['name'] = $val->categoryname;
- $insertData[$key]['order'] = $val->category_order;
- $insertData[$key]['spell'] = $val->spell;
- $insertData[$key]['created_at'] = date('Y-m-d H:i:s', time());
- $insertData[$key]['updated_at'] = date('Y-m-d H:i:s', time());
- }
- if ($insertData) {
- CategoryJobs::insert($insertData);
- }
- $bar->advance(10);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移 categoryJob 数据成功.");
- $this->info("开始转移 categoryMajor 数据...");
- $total = CategoryMajor::count();
- $bar = $this->output->createProgressBar($total);
- CategoryMajor::orderBy('id', 'asc')->chunk(10, function ($categoryMajors) use ($bar) {
- $insertData = [];
- foreach ($categoryMajors as $key => $val) {
- $insertData[$key]['id'] = $val->id;
- $insertData[$key]['parent_id'] = $val->parentid;
- $insertData[$key]['name'] = $val->categoryname;
- $insertData[$key]['order'] = $val->category_order;
- $insertData[$key]['created_at'] = date('Y-m-d H:i:s', time());
- $insertData[$key]['updated_at'] = date('Y-m-d H:i:s', time());
- }
- if ($insertData) {
- categoryMajors::insert($insertData);
- }
- $bar->advance(10);
- });
- $bar->finish();
- $this->line(" 完成!");
- $this->info("转移 categoryMajor 数据成功.");
- }
- }
|