Fix API reliability and CORS config for hosted deployment

هذا الالتزام موجود في:
Abdul Kareem
2026-02-22 01:17:35 +03:00
الأصل cc11f2e063
التزام 090427cf2c
20 ملفات معدلة مع 267 إضافات و22 حذوفات

عرض الملف

@@ -8,6 +8,7 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
class Notification extends Model
{
use HasFactory;
public $timestamps = false;
protected $fillable = [
'user_id',

عرض الملف

@@ -8,6 +8,7 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
class PricingRule extends Model
{
use HasFactory;
public $timestamps = false;
protected $fillable = [
'scope',

عرض الملف

@@ -8,16 +8,28 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
class ReservationFee extends Model
{
use HasFactory;
public $timestamps = false;
protected $fillable = [
'reservation_id',
'pricing_rule_id',
'price_per_person',
'party_size',
'total_fee',
'total_amount',
'currency',
];
public function setTotalAmountAttribute($value): void
{
$this->attributes['total_fee'] = $value;
}
public function getTotalAmountAttribute()
{
return $this->attributes['total_fee'] ?? null;
}
public function reservation()
{
return $this->belongsTo(Reservation::class);

عرض الملف

@@ -8,18 +8,32 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
class ReservationReminder extends Model
{
use HasFactory;
public $timestamps = false;
protected $fillable = [
'reservation_id',
'user_id',
'remind_at',
'send_at',
'sent_at',
];
protected $casts = [
'remind_at' => 'datetime',
'send_at' => 'datetime',
'sent_at' => 'datetime',
];
public function setSendAtAttribute($value): void
{
$this->attributes['remind_at'] = $value;
}
public function getSendAtAttribute()
{
return $this->attributes['remind_at'] ?? null;
}
public function reservation()
{
return $this->belongsTo(Reservation::class);

عرض الملف

@@ -8,6 +8,7 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
class Role extends Model
{
use HasFactory;
public $timestamps = false;
protected $fillable = [
'name',

عرض الملف

@@ -8,11 +8,12 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
class SeatingArea extends Model
{
use HasFactory;
public $timestamps = false;
protected $fillable = [
'venue_id',
'name',
'description',
'is_active',
];
public function venue()

عرض الملف

@@ -4,19 +4,48 @@ namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Support\Facades\Schema;
class VenueTable extends Model
{
use HasFactory;
public $timestamps = false;
protected static ?string $labelColumn = null;
protected $fillable = [
'venue_id',
'seating_area_id',
'name',
'table_number',
'capacity',
'is_active',
];
public static function labelColumn(): string
{
if (self::$labelColumn !== null) {
return self::$labelColumn;
}
self::$labelColumn = Schema::hasColumn('venue_tables', 'name')
? 'name'
: 'table_number';
return self::$labelColumn;
}
public function setNameAttribute($value): void
{
$this->attributes[self::labelColumn()] = $value;
}
public function getNameAttribute()
{
$column = self::labelColumn();
return $this->attributes[$column] ?? null;
}
public function venue()
{
return $this->belongsTo(Venue::class);