@extends('layouts.admin.master') @section('content')

{{ $aduan->kode_tiket }}

{{ $aduan->judul }}

Kembali ke Daftar {{ $aduan->status_label }}
@if (session('success'))
{{ session('success') }}
@endif @if (session('error'))
{{ session('error') }}
@endif
Detail Aduan
Pelapor
{{ $aduan->nama_pelapor }}
{{ $aduan->no_hp ?: ($aduan->email_pelapor ?: '-') }}
Kategori
{{ $aduan->category?->name ?? 'Tanpa kategori' }}
{{ $aduan->priority_label }} | {{ $aduan->severity_label }}
Layanan Terkait
{{ $aduan->service?->nama ?? '-' }}
OPD Tujuan
{{ $aduan->targetOrganization?->short_name ?: $aduan->targetOrganization?->name ?: 'Belum diarahkan' }}
Petugas / User
{{ $aduan->assignedUser?->name ?? 'Belum ditugaskan' }}
Assignment Lapangan
{{ $aduan->fieldAssignment?->judul ?? 'Belum dibuat' }}
{{ $aduan->fieldAssignment ? (\App\Models\Kegiatan\Kegiatan::$statuses[$aduan->fieldAssignment->status] ?? ucfirst($aduan->fieldAssignment->status)) : 'Modul kegiatan existing belum dipakai untuk tiket ini' }}
Waktu Lapor
{{ optional($aduan->waktu_lapor)->format('d M Y H:i') ?: '-' }}
Batas Respon
{{ optional($aduan->batas_respon_at)->format('d M Y H:i') ?: '-' }}
Batas Selesai
{{ optional($aduan->batas_selesai_at)->format('d M Y H:i') ?: '-' }}
Level Eskalasi
{{ (int) ($aduan->escalation_level ?? 0) }}
Eskalasi terakhir {{ optional($aduan->last_escalated_at)->format('d M Y H:i') ?: 'belum ada' }}
Assignment Terakhir
{{ optional($aduan->last_assignment_at)->format('d M Y H:i') ?: 'Belum ada assignment' }}
Lokasi
{{ $aduan->address_text ?: 'Belum ada alamat rinci' }}
Uraian
{{ $aduan->uraian }}
@if ($aduan->resolution_summary)
Ringkasan Penyelesaian
{{ $aduan->resolution_summary }}
@endif @if ($aduan->closure_note)
Catatan Penutupan
{{ $aduan->closure_note }}
@endif
Update Status
@csrf
Isi saat status bergerak ke Selesai. Jika dibiarkan kosong, sistem akan memakai catatan status bila ada.
Isi saat status Ditolak atau Ditutup agar alasan final tercatat.
Disposisi Dasar
@csrf
Assignment Lapangan

Reuse modul kegiatan dan petugas yang sudah ada.

@if ($petugas->isEmpty() && $penanggungJawabs->isEmpty())
Data petugas dan penanggung jawab belum tersedia. Assignment lapangan bisa diaktifkan setelah master kegiatan diisi.
@else
@csrf
Petugas pertama akan dipakai sebagai petugas utama assignment.
@endif
Peta Lokasi
Lampiran
@forelse ($aduan->attachments as $attachment)
{{ $attachment->original_name }}
{{ strtoupper($attachment->source) }} | {{ number_format($attachment->size / 1024, 1) }} KB
@empty
Belum ada lampiran.
@endforelse
Rating Warga
@if ($aduan->rating)
{{ $aduan->rating->rating }}/5
{{ $aduan->rating->rated_by_name ?: 'Warga' }}

{{ $aduan->rating->comment ?: 'Belum ada catatan tambahan.' }}

@else
Belum ada rating dari warga.
@endif
Aset Terkait

Hubungkan tiket ini ke aset kota agar tindak lanjut maintenance dan command center nyambung.

@if ($availableAssets->isNotEmpty())
@csrf
@endif @forelse ($aduan->assetLinks as $link)
{{ $link->asset?->asset_code ?: 'Aset terhapus' }}
{{ $link->asset?->name ?: '-' }}
{{ \App\Models\SmartCity\AssetComplaintLink::RELATION_TYPES[$link->relation_type] ?? $link->relation_type }}
{{ $link->asset?->organization?->short_name ?: $link->asset?->organization?->name ?: 'Belum ada OPD' }}
@if ($link->asset) Detail Aset @endif
@csrf @method('DELETE')
@if ($link->note)
{{ $link->note }}
@endif
@empty
Belum ada aset yang dikaitkan ke pengaduan ini.
@endforelse
Log Assignment
@forelse ($assignmentLogs as $log)
{{ $log->aksi }}
{{ optional($log->created_at)->format('d M Y H:i') ?: '-' }}
{{ $log->user?->name ?: 'Sistem' }}
@empty
Belum ada log assignment untuk tiket ini.
@endforelse
Timeline Status
@forelse ($aduan->statusLogs as $log)
{{ \App\Models\Pengaduan\Aduan::STATUSES[$log->to_status] ?? $log->to_status }}
Dari {{ $log->from_status ? (\App\Models\Pengaduan\Aduan::STATUSES[$log->from_status] ?? $log->from_status) : 'awal tiket' }}
{{ optional($log->changed_at)->format('d M Y H:i') ?: '-' }}
{{ $log->actor?->name ?: 'Sistem' }}
@if ($log->note)
{{ $log->note }}
@endif
@empty
Belum ada log status.
@endforelse
Riwayat Disposisi
@forelse ($aduan->dispositions as $disposition)
{{ $disposition->fromOrganization?->short_name ?: $disposition->fromOrganization?->name ?: 'Belum ada' }} {{ $disposition->toOrganization?->short_name ?: $disposition->toOrganization?->name ?: 'Belum ada' }}
PIC: {{ $disposition->assignedUser?->name ?: 'Belum dipilih' }}
@if ($disposition->status)
Status disposisi: {{ \Illuminate\Support\Str::headline($disposition->status) }}
@endif
{{ optional($disposition->disposed_at)->format('d M Y H:i') ?: '-' }}
{{ $disposition->actor?->name ?: 'Sistem' }}
@if ($disposition->accepted_at || $disposition->completed_at)
@if ($disposition->accepted_at) Diterima: {{ optional($disposition->accepted_at)->format('d M Y H:i') }} @endif @if ($disposition->accepted_at && $disposition->completed_at) | @endif @if ($disposition->completed_at) Selesai: {{ optional($disposition->completed_at)->format('d M Y H:i') }} @endif
@endif @if ($disposition->note)
{{ $disposition->note }}
@endif
@empty
Belum ada riwayat disposisi.
@endforelse
@endsection @section('stylesheet') @endsection @section('javascript') @endsection