|
|
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;use Illuminate\Support\Facades\DB;
class MigrateOrderMain extends Command{ /** * The name and signature of the console command. * * @var string */ protected $signature = 'migrateData:orderMain';
/** * The console command description. * * @var string */ protected $description = 'migrate order main data';
/** * Create a new command instance. * * @return void */ public function __construct() { parent::__construct(); }
/** * Execute the console command. * * @return int */ public function handle() {
// get old data from old table
$oldData = DB::table('ims_cjdc_order_main')->get();
$bar = $this->output->createProgressBar(count($oldData)); $bar->start();
$newData = []; foreach ($oldData as $key => $value) {
$newData[] = [ 'market_id' => $value->market_id ?? 0, 'order_num' => $value->order_num ?? '', 'global_order_id' => $value->global_order_id ?? 0, 'user_id' => $value->user_id ?? 0, 'pay_type' => $value->pay_type ?? 0, 'type' => $value->type ?? 0, 'order_type' => $value->order_type ?? 0, 'shipping_type' => $value->dada_status==0 ? 1 : 2, 'money' => $value->money ?? 0, 'total_money' => $value->total_money ?? 0, 'services_money' => 0, 'coupon_money' => $value->yhq_money2 ?? 0, 'delivery_money' => $value->dada_fee ?? 0, 'state' => $value->state ?? 0, 'pay_time' => $value->pay_time ? strtotime($value->pay_time) : 0, 'receive_time' => $value->jd_time ? strtotime($value->jd_time) : 0, 'delivery_time' => 0, 'complete_time' => $value->complete_time ? strtotime($value->complete_time) : 0, 'cancel_time' => $value->complete_time ? strtotime($value->complete_time) : 0, 'refund_time' => $value->refund_time ?? 0, 'tel' => $value->tel ?? '', 'address' => $value->address ?? '', 'lat' => $value->lat ?? '', 'lng' => $value->lng ?? '', 'name' => $value->name ?? '', 'print_num' => $value->print_num ?? 0, 'plat' => $value->plat ?? 0, 'refuse_refund_note' => $value->refuse_refund_note ?? '', 'delivery_time_note' => $value->delivery_time ?? '', 'total_refund_note' => $value->total_refund_note ?? '', 'note' => $value->note ?? '', 'created_at' => $value->time_add ?? 0, 'updated_at' => 0, ];
$bar->advance(); }
// insert new data to new table
DB::table('lanzu_order_main')->insert($newData);
$bar->finish(); return 0; }}
|