'array', 'priority_rules' => 'array', 'settings' => 'array', 'is_active' => 'boolean', 'is_paused' => 'boolean', ]; } protected static function booted(): void { static::creating(function (self $queue) { $queue->uuid ??= (string) Str::uuid(); }); } public function organization(): BelongsTo { return $this->belongsTo(Organization::class, 'organization_id'); } public function branch(): BelongsTo { return $this->belongsTo(Branch::class, 'branch_id'); } public function department(): BelongsTo { return $this->belongsTo(Department::class, 'department_id'); } public function tickets(): HasMany { return $this->hasMany(Ticket::class, 'service_queue_id'); } public function counters(): BelongsToMany { return $this->belongsToMany(Counter::class, 'queue_counter_service_queue', 'service_queue_id', 'counter_id') ->withPivot('priority'); } }