Laporan & Analitik

Statistik dan performa antrian

← Kembali

Total Tiket

{{ $stats['total_tickets'] }}

Selesai

{{ $stats['completed'] }}

@if($stats['total_tickets'] > 0)

{{ round($stats['completed'] / $stats['total_tickets'] * 100) }}%

@endif

Rata-rata Layanan

{{ $stats['avg_service_time'] }}

menit

Rata-rata Tunggu

{{ $stats['avg_wait_time'] }}

menit

Status Tiket

@php $statuses = [ ['label' => 'Menunggu', 'count' => $stats['waiting'], 'color' => 'bg-amber-500'], ['label' => 'Selesai', 'count' => $stats['completed'], 'color' => 'bg-green-500'], ['label' => 'Dilewati', 'count' => $stats['skipped'], 'color' => 'bg-orange-500'], ['label' => 'Dibatalkan', 'count' => $stats['cancelled'], 'color' => 'bg-red-500'], ]; @endphp @foreach($statuses as $st)
{{ $st['label'] }}
{{ $st['count'] }}
@endforeach

Feedback Pelanggan

{{ $feedbackStats['avg_rating'] > 0 ? $feedbackStats['avg_rating'] : '-' }}

@for($i = 1; $i <= 5; $i++) @endfor

{{ $feedbackStats['total'] }} feedback diterima

Distribusi Per Jam

@php $maxHourly = max($hourlyData) ?: 1; @endphp @foreach($hourlyData as $hour => $count) @if($hour >= 7 && $hour <= 18)
{{ $count }}
{{ str_pad($hour, 2, '0', STR_PAD_LEFT) }}
@endif @endforeach

Per Lokasi

@foreach($locationStats as $loc)

{{ $loc->name }}

{{ $loc->code }}

{{ $loc->total_tickets }}

{{ $loc->completed_tickets }} selesai

@endforeach @if($locationStats->isEmpty())

Belum ada data.

@endif

Performa Operator

@foreach($operatorStats as $op)

{{ $op->name }}

{{ $op->location?->name ?? '-' }}

{{ $op->tickets_served }}

tiket dilayani

@endforeach @if($operatorStats->isEmpty())

Belum ada data.

@endif