{{ $appointment->appointment_date?->format('D, d M Y') }} @if ($appointment->slot_time) · {{ substr((string) $appointment->slot_time, 0, 5) }} @endif · {{ $appointment->doctor?->name ?? 'Department pool' }}

The clinic date, slot time and consultant are fixed once a token has been issued. To change any of them, use Reschedule — the original row is kept and linked, so the attendance history survives the move.

@csrf @method('PUT')
Cancel
@if ($appointment->patient)
{{ Str::of($appointment->patient->first_name)->substr(0, 1)->upper() }}{{ Str::of($appointment->patient->last_name)->substr(0, 1)->upper() }}
@can('patients.view') {{ $appointment->patient->full_name }} @else {{ $appointment->patient->full_name }} @endcan
{{ $appointment->patient->medical_record_number }}
{{ $appointment->patient->age_display }} @if ($appointment->patient->gender) · {{ $appointment->patient->gender_label }} @endif
@else

The patient record is no longer available.

@endif
Clinic date
{{ $appointment->appointment_date?->format('d M Y') }}
Slot
{{ $appointment->slot_time ? substr((string) $appointment->slot_time, 0, 5) : 'Walk-in order' }}
Consultant
{{ $appointment->doctor?->name ?? 'Department pool' }}
Token
{{ $appointment->token_number ?: ($appointment->is_waitlisted ? 'Waitlisted' : '—') }}