{ toasts = toasts.filter(t => t.id !== Date.now()) }, 3000)"
class="fixed bottom-6 right-6 z-50 flex flex-col gap-2">
Stock Disponible
{{ number_format($totalKg, 1) }} kg
Bobinas Disponibles
{{ number_format($totalBobinas) }}
En Producción
{{ number_format($inProduction->sum('en_prod_kg'), 1) }} kg
Bobinas en Prod.
{{ number_format($inProduction->sum('en_prod_bob')) }}
Sol. Pendientes
{{ $pendingIssues->count() }}
Devoluciones Pend.
{{ $pendingReturns->count() }}
Lotes de Hilo en Inventario
{{ $lotes->count() }} lotes
| Código |
Lote Proveedor |
Tipo Hilo |
TÃtulo |
Proveedor |
Kg Disp. |
Bobinas Disp. |
Estado |
Fecha Rec. |
Acciones |
@forelse($lotes as $l)
@php
$isSelected = $l->id === $selectedLoteId;
@endphp
{{ $l->id }} |
{{ $l->lote_proveedor ?: '—' }} |
{{ $l->tipo_hilo }} |
{{ $l->titulo ?: '—' }} |
{{ $l->proveedor ?: '—' }} |
{{ number_format($l->available_kg, 1) }} kg |
{{ $l->available_bobinas }} |
{{ $l->estado }}
|
{{ $l->fecha_recepcion?->format('Y-m-d') ?: '—' }} |
@if($l->estado === 'APROBADO')
@elseif($l->estado === 'RECHAZADO')
@else
—
@endif
|
@empty
| No se encontraron lotes de hilado con los filtros seleccionados. |
@endforelse
@if($selectedLote)
📦 Kardex del Lote: {{ $selectedLote->id }} ({{ $selectedLote->titulo ?: $selectedLote->tipo_hilo }})
Proveedor
{{ $selectedLote->proveedor ?: '—' }}
Fecha Recepción
{{ $selectedLote->fecha_recepcion?->format('Y-m-d') ?: '—' }}
Cargamento Inicial
{{ number_format($selectedLote->kg_inicial, 1) }} kg / {{ $selectedLote->bobinas_iniciales }} bobinas
Valor/Estado
{{ $selectedLote->estado }}
Historial de Movimientos (Kardex)
| Fecha |
Tipo |
Referencia / Partida |
Bobinas |
Kg |
Saldo Bobinas |
Saldo Kg |
@php
$balKg = 0;
$balBob = 0;
@endphp
@forelse($selectedLoteMovements as $m)
@php
$isEntry = $m->tipo === 'ENTRADA' || $m->tipo === 'DEVOLUCION';
if ($isEntry) {
$balKg += $m->kg;
$balBob += $m->bobinas;
} else {
$balKg -= $m->kg;
$balBob -= $m->bobinas;
}
@endphp
| {{ $m->fecha?->format('Y-m-d') ?: '—' }} |
{{ str_replace('_', ' ', $m->tipo) }}
|
{{ $m->referencia ?: ($m->partida?->codigo ?: '—') }} |
{{ $isEntry ? '+' : '−' }}{{ $m->bobinas }} |
{{ $isEntry ? '+' : '−' }}{{ number_format($m->kg, 1) }} kg |
{{ $balBob }} |
{{ number_format($balKg, 1) }} kg |
@empty
| Sin movimientos registrados para este lote. |
@endforelse
@endif
📋 Solicitudes de Hilo — Pendientes de Despacho
{{ $pendingIssues->count() }} pendientes
| Solicitud ID |
Fecha Solicitud |
Lote Hilado |
Partida |
Uso |
Bobinas Solic. |
Kg Solic. |
Solicitado Por |
Acciones |
@forelse($pendingIssues as $s)
{{ $s->id }} |
{{ $s->fecha_solicitud?->format('Y-m-d') ?: '—' }} |
{{ $s->lote_id }} ({{ $s->lot?->codigo }}) |
{{ $s->partida?->codigo ?: '—' }} |
{{ $s->componente ?: $s->uso }}
|
{{ $s->bobinas_solicitadas }} |
{{ number_format($s->kg_solicitados, 1) }} kg |
{{ $s->solicitado_por }} |
|
@empty
| No hay solicitudes de hilo pendientes de entrega. |
@endforelse
↩ Devoluciones de Hilo — Confirmación en Bodega
{{ $pendingReturns->count() }} pendientes
| Devolución ID |
Fecha Solicitud |
Lote Hilado |
Partida |
Uso / Componente |
Bobinas Devueltas |
Kg Devueltos |
Reportado por |
Acciones |
@forelse($pendingReturns as $d)
{{ $d->id }} |
{{ $d->fecha_solicitud?->format('Y-m-d') ?: '—' }} |
{{ $d->lote_id }} |
{{ $d->partida?->codigo ?: '—' }} |
{{ $d->componente ?: '—' }}
|
{{ $d->bobinas_prod }} |
{{ number_format($d->kg_prod, 1) }} kg |
{{ $d->solicitado_por }} |
|
@empty
| No hay devoluciones pendientes de confirmación. |
@endforelse
Hilo en Producción Activo
{{ $inProduction->count() }} registros
| Partida |
ArtÃculo |
Lote Hilado |
Kg Emitidos |
Bobinas Emitidas |
Kg Devueltos |
Bobinas Devueltas |
Kg en Prod. |
Bobinas en Prod. |
Estado Partida |
@forelse($inProduction as $r)
@php
$hasBalance = $r->en_prod_kg > 0;
@endphp
| {{ $r->partida?->codigo ?: $r->partida_id }} |
{{ $r->partida?->articulo_id ?: '—' }} |
{{ $r->lot?->codigo ?: $r->lote_id }} |
{{ number_format($r->emitido_kg, 1) }} kg |
{{ $r->emitido_bob }} |
{{ $r->devuelto_kg > 0 ? number_format($r->devuelto_kg, 1) . ' kg' : '—' }} |
{{ $r->devuelto_bob > 0 ? $r->devuelto_bob : '—' }} |
{{ number_format($r->en_prod_kg, 1) }} kg |
{{ $r->en_prod_bob }} |
{{ $r->partida?->estado ?: '—' }}
|
@empty
| No hay hilado en producción actualmente. |
@endforelse
@if($showReceiptModal)
@endif
@if($showConfirmIssueModal)
Confirmar Entrega de Hilo
@endif
@if($showConfirmReturnModal)
Confirmar Devolución
@endif