@section('title', 'Zone Management - Head Nurse Dashboard')

Zone Management

Manage geographical zones and nurse assignments across all clinics

@if($selectedClinicId)
{{ $zones->count() }} zones
@endif
@if (session()->has('success'))
{{ session('success') }}
@endif @if (session()->has('error'))
{{ session('error') }}
@endif
@forelse($zones as $zone)

Zone {{ $zone->zone_code }}

{{ $zone->zone_name }}

@if($zone->is_active) Active @else Inactive @endif
{{ $zone->active_nurses_count }}
Nurses
{{ $zone->active_mothers_count }}
Mothers
@if($zone->boundary_notes)

{{ Str::limit($zone->boundary_notes, 80) }}

@endif @if($zone->postcodes && count($zone->postcodes) > 0)

Postcodes:

@foreach(array_slice($zone->postcodes, 0, 5) as $postcode) {{ $postcode }} @endforeach @if(count($zone->postcodes) > 5) +{{ count($zone->postcodes) - 5 }} more @endif
@endif
@empty
@if($selectedClinicId)

No zones created yet for this clinic

Click "Create New Zone" to get started

@else

Please select a clinic

Choose a clinic from the dropdown above to manage its zones

@endif
@endforelse
@if($showZoneModal)

{{ $isEditMode ? 'Edit Zone' : 'Create New Zone' }}

@error('zone_code') {{ $message }} @enderror
@error('zone_name') {{ $message }} @enderror

Enter postcodes separated by commas

@error('postcodes_input') {{ $message }} @enderror
@error('boundary_notes') {{ $message }} @enderror
@endif @if($showNurseAssignmentModal)

Assign Nurse to Zone

@error('selected_nurse_id') {{ $message }} @enderror
@error('assignment_start_date') {{ $message }} @enderror
@error('assignment_notes') {{ $message }} @enderror
@endif @if($showZoneDetailsModal && $selectedZone)

Zone {{ $selectedZone->zone_code }} - {{ $selectedZone->zone_name }}

Zone Information

Status: @if($selectedZone->is_active) Active @else Inactive @endif
Total Mothers: {{ $selectedZone->activeMothers->count() }}
@if($selectedZone->boundary_notes)
Boundaries:

{{ $selectedZone->boundary_notes }}

@endif @if($selectedZone->postcodes && count($selectedZone->postcodes) > 0)
Postcodes:
@foreach($selectedZone->postcodes as $postcode) {{ $postcode }} @endforeach
@endif

Assigned Nurses ({{ $selectedZone->activeNurses->count() }})

@if($selectedZone->activeNurses->count() > 0)
@foreach($selectedZone->activeNurses as $nurse)
@if($nurse->profile_picture) {{ $nurse->name }} @else
{{ $nurse->initials() }}
@endif

{{ $nurse->name }}

{{ $nurse->staff_id }} | {{ $nurse->email }}

Since: {{ \Carbon\Carbon::parse($nurse->pivot->start_date)->format('M d, Y') }}

@endforeach
@else

No nurses assigned to this zone yet.

@endif

Assigned Mothers ({{ $selectedZone->activeMothers->count() }})

@if($selectedZone->activeMothers->count() > 0)
@foreach($selectedZone->activeMothers as $assignment)
@if($assignment->mother->avatar_url) {{ $assignment->mother->mother_full_name ?? $assignment->mother->user->name }} @else
{{ strtoupper(substr($assignment->mother->mother_full_name ?? 'M', 0, 1)) }}
@endif

{{ $assignment->mother->mother_full_name ?? $assignment->mother->user->name }}

IC: {{ $assignment->mother->ic_number ?? 'N/A' }}

Assigned Nurse: {{ $assignment->nurse->name ?? 'Unassigned' }}

{{ \Carbon\Carbon::parse($assignment->assigned_at)->format('M d, Y') }}
@endforeach
@else

No mothers assigned to this zone yet.

@endif
@endif