Reserve floor queues for clinical staff and deepen specialty forms.
Deploy Ladill Care / deploy (push) Successful in 41s

Hospital admins no longer see specialty/queue floor nav; Call next is a full-width button; specialty encounters open module-specific clinical forms instead of the general consultation page.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-18 12:04:05 +00:00
co-authored by Cursor
parent bd8218fb45
commit 612e021e85
18 changed files with 1145 additions and 183 deletions
@@ -31,6 +31,7 @@ class QueueController extends Controller
public function index(Request $request): View
{
$this->authorizeAbility($request, 'appointments.view');
abort_unless(app(CarePermissions::class)->handlesFloorCare($this->member($request)), 403);
$organization = $this->organization($request);
$member = $this->member($request);
$owner = $this->ownerRef($request);
@@ -143,6 +144,7 @@ class QueueController extends Controller
public function callNext(Request $request): RedirectResponse
{
abort_unless(app(CarePermissions::class)->handlesFloorCare($this->member($request)), 403);
$this->authorizeAbility($request, 'appointments.view');
$organization = $this->organization($request);
abort_unless($this->queueBridge->isEnabled($organization), 404);
@@ -158,7 +158,7 @@ class SpecialtyModuleController extends Controller
return back()->with('error', 'This appointment cannot start a consultation from its current status.');
}
$consultation = $consultations->startFromAppointment(
$consultations->startFromAppointment(
$appointment,
$owner,
$owner,
@@ -167,9 +167,20 @@ class SpecialtyModuleController extends Controller
return back()->with('error', $e->getMessage());
}
$visit = $visit->fresh() ?? $appointment->visit;
$clinical = app(SpecialtyClinicalRecordService::class);
$shellTabs = app(SpecialtyShellService::class)->workspaceTabs($module);
$preferredTab = collect(array_keys($shellTabs))
->first(fn (string $tab) => $clinical->recordTypeForTab($module, $tab) !== null)
?? 'clinical_notes';
return redirect()
->route('care.consultations.show', $consultation)
->with('success', 'Consultation started.');
->route('care.specialty.workspace', [
'module' => $module,
'visit' => $visit,
'tab' => $preferredTab,
])
->with('success', 'Specialty encounter started.');
}
public function saveClinical(