This commit is contained in:
iVampireSP.com 2023-03-08 01:06:01 +08:00
parent 8542b02493
commit cc93bb814c
No known key found for this signature in database
GPG Key ID: 2F7B001CA27A8132

View File

@ -5,8 +5,7 @@
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; use Illuminate\Support\Facades\Schema;
return new class extends Migration return new class extends Migration {
{
/** /**
* Run the migrations. * Run the migrations.
*/ */
@ -17,27 +16,30 @@ public function up(): void
$table->enum('billing_cycle', ['hourly', 'monthly', 'once'])->default('hourly')->index()->after('status'); $table->enum('billing_cycle', ['hourly', 'monthly', 'once'])->default('hourly')->index()->after('status');
$table->tinyInteger('day_at')->nullable()->index()->after('billing_cycle'); $table->tinyInteger('day_at')->nullable()->index()->after('billing_cycle');
$table->timestamp('trial_ends_at')->nullable()->after('day_at'); $table->timestamp('trial_ends_at')->nullable()->after('day_at');
$table->timestamp('last_paid_at')->nullable()->after('trial_ends_at');
$table->timestamp('expired_at')->nullable()->after('last_paid_at');
// 不自动续费 // 不自动续费
$table->boolean('cancel_at_period_end')->default(false)->after('trial_ends_at'); $table->boolean('cancel_at_period_end')->default(false)->after('trial_ends_at');
// 上次扣费金额 // 上次扣费金额
$table->decimal('last_paid', 10)->nullable()->after('cancel_at_period_end'); $table->decimal('last_paid', 10)->nullable()->after('cancel_at_period_end');
$table->timestamp('last_paid_at')->nullable()->after('last_paid');
// 到期时间(下次扣费时间) // 到期时间(下次扣费时间)
$table->timestamp('expired_at')->nullable()->after('last_paid_at');
}); });
$hosts = Host::all(); $count = Host::count();
$count = $hosts->count();
// 为已有的主机设置默认值 // 为已有的主机设置默认值
Host::all()->each(function (Host $host) use (&$count) { Host::chunk(100, function ($hosts) use (&$count) {
$hosts->each(function ($host) use (&$count) {
echo "Migrating {$host->id} ({$host->name})... {$count} left" . PHP_EOL; echo "Migrating {$host->id} ({$host->name})... {$count} left" . PHP_EOL;
$host->day_at = $host->created_at->day; $host->day_at = $host->created_at->day;
$host->saveQuietly(); $host->saveQuietly();
$count--;
});
}); });
} }