@php $filters = ['Semua', 'Belum Dibalas', 'Aktif', 'Risiko Tinggi', 'Hari Ini', 'Selesai']; $isNutritionistHistory = trim((string) ($expertId ?? '')) !== ''; $selectedChild = $selectedRoom?->child; $measurements = $selectedChild?->measurements ?? collect(); $latest = $measurements->first(); $status = \App\Helpers\NutritionStatusHelper::getStatus($latest); $formatAge = function ($child, $measurement) { $months = $measurement?->umur_bulan; if ($months === null && $child?->tanggal_lahir) { $months = (int) $child->tanggal_lahir->diffInMonths(now()); } if ($months === null) return '-'; $months = (int) round((float) $months); $years = intdiv($months, 12); $remaining = $months % 12; return $years > 0 ? "{$years} Tahun {$remaining} Bulan" : "{$months} Bulan"; }; $zText = fn ($value) => $value === null || $value === '' ? '-' : sprintf('%+.2f SD', (float) $value); $idTime = fn ($date, string $format = 'H:i') => $date ? $date->copy()->timezone('Asia/Bangkok')->format($format) : '-'; $idHuman = fn ($date) => $date ? $date->copy()->timezone('Asia/Bangkok')->diffForHumans() : '-'; $roomStatusLabel = function ($room) { if (!$room) return 'Selesai'; if ((int) $room->unread_count > 0) return 'Belum Dibalas'; return in_array($room->status, ['selesai', 'closed', 'resolved'], true) ? 'Selesai' : 'Aktif'; }; $roomStatusClass = fn ($label) => match ($label) { 'Belum Dibalas' => 'sg-status-orange', 'Aktif' => 'sg-status-green', default => 'sg-status-gray', }; @endphp
Data konsultasi gagal dimuat

{{ $isNutritionistHistory ? 'Riwayat Konsultasi Ahli Gizi' : 'Monitoring Konsultasi' }}

{{ $isNutritionistHistory ? 'Riwayat konsultasi yang ditangani oleh '.(($expertName ?? '') ?: ($selectedRoom?->expert_name ?? 'ahli gizi')).'.' : 'Pemantauan aktivitas konsultasi antara orang tua dan ahli gizi.' }}

@if ($isNutritionistHistory) Kembali ke Ahli Gizi @endif
Mode Monitoring Admin
Admin hanya dapat melihat percakapan konsultasi.
@if ($selectedRoom) @php($selectedLabel = $roomStatusLabel($selectedRoom))
{{ strtoupper(substr($selectedRoom->user?->name ?? 'O', 0, 1)) }}
{{ $selectedRoom->user?->name ?? 'Orang tua' }}
Anak: {{ $selectedRoom->child?->nama ?? '-' }} - Terakhir aktif {{ $idHuman($selectedRoom->last_message_at) }}
{{ $selectedLabel }}
@if ($latest)
Update Perkembangan Anak
BB
{{ number_format((float) $latest->berat, 1) }} kg
TB
{{ number_format((float) $latest->tinggi, 1) }} cm
Status
{{ $status }}
{{ $latest->tanggal_ukur?->format('d M') ?? '-' }}
@endif @forelse ($selectedRoom->messages as $message) @php($isExpert = in_array($message->sender_type, ['expert', 'nutritionist', 'ahli_gizi'], true))
{{ $isExpert ? ($selectedRoom->expert_name ?? 'Ahli Gizi') : ($selectedRoom->user?->name ?? 'Orang Tua') }} - {{ $idTime($message->created_at, 'd M Y H:i') }}
{{ $message->message }}
@empty
Belum ada pesan pada konsultasi ini.
@endforelse
@else
Belum ada aktivitas konsultasi.
@endif