@extends('layouts.app') @section('content') @php $formatQty = fn ($value) => rtrim(rtrim(number_format((float) $value, 3, ',', '.'), '0'), ','); @endphp

🧪 Laporan Bahan Baku

Pantau stok bahan baku dan mutasi per periode

Reset

Total Bahan

{{ number_format($summary['total_materials']) }}

Bahan Aktif

{{ number_format($summary['active_materials']) }}

Stok Rendah

{{ number_format($summary['low_stock_materials']) }}

Nilai Stok (HPP Terakhir)

Rp {{ number_format($summary['total_stock_value'], 0, ',', '.') }}

Mutasi Periode

{{ number_format($movementSummary['total_rows']) }}

Qty Masuk

{{ $formatQty($movementSummary['in_qty']) }}

Qty Keluar + Waste

{{ $formatQty($movementSummary['out_qty']) }}

Qty Adjustment

{{ $formatQty($movementSummary['adjustment_qty']) }}

Ringkasan Stok Bahan

@forelse($materials as $material) @php $isLow = (float) $material->stock <= (float) $material->minimum_stock; @endphp @empty @endforelse
Bahan Kategori Satuan Stok Minimum HPP Terakhir Status

{{ $material->name }}

{{ $material->code ?: '-' }}

{{ $material->category ?: '-' }} {{ $material->unit }} {{ $formatQty($material->stock) }} {{ $formatQty($material->minimum_stock) }} Rp {{ number_format((float) $material->last_purchase_price, 0, ',', '.') }} @if(!$material->is_active) Nonaktif @elseif($isLow) Stok Rendah @else Normal @endif
Belum ada data bahan baku.
{{ $materials->appends(request()->except('mat_page'))->links() }}

Riwayat Mutasi Bahan

@forelse($movements as $movement) @php $typeClass = match ($movement->type) { 'in' => 'bg-emerald-100 text-emerald-700', 'out' => 'bg-red-100 text-red-700', 'waste' => 'bg-red-100 text-red-700', 'adjustment' => 'bg-amber-100 text-amber-700', default => 'bg-gray-100 text-gray-700', }; @endphp @empty @endforelse
Waktu Bahan Tipe Qty Sebelum Sesudah User Catatan
{{ $movement->created_at?->format('d/m/Y H:i') }} {{ $movement->rawMaterial?->name ?? '-' }} {{ strtoupper($movement->type) }} {{ $formatQty($movement->quantity) }} {{ $formatQty($movement->stock_before) }} {{ $formatQty($movement->stock_after) }} {{ $movement->user?->name ?? '-' }} {{ $movement->notes ?: '-' }}
Belum ada mutasi pada periode ini.
{{ $movements->appends(request()->except('mov_page'))->links() }}
@endsection