@extends('layouts.master') @section('title', 'Detail Penggunaan Barang ' . $pb->nomor) @section('styles') @endsection @section('content')

Penggunaan Barang — {{ $pb->nomor }}

Gudang → Penggunaan Barang → Detail
@if($pb->isDraft()) Edit @endif @if($pb->isSelesai() && auth('internal')->user()->can('penggunaan_barang.validasi')) @endif @if($pb->isSelesai()) @endif Kembali
@if($pb->alasan_batal)
Pernah Dibatalkan — alasan: {{ $pb->alasan_batal }}
Oleh {{ $pb->dibatalkanOleh?->nama }} pada {{ $pb->dibatalkan_at?->format('d-m-Y H:i') }}
@endif
{{-- Kolom Kiri --}}
{{-- Informasi Penggunaan --}}
Informasi Penggunaan
Nomor
{{ $pb->nomor }}
Status
@if($pb->isDraft()) Draft @else Tervalidasi @endif
Tgl. Input
{{ $pb->created_at->format('d-m-Y H:i') }}
@if($pb->isSelesai())
Divalidasi Oleh
{{ $pb->diselesaikanOleh?->nama ?? '—' }} {{ $pb->diselesaikan_at?->format('d-m-Y H:i') }}
@endif
Tgl. Penggunaan
{{ $pb->tanggal_penggunaan?->format('d-m-Y') ?? '—' }}
Gudang
{{ $pb->nama_gudang }}
Dibuat Oleh
{{ $pb->dibuatOleh?->nama ?? '—' }}
@if($pb->keterangan)
Keterangan
{{ $pb->keterangan }}
@endif
{{-- Daftar Barang --}}
Daftar Barang ({{ $pb->total_item }} item)
@foreach($pb->items as $i => $item) @endforeach
No Barang Ukuran Satuan Qty Kondisi Stok yang Diambil Catatan
{{ $i + 1 }}
{{ $item->nama_barang }}
{{ $item->kode_barang }}
{{ $item->ukuran ?? '—' }} {{ $item->satuan ?? '—' }} {{ $item->qty }} @if(($item->kondisi ?? 'baik') === 'rusak') Rusak @else Baik @endif @if($item->itemStoks->isEmpty()) FEFO otomatis @else @foreach($item->itemStoks as $lot) @php $sn = $lot->no_serial ?? $lot->stok?->no_serial; @endphp
@if($sn)SN: {{ $sn }} @endif LOT: {{ $lot->no_lot ?: '—' }} @if($lot->tanggal_kedaluwarsa) — ED {{ $lot->tanggal_kedaluwarsa->format('d-m-Y') }} @endif × {{ $lot->qty_ambil }}
@endforeach @endif
{{ $item->catatan ?? '—' }}
{{-- Foto Penggunaan --}} @if($pb->fotos->isNotEmpty())
Foto Penggunaan
@foreach($pb->fotos as $foto)
Foto @if($foto->keterangan)
{{ $foto->keterangan }}
@endif
@endforeach
@endif
{{-- /col kiri --}} {{-- Kolom Kanan: Riwayat Aktivitas --}}
Riwayat Aktivitas
@if(isset($activities) && $activities->isNotEmpty()) @php $fieldLabels = [ 'status' => 'Status', 'keterangan' => 'Keterangan', 'alasan_batal' => 'Alasan batal', ]; $statusLabels = [ 'draft' => 'Draft', 'selesai' => 'Tervalidasi', 'batal' => 'Dibatalkan', ]; @endphp
@foreach($activities as $act) @php $rawDesc = $act->description; $props = $act->properties; if ($rawDesc === 'created') $desc = 'Draft dibuat'; elseif ($rawDesc === 'updated') $desc = 'Data diperbarui'; else $desc = $rawDesc; if (str_contains($rawDesc, 'dibuat') || $rawDesc === 'created') $cls = 'created'; elseif (str_contains($rawDesc, 'divalidasi') || str_contains($rawDesc, 'selesai')) $cls = 'validated'; elseif (str_contains($rawDesc, 'dibatalkan') || str_contains($rawDesc, 'batal')) $cls = 'cancelled'; elseif (str_contains($rawDesc, 'direvisi') || $rawDesc === 'updated') $cls = 'revised'; else $cls = 'default'; $old = $props->get('old', []); $new = $props->get('attributes', []); $keys = array_unique(array_merge(array_keys((array)$old), array_keys((array)$new))); $skipKeys = []; if (in_array($rawDesc, ['Penggunaan barang divalidasi','Penggunaan barang dibatalkan','Penggunaan barang direvisi ke draft'])) $skipKeys[] = 'status'; if ($rawDesc === 'created') $skipKeys = array_merge($skipKeys, ['status','keterangan','alasan_batal']); $keys = array_filter($keys, fn($k) => !in_array($k, $skipKeys)); @endphp
{{ $desc }}
oleh {{ $act->causer?->nama ?? 'Sistem' }}
{{ $act->created_at->format('d/m/Y H:i') }}
@if($props->has('alasan'))
Alasan: {{ $props->get('alasan') }}
@endif @if($props->has('extra')) @foreach((array)$props->get('extra') as $line)
{{ $line }}
@endforeach @endif @foreach($keys as $key) @php $label = $fieldLabels[$key] ?? $key; $oldVal = isset($old[$key]) ? ($statusLabels[$old[$key]] ?? $old[$key]) : null; $newVal = isset($new[$key]) ? ($statusLabels[$new[$key]] ?? $new[$key]) : null; @endphp @if($oldVal !== null || $newVal !== null)
{{ $label }}: @if($oldVal !== null){{ $oldVal }}@endif @if($newVal !== null){{ $newVal }}@endif
@endif @endforeach
@endforeach
@else
Belum ada aktivitas tercatat.
@endif
{{-- /col kanan --}}
{{-- /row --}}
{{-- Modal Batalkan --}} {{-- Modal Preview PDF --}} @endsection @section('scripts') @endsection