@extends('layouts.master') @section('title', 'Detail Retur Faskes — ' . $retur->nomor) @section('styles') @endsection @section('content')

{{ $retur->nomor }}

Penjualan → Retur Faskes → Detail
{{-- Tombol sesuai status --}} @if($retur->isDraft() || $retur->isDirevisi()) @can('retur_kso.edit') Edit @endcan @can('retur_kso.validasi')
@csrf
@endcan @can('retur_kso.delete') @if($retur->isDraft()) @endif @endcan @endif @if($retur->canRevisi()) @can('retur_kso.batal') @endcan @endif @if($retur->isDivalidasi()) @can('retur_kso.process') Verifikasi Fisik @endcan @endif @if(!$retur->isDraft()) @endif Kembali
@if(session('success')) @endif @if(session('warning')) @endif
{{-- Kiri: Info + Items --}}
{{-- Info Header --}}
Nomor Retur
{{ $retur->nomor }}
Status
@php $badge = match($retur->status) { 'draft' => 'secondary', 'divalidasi' => 'primary', 'direvisi' => 'warning', 'selesai' => 'success', default => 'secondary', }; $label = match($retur->status) { 'draft' => 'Draft', 'divalidasi' => 'Divalidasi', 'direvisi' => 'Perlu Revisi', 'selesai' => 'Selesai', default => $retur->status, }; @endphp {{ $label }}
Faskes
{{ $retur->nama_faskes }}
@if($retur->gudangKso)
Gudang: {{ $retur->gudangKso->nama }}
@endif
Dibuat Oleh
{{ $retur->dibuatOleh?->nama ?? '—' }}
{{ $retur->created_at?->format('d/m/Y H:i') }}
@if($retur->catatan_sales)
Catatan Sales
{{ $retur->catatan_sales }}
@endif @if($retur->catatan_revisi)
Catatan Revisi
{{ $retur->catatan_revisi }}
@endif
{{-- Tabel Item --}}
Item Retur {{ $retur->items->count() }} item
@if(($retur->faskes?->mode_pengiriman ?? '') === 'per_lot') @endif @foreach($retur->items as $i => $item) @php $sjKey = $item->no_serial ? 'sn:'.$item->no_serial : ($item->no_lot ? 'lot:'.$item->no_lot : null); $nomorSj = $sjKey ? array_shift($sjLotQueue[$sjKey]) : null; @endphp @if(($retur->faskes?->mode_pengiriman ?? '') === 'per_lot') @endif @endforeach
No Nama BarangNo. Surat JalanNo. LOT No. Serial Tgl. ED Qty Kondisi Verifikasi
{{ $i + 1 }} {{ $item->nama_barang }}{{ $nomorSj ?: '—' }}{{ $item->no_lot ?: '—' }} {{ $item->no_serial ?: '—' }} {{ $item->tanggal_kedaluwarsa?->format('d/m/Y') ?? '—' }} {{ $item->qty }} {{ $item->satuan }} @php $kBadge = match($item->kondisi) { 'baik' => 'success', 'rusak' => 'danger', 'kedaluwarsa' => 'warning', default => 'secondary', }; @endphp {{ ucfirst($item->kondisi) }} @if($item->isVerified()) Verified @if($item->ai_confidence)
AI: {{ $item->ai_confidence }}
@endif @else Belum @endif
{{-- Kanan: Activity Log --}}
Riwayat Aktivitas
@if($retur->logs->isEmpty())
Belum ada aktivitas
@else
@foreach($retur->logs->sortBy('created_at') as $log) @php $aksi = $log->aksi; $dotClass = match($aksi) { 'dibuat' => 'th-dibuat', 'divalidasi' => 'th-divalidasi', 'ditolak' => 'th-ditolak', 'direvisi' => 'th-direvisi', 'selesai' => 'th-selesai', default => 'th-dibuat', }; $aksiLabel = match($aksi) { 'dibuat' => 'Dibuat', 'divalidasi' => 'Divalidasi', 'ditolak' => 'Ditolak', 'direvisi' => 'Direvisi', 'selesai' => 'Selesai', default => ucfirst($aksi), }; @endphp
{{ $aksiLabel }}
{{ $log->dilakukanOleh?->nama ?? '—' }} • {{ $log->created_at?->format('d/m/Y H:i') }}
@if($log->keterangan)
{{ $log->keterangan }}
@endif @if($log->foto_path) @endif
@endforeach
@endif
{{-- Card Foto Retur --}}
Foto Retur
@php $fotos = $retur->logs->filter(fn($l) => $l->foto_path)->values(); @endphp {{ $fotos->count() }} foto
@if($fotos->isEmpty())
Belum ada foto yang diupload.
@else
@foreach($fotos as $log)
Foto {{ $loop->iteration }} @if($log->keterangan)
{{ $log->keterangan }}
@endif
@endforeach
@endif
{{-- Modal Cetak PDF --}} {{-- Modal Revisi --}} {{-- Modal Tolak --}} @endsection @section('scripts') @endsection