{{-- resources/views/livewire/inventario/index.blade.php --}}
{{-- ── HEADER ──────────────────────────────────── --}}
📦 Inventario · Stock
Stock por bodega · ajustes manuales · alertas de mínimo
{{-- ── MENSAJES ─────────────────────────────────── --}} @if($mensaje_exito)
✅ {{ $mensaje_exito }}
@endif @if($mensaje_error)
❌ {{ $mensaje_error }}
@endif {{-- ── SELECTOR DE BODEGA ──────────────────────── --}}
@foreach($bodegas as $bodega) @endforeach
{{-- ── KPIs ────────────────────────────────────── --}} @if($totales)
Productos en bodega
{{ number_format($totales->total_productos) }}
⚠️ Bajo mínimo
{{ number_format($totales->alertas ?? 0) }}
Valor del inventario
₡{{ number_format($totales->valor_inventario ?? 0, 0) }}
@endif {{-- ── FILTROS ──────────────────────────────────── --}}
{{-- ── TABLA STOCK ──────────────────────────────── --}}
@forelse($stocks as $stock) @php $producto = $stock->producto; @endphp @empty @endforelse
Producto SKU · CABYS IVA Stock actual Stock mínimo Costo promedio Valor total Estado Ajuste
{{ $producto?->nombre }}
@if($producto?->es_medicamento)
💊 {{ $producto->forma_farmaceutica }}
@endif
{{ $producto?->sku }}
{{ $producto?->cabys_codigo }}
{{ $producto?->tarifa_iva }}% {{ number_format($stock->cantidad, 2) }} {{ $producto?->unidad_medida }} {{ $stock->stock_minimo > 0 ? number_format($stock->stock_minimo, 2) : '—' }} ₡{{ number_format($producto?->costo_promedio ?? 0, 2) }} ₡{{ number_format($stock->cantidad * ($producto?->costo_promedio ?? 0), 0) }} @if($stock->estaBajoMinimo()) ⚠️ Bajo mínimo @elseif($stock->cantidad <= 0) Sin stock @else ✓ Normal @endif
No hay productos en esta bodega con los filtros seleccionados
@if($stocks->hasPages())
{{ $stocks->links() }}
@endif
{{-- ── MODAL AJUSTE ─────────────────────────────── --}} @if($ajustando_id && $producto_ajustando)
✏️ Ajuste de stock
{{ $producto_ajustando->nombre }}
@if($ajuste_error)
❌ {{ $ajuste_error }}
@endif
{{ $producto_ajustando->unidad_medida }}
ℹ️ Todo ajuste queda registrado en el historial de movimientos con usuario, fecha y motivo.
@endif