Files
ladill-care/resources/views/care/specialty/show.blade.php
T
isaaccladandCursor 015a4cc7fe
Deploy Ladill Care / deploy (push) Successful in 1m45s
Wire Care lists into Ladill Queue workflows instead of reception panels.
When Queue integration is on, role pages issue tickets into their own
department queues and drive Call next → Serve → Complete on the native
lists. Integration off leaves existing UI unchanged.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-17 16:27:48 +00:00

81 lines
4.7 KiB
PHP

<x-app-layout title="{{ $definition['label'] }}">
<div class="space-y-6">
<div class="flex flex-wrap items-start justify-between gap-4">
<div>
<p class="text-xs font-semibold uppercase tracking-wider text-indigo-600">Specialty module</p>
<h1 class="mt-1 text-xl font-semibold text-slate-900">{{ $definition['label'] }}</h1>
<p class="mt-1 text-sm text-slate-500">{{ $definition['description'] ?? '' }}</p>
</div>
<a href="{{ route('care.settings.modules') }}" class="text-sm font-medium text-indigo-600 hover:text-indigo-800">Manage modules</a>
</div>
<div class="grid gap-4 lg:grid-cols-2">
<section class="rounded-2xl border border-slate-200 bg-white p-5">
<h2 class="text-sm font-semibold text-slate-900">Departments</h2>
<ul class="mt-3 space-y-2">
@forelse ($departments as $department)
<li class="flex items-center justify-between rounded-xl border border-slate-100 bg-slate-50 px-3 py-2 text-sm">
<span class="font-medium text-slate-800">{{ $department->name }}</span>
<span class="text-xs text-slate-500">{{ $department->branch?->name }}</span>
</li>
@empty
<li class="text-sm text-slate-500">No active departments for this module at your branch.</li>
@endforelse
</ul>
</section>
<section class="rounded-2xl border border-slate-200 bg-white p-5">
<h2 class="text-sm font-semibold text-slate-900">Queue stubs</h2>
<ul class="mt-3 space-y-2 text-sm">
@forelse ($queueStubs as $stub)
<li class="rounded-xl border border-slate-100 bg-slate-50 px-3 py-2">
<span class="font-medium text-slate-800">{{ $stub['name'] ?? 'Queue' }}</span>
@if (! empty($stub['prefix']))
<span class="font-mono text-xs text-slate-500">({{ $stub['prefix'] }})</span>
@endif
<span class="mt-0.5 block text-xs text-slate-500">{{ $stub['branch_name'] ?? '' }}</span>
</li>
@empty
<li class="text-sm text-slate-500">No queue stubs for your branch.</li>
@endforelse
</ul>
</section>
</div>
@include('care.partials.queue-ops', [
'queueIntegration' => $queueIntegration ?? null,
'queueCallNextRoute' => 'care.specialty.call-next',
'queueCallNextParams' => ['module' => $moduleKey],
'branchId' => $branchId ?? null,
])
<section class="rounded-2xl border border-slate-200 bg-white p-5">
<div class="flex items-center justify-between gap-3">
<h2 class="text-sm font-semibold text-slate-900">Waiting patients</h2>
<a href="{{ route('care.appointments.index') }}" class="text-xs font-medium text-indigo-600">Appointments</a>
</div>
<div class="mt-3 space-y-2">
@forelse ($waiting as $appointment)
<div class="flex items-center justify-between rounded-xl border border-slate-100 bg-slate-50 px-3 py-3 text-sm">
<div>
<p class="font-medium text-slate-900">
@if (! empty($queueIntegration['enabled']) && $appointment->queue_ticket_number)
@include('care.partials.queue-ticket', [
'ticketNumber' => $appointment->queue_ticket_number,
'ticketStatus' => $appointment->queue_ticket_status,
])
@endif
{{ $appointment->patient?->fullName() }}
</p>
<p class="text-xs text-slate-500">{{ $appointment->department?->name }} · {{ $appointment->practitioner?->name ?? 'Unassigned' }}</p>
</div>
<a href="{{ route('care.appointments.show', $appointment) }}" class="text-sky-600">View</a>
</div>
@empty
<p class="rounded-xl border border-dashed border-slate-200 px-4 py-8 text-center text-sm text-slate-500">No patients waiting in this specialty.</p>
@endforelse
</div>
</section>
</div>
</x-app-layout>