Gate Queue to doctors and land specialty modules on list indexes.
Deploy Ladill Care / deploy (push) Successful in 34s

Hide the patient-flow Queue board from nurses, reception, and other
non-doctors; specialty home routes now render the queue board list
instead of auto-opening the first open visit.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-18 22:53:12 +00:00
co-authored by Cursor
parent 244bb8fba6
commit d422797050
22 changed files with 277 additions and 122 deletions
@@ -5,7 +5,7 @@
<h1 class="text-xl font-semibold text-slate-900">Blood Bank reports</h1>
<p class="mt-1 text-sm text-slate-500">Requests, urgency mix, products issued, low stock, and bb.* revenue.</p>
</div>
<a href="{{ route('care.specialty.workspace', 'blood_bank') }}" class="text-sm font-medium text-indigo-600"> Specialty home</a>
<a href="{{ route('care.specialty.show', 'blood_bank') }}" class="text-sm font-medium text-indigo-600"> Specialty home</a>
</div>
<form method="GET" class="flex flex-wrap items-end gap-3 rounded-2xl border border-slate-200 bg-white p-4">
@@ -5,7 +5,7 @@
<h1 class="text-xl font-semibold text-slate-900">Dentistry reports</h1>
<p class="mt-1 text-sm text-slate-500">Procedures, revenue, unfinished plans, and imaging volume.</p>
</div>
<a href="{{ route('care.specialty.workspace', 'dentistry') }}" class="text-sm font-medium text-indigo-600"> Specialty home</a>
<a href="{{ route('care.specialty.show', 'dentistry') }}" class="text-sm font-medium text-indigo-600"> Specialty home</a>
</div>
<form method="GET" class="flex flex-wrap items-end gap-3 rounded-2xl border border-slate-200 bg-white p-4">
@@ -5,7 +5,7 @@
<h1 class="text-xl font-semibold text-slate-900">Emergency reports</h1>
<p class="mt-1 text-sm text-slate-500">Arrivals, acuity mix, dispositions, length of stay, and ED service revenue.</p>
</div>
<a href="{{ route('care.specialty.workspace', 'emergency') }}" class="text-sm font-medium text-indigo-600"> Specialty home</a>
<a href="{{ route('care.specialty.show', 'emergency') }}" class="text-sm font-medium text-indigo-600"> Specialty home</a>
</div>
<form method="GET" class="flex flex-wrap items-end gap-3 rounded-2xl border border-slate-200 bg-white p-4">
@@ -160,7 +160,7 @@
Back to queue
</a>
@else
<a href="{{ route('care.specialty.workspace', $moduleKey) }}" class="{{ $btnSecondary }}">
<a href="{{ route('care.specialty.show', $moduleKey) }}" class="{{ $btnSecondary }}">
Specialty home
</a>
@endif
@@ -36,6 +36,6 @@
</div>
<p class="mt-4 text-xs text-slate-500">
Add a service to a visit invoice from the specialty <a href="{{ route('care.specialty.workspace', $moduleKey) }}" class="font-medium text-indigo-600">workspace</a> Billing tab.
Add a service to a visit invoice from a specialty <a href="{{ route('care.specialty.show', $moduleKey) }}" class="font-medium text-indigo-600">visit workspace</a> Billing tab.
</p>
</section>
@@ -17,13 +17,15 @@
<h2 class="text-sm font-semibold text-slate-900">No open visit selected</h2>
<p class="mt-1 text-sm text-slate-500">
@if (! empty($canAccessPatientQueue))
Open a visit from the queue, or call next from the waiting list.
Open a visit from the specialty list or GP queue, or call next from the waiting list.
@else
Open an assigned visit, or ask reception to call the next patient.
Open a patient from the specialty list to enter their workspace.
@endif
</p>
@if (! empty($canAccessPatientQueue))
<a href="{{ route('care.queue.index') }}" class="mt-4 inline-flex text-sm font-medium text-indigo-600">Back to queue</a>
@else
<a href="{{ route('care.specialty.show', $moduleKey) }}" class="mt-4 inline-flex text-sm font-medium text-indigo-600">Specialty home</a>
@endif
</section>
@else
@@ -85,7 +85,7 @@
<p class="mt-1 text-sm text-slate-500">Completed encounters for this service line.</p>
</div>
</div>
<a href="{{ route('care.specialty.workspace', $moduleKey) }}" class="text-sm font-medium text-indigo-600 hover:text-indigo-800"> Specialty home</a>
<a href="{{ route('care.specialty.show', $moduleKey) }}" class="text-sm font-medium text-indigo-600 hover:text-indigo-800"> Specialty home</a>
</div>
@include('care.specialty.sections.history')
@elseif ($section === 'billing')
@@ -97,7 +97,7 @@
<p class="mt-1 text-sm text-slate-500">Service catalog for this module.</p>
</div>
</div>
<a href="{{ route('care.specialty.workspace', $moduleKey) }}" class="text-sm font-medium text-indigo-600 hover:text-indigo-800"> Specialty home</a>
<a href="{{ route('care.specialty.show', $moduleKey) }}" class="text-sm font-medium text-indigo-600 hover:text-indigo-800"> Specialty home</a>
</div>
@include('care.specialty.sections.billing')
@else
+1 -1
View File
@@ -91,7 +91,7 @@
$label = $item['definition']['nav_label'] ?? $item['definition']['label'] ?? $key;
$nav[] = [
'name' => $label,
'route' => route('care.specialty.workspace', $key),
'route' => route('care.specialty.show', $key),
'active' => request()->routeIs('care.specialty.*') && request()->route('module') === $key,
'icon' => $specialtyService->iconSvgPath($key),
'group' => 'specialty',