<?php

/**
 * 文件功能：创建用户名黑名单表（username_blacklist）
 * 用户使用改名卡后，旧名称写入此表保留30天，防止他人立即抢注
 *
 * @package  Database\Migrations
 */

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * 执行迁移：创建用户名黑名单表
     */
    public function up(): void
    {
        Schema::create('username_blacklist', function (Blueprint $table) {
            $table->id();
            $table->string('username', 20)->unique()->comment('被保留的旧用户名');
            $table->timestamp('reserved_until')->comment('保留到期时间（默认30天）');
            $table->timestamp('created_at')->nullable();
        });
    }

    /**
     * 回滚迁移：删除黑名单表
     */
    public function down(): void
    {
        Schema::dropIfExists('username_blacklist');
    }
};
