<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Category extends Model
{
    use HasFactory;

    protected $fillable = [
        'campaign_id',
        'code',
        'name',
        'parent_id',
    ];

    // Relación: una categoría puede tener subcategorías
    public function children()
    {
        return $this->hasMany(Category::class, 'parent_id');
    }

    // Relación inversa: una subcategoría pertenece a una categoría padre
    public function parent()
    {
        return $this->belongsTo(Category::class, 'parent_id');
    }
}
