@extends('layouts.app') @section('title', 'Supervision Analysis - Reports') @section('content') @php $types = config('probation.case_types'); @endphp

Supervision Analysis

Number of supervisions — {{ ucfirst($period) }}
Brought forward = continuing supervisions carried over at the close of the previous {{ ['daily' => 'day', 'monthly' => 'month', 'quarterly' => 'quarter', 'yearly' => 'year'][$period] }}.
@foreach($buckets as $b) @endforeach
PeriodBrought forwardNew placementsCompleted / closedCarried forward
{{ $b->label }}{{ $b->bf }}{{ $b->new }}{{ $b->done }}{{ $b->cf }}
Total in range—{{ collect($buckets)->sum('new') }}{{ collect($buckets)->sum('done') }}—
Aftercare clients — status & progress @foreach($aftercareByStatus as $st => $n) {{ ucwords(str_replace('_',' ',$st)) }}: {{ $n }} @endforeach
@forelse($aftercare as $c) @php $notes = $c->supervisionOrders->flatMap->notes->sortByDesc('reported_on'); $latest = $notes->first(); @endphp @empty@endforelse
SerialNameCategoryOfficerDate released StatusPR 2A recordsLatest progressInterventionsEmpowermentCompletion
{{ $c->serial_number }} {{ optional($c->prisoner)->name }} {{ config('probation.aftercare_categories')[$c->aftercare_category] ?? 'Borstal' }} {{ optional($c->officer)->name ?? '—' }} {{ optional($c->date_released)->format('d M Y') ?? '—' }} {{ ucwords(str_replace('_',' ',$c->status)) }} {{ $notes->count() }} @if($latest){{ optional($latest->reported_on)->format('d M Y') }}: {{ \Illuminate\Support\Str::limit($latest->progress ?? $latest->discussions, 70) }}@else — @endif {{ $c->interventions->count() }} {{ $c->empowerments->map(fn ($e) => ucwords(str_replace('_',' ',$e->type)) . ' (' . $e->status . ')')->implode(', ') ?: '—' }} {{ $c->completion ? \App\Models\ProbationCase::completionLabel($c->completion->mode) : 'Ongoing' }}
No aftercare clients yet.
@endsection