@php $fmt = static function ($v) { $v = (float) $v; return number_format($v, abs($v - round($v)) > 0.0001 ? 2 : 0, ',', '.'); }; $showRealCols = $spb && $realizedTotal > 0; @endphp @if (session('message'))
{{ session('message') }}
@endif @if ($spb && $this->locked()) {{-- ======================== TAMPILAN DOKUMEN BATAL ======================== --}}

SPB {{ $spb->document_no }}

Batal
Kembali

No. SPB

{{ $spb->document_no }}

Tanggal

{{ $spb->document_date?->format('d/m/Y') }}

Dari Gudang

{{ $spb->fromWarehouse?->name ?? '-' }}

Ke Gudang

{{ $spb->toWarehouse?->name ?? '-' }}

Lokasi Pengiriman

{{ $spb->delivery_location ?? '-' }}

PIC

{{ $spb->pic?->name ?? '-' }}

@if ($spb->remark)

Keterangan

{{ $spb->remark }}

@endif
@forelse ($spb->items as $it) @empty @endforelse
Kode Material Satuan Qty Diminta Dikirim Sisa Keterangan
{{ $it->inventoryItem?->code ?? '-' }} {{ $it->inventoryItem?->name ?? '-' }} {{ $it->unit?->name ?? '-' }} {{ $fmt($it->quantity) }} {{ $fmt($it->transferred_quantity) }} {{ $fmt($it->remain_quantity) }} {{ $it->remark ?? '-' }}
Tidak ada item.
Kembali ke Daftar

Dokumen ini telah dibatalkan — permintaan tidak diproses.

@else {{-- ======================== FORM (BARU / EDIT SAAT AKTIF) ======================== --}}

{{ $spb ? 'Edit SPB ' . $spb->document_no : 'SPB Baru' }}

Setara menu legacy "Material Transfer Request" — permintaan transfer material antar gudang. Dokumen tidak mengubah stok; realisasi dilakukan lewat Material Transfer.

Kembali
@if ($message)
{{ $message }}
@endif @error('_form')
{{ $message }}
@enderror @if ($spb)
{{ $this->statusLabel() }} Qty diminta total {{ $fmt($spb->items->sum('quantity')) }} Dikirim {{ $fmt($spb->items->sum('transferred_quantity')) }} Sisa {{ $fmt($spb->items->sum('remain_quantity')) }} @if ((float) $spb->items->sum('declined_quantity') > 0) Ditolak {{ $fmt($spb->items->sum('declined_quantity')) }} @endif
@endif
@error('document_date')

{{ $message }}

@enderror
@error('from_warehouse_id')

{{ $message }}

@enderror
@error('to_warehouse_id')

{{ $message }}

@enderror

Detail Item

@if ($showRealCols) @endif @forelse ($items as $i => $row) @if ($showRealCols) @endif @empty @endforelse
Material Satuan Qty DimintaDikirim SisaKeterangan
{{ $fmt($row['transferred'] ?? 0) }} {{ $fmt($row['remain'] ?? 0) }}
Belum ada item. Klik "Tambah Baris" untuk mulai.
@error('items')

{{ $message }}

@enderror @error('items.*.inventory_item_id')

Material wajib dipilih di setiap baris.

@enderror @error('items.*.quantity')

Qty wajib diisi dan harus lebih dari 0.

@enderror

SPB adalah permintaan — stok tidak berubah di sini. Qty yang disetujui akan dikirim lewat dokumen Material Transfer (menu Transfer → Material Transfer).

Bila SPB sudah direalisasi sebagian: qty per baris tidak bisa diturunkan di bawah yang sudah dikirim, material baris & arah gudang terkunci.

@if ($spb) Cetak SPB @endif
@endif