<?php

/**
 * 文件功能：为 shop_items.type 枚举添加 ring（戒指）类型
 *
 * 戒指道具是婚姻系统专用的一次性消耗品，与普通 one_time 类型语义不同，
 * 单独用 ring 类型区分，方便后续过滤查询。
 */

use Illuminate\Database\Migrations\Migration;
use Illuminate\Support\Facades\DB;

return new class extends Migration
{
    /**
     * 为 type 枚举新增 ring 值。
     */
    public function up(): void
    {
        DB::statement("ALTER TABLE `shop_items` MODIFY `type` ENUM('instant','duration','one_time','ring') NOT NULL COMMENT '道具类型'");
    }

    /**
     * 回滚：删除 ring 枚举值（先将已有 ring 类型记录改为 one_time 以防报错）。
     */
    public function down(): void
    {
        DB::statement("UPDATE `shop_items` SET `type` = 'one_time' WHERE `type` = 'ring'");
        DB::statement("ALTER TABLE `shop_items` MODIFY `type` ENUM('instant','duration','one_time') NOT NULL COMMENT '道具类型'");
    }
};
