<?php

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

class CreateProductsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('products', function (Blueprint $table) {
            $table->id();
            $table->string('title');
            $table->string('slug')->unique();
            $table->string('sku')->unique()->nullable(); // کد محصول
            $table->decimal('price', 15, 2)->default(0); // قیمت پایه
            $table->integer('stock_quantity')->default(0); // موجودی انبار
            $table->boolean('is_active')->default(true);
            
            // جادوی پرفورمنس: به جای ده‌ها رکورد در جدول meta (مثل وردپرس)، همه ویژگی‌های متغیر اینجا ذخیره می‌شوند
            $table->json('attributes')->nullable(); 
            
            // فیلد اختصاصی برای سئو و تنظیمات خاص این محصول
            $table->json('meta_data')->nullable(); 
    
            $table->timestamps();
            $table->softDeletes(); // برای اینکه محصولات حذف شده قابل بازیابی باشند
        });
    }
    

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('products');
    }
}
