Add service-point routing so call-next cannot steal assigned tickets.
Deploy Ladill Queue / deploy (push) Successful in 2m17s
Deploy Ladill Queue / deploy (push) Successful in 2m17s
Counters gain destination/staff metadata; tickets can be pre-assigned to a service point with assigned_only queues for healthcare while shared_pool preserves generic bank/government behavior. Display and announcements expose ticket, staff, and destination clearly for Care and public boards. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -67,4 +67,20 @@ class ServiceQueue extends Model
|
||||
return $this->belongsToMany(Counter::class, 'queue_counter_service_queue', 'service_queue_id', 'counter_id')
|
||||
->withPivot('priority');
|
||||
}
|
||||
|
||||
/**
|
||||
* shared_pool — any linked service point may pull unassigned waiting tickets.
|
||||
* assigned_only — call-next only returns tickets pre-assigned to that service point.
|
||||
*/
|
||||
public function routingMode(): string
|
||||
{
|
||||
$mode = (string) data_get($this->settings, 'routing_mode', 'shared_pool');
|
||||
|
||||
return in_array($mode, ['shared_pool', 'assigned_only'], true) ? $mode : 'shared_pool';
|
||||
}
|
||||
|
||||
public function usesAssignedOnlyRouting(): bool
|
||||
{
|
||||
return $this->routingMode() === 'assigned_only';
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user