@php $patient = $admission->patient; $open = $admission->status === 'admitted'; $lastObservation = $observations->first(); $regionLabels = \App\Models\NursingSkinAssessment::regionLabels(); @endphp @if ($admission->is_icu) Critical care @endif Day {{ $admission->length_of_stay }} of the stay @if ($patient?->isRestricted()) @endif Print kardex @can('patients.view-clinical') Clinical record @endcan
@if ($patient?->isRestricted()) This patient's record is confidential — you are seeing it under your current access. Every open is audited. @endif
{{-- ------------------------------------------------ clinical columns --}}
{{-- 1 · medical orders & code status --}}
Code status @if ($kardex->code_status_notes) — {{ $kardex->code_status_notes }} @endif
@if ($activeOrders->isEmpty()) Nothing pending, acknowledged or in progress on the physician sheet. @else
@foreach ($activeOrders as $type => $orders)

{{ $orders->count() }} active

    @foreach ($orders as $order)
  • {{ $order->description }}

    {{ $order->frequency }}@if($order->duration) · for {{ $order->duration }} @endif · ordered {{ $order->ordered_at?->format('d M H:i') }} by Dr {{ $order->orderedBy?->name ?? '—' }} ·

  • @endforeach
@endforeach
@endif
{{-- 2 · safety & care needs --}}

Allergies

@if ($allergies->isEmpty())

No active allergies recorded on the registration record.

@else
    @foreach ($allergies as $allergy)
  • {{ $allergy->allergen ?? $allergy->substance ?? $allergy->name }} @if ($allergy->reaction) — {{ $allergy->reaction }} @endif
  • @endforeach
@endif

Activity

@if ($kardex->activity_level) @else Not set @endif

Fall risk

@if ($kardex->fall_risk_notes)

{{ $kardex->fall_risk_notes }}

@endif

Hygiene needs

{{ $kardex->hygiene_needs ?? '—' }}

Special equipment

{{ $kardex->special_equipment ?? '—' }}

{{-- 3 · diet & diagnostics --}}

Dietary requirements

{{ $kardex->dietary_requirements ?? '—' }}

Fluid restriction

{{ $kardex->fluid_restriction ?? '—' }}

Scheduled labs & diagnostics

{{ $kardex->scheduled_diagnostics ?? '—' }}

{{-- 4 · observations --}} @can('observations.record') @if ($open) @endif @can('observations.view') Full chart @endcan @if ($open)
@csrf
@endif @if ($observations->isEmpty()) The first set of vitals starts the early-warning trend. @else
@foreach ($observations as $obs) @endforeach
When ACVPU RR SpO₂ BP Pulse Temp EWS Escalation
{{ $obs->observed_at->format('d M H:i') }} {{ $obs->respiratory_rate }} {{ $obs->spo2 }}% {{ $obs->systolic }}/{{ $obs->diastolic }} {{ $obs->heart_rate }} {{ $obs->temperature }}° {{ $obs->early_warning_score }} @if ($obs->notes)
{{ $obs->notes }}
@endif
@endif
@endcan {{-- 5 · shift handover --}} @can('handovers.record') @if ($open) @endif @if ($open)
@csrf
@endif @if ($handovers->isEmpty()) The first shift change on this admission closes here. @else
    @foreach ($handovers as $handover)
  1. {{ $handover->handed_over_at->format('d M Y H:i') }} {{ $handover->fromUser?->name ?? '—' }} @if ($handover->toUser) → {{ $handover->toUser->name }} @endif

    {{ $handover->condition_summary }}

    @if ($handover->pending_tasks)

    Pending — {{ $handover->pending_tasks }}

    @endif @if ($handover->warnings)

    Warnings — {{ $handover->warnings }}

    @endif
  2. @endforeach
@endif
@endcan {{-- 6 · care plans --}} @can('care-plans.manage') @if ($open) @endif @endcan @can('care-plans.manage') @if ($open)
@csrf
@endif @endcan @if ($carePlans->isEmpty()) Plans appear here as nursing writes them — problem, goal and the actions the shift works through. @else
    @foreach ($carePlans as $plan)
  • {{ $plan->problem }} @if ($plan->target_date) target {{ $plan->target_date->format('d M Y') }} @endif

    Goal: {{ $plan->goal }}

    {{ $plan->open_actions_count }} open · {{ $plan->completed_actions_count }} done · by {{ $plan->createdBy?->name ?? '—' }} @if ($plan->evaluated_at) · evaluated {{ $plan->evaluated_at->format('d M Y') }} @endif

    @can('care-plans.view') Open plan @endcan
  • @endforeach
@endif
{{-- 7 · skin assessments --}} @can('skin-assessments.record') @if ($open) @endif @if ($open)
@csrf

Braden subscales — 1 is worst; friction/shear tops at 3

Region findings — head to toe (optional per region)
@foreach ($regionLabels as $region => $label) @endforeach
@endif @if ($skinAssessments->isEmpty()) The admission survey starts the Braden trend. @else
    @foreach ($skinAssessments as $assessment)
  • {{ $assessment->assessed_at->format('d M Y H:i') }} Braden {{ $assessment->braden_total }}/23 @if ($assessment->pressure_injury_present) Injury · {{ $assessment->stage_label }} @endif

    by {{ $assessment->assessedBy?->name ?? '—' }}

    @can('skin-assessments.view') Detail @endcan
  • @endforeach
@endif
@endcan
{{-- ------------------------------------------------ right rail --}}

{{ $patient?->full_name }}

{{ $patient?->medical_record_number }} @if ($patient?->date_of_birth) · {{ $patient->age_display }} · {{ $patient->gender_label }} @endif

Blood group

{{ $patient?->blood_group ?? '—' }}

Category

{{ $patient?->patient_category ?? '—' }}

@if ($admission->admission_diagnosis || $admission->reason_for_admission)

Diagnosis

{{ $admission->admission_diagnosis ?: $admission->reason_for_admission }}

@endif

Attending physician

Dr {{ $admission->attendingDoctor?->name ?? '—' }}

@if ($admission->admittingDoctor)

admitted under Dr {{ $admission->admittingDoctor->name }}

@endif
{{ $admission->ward?->name ?? 'No ward' }}{{ $admission->room ? ' · Room '.$admission->room->room_number : '' }}{{ $admission->bed ? ' · Bed '.$admission->bed->bed_number : '' }} Admitted {{ $admission->admission_date?->format('d M Y H:i') }}
@can('kardex.manage')
@csrf @method('PUT')
@if ($kardex->updatedBy)

Last kept current by {{ $kardex->updatedBy->name }}

@endif
@endcan