Punto de venta
{{ sucursalActual?.nombre || 'Selecciona una sucursal' }}
Sin productos que coincidan con la búsqueda.
Carrito
Inventario
{{ sucursalActual?.nombre || 'Vista consolidada — todas las sucursales' }}
Productos activos
{{ productos.length }}
Valor de inventario (costo)
Bs {{ fmt(valorInventarioCosto) }}
Alertas de stock bajo
{{ bajoStock.length }}
| SKU / Código | Producto | Categoría | Costo / Venta | Stock | Acciones |
|---|---|---|---|---|---|
|
{{ p.sku }} {{ p.codigo_barras }} |
{{ p.nombre }} {{ p.marca }} · {{ p.modelo }} |
{{ p.categoria }}
{{ p.calidad }} |
Bs {{ fmt(p.costo) }} Bs {{ fmt(p.precio) }} |
{{ estadoStockLabel(p) }} ({{ p.stock }}) | |
| Sin productos que coincidan | |||||
| Producto | Ubicación | Stock actual | Stock mínimo | Acción |
|---|---|---|---|---|
|
{{ p.nombre }} {{ p.marca }} · {{ p.modelo }} · {{ p.sku }} |
{{ p.ubicacion || '—' }} | {{ p.stock }} | {{ p.stock_minimo }} | |
| Sin alertas de stock bajo 🎉 | ||||
| Fecha | Producto | Sucursal | Tipo | Cantidad | Usuario / Nota |
|---|---|---|---|---|---|
| {{ formatFecha(m.creado_en) }} |
{{ m.producto_nombre }} {{ m.sku }} |
{{ m.sucursal_nombre }} | {{ movimientoLabel(m.tipo) }} | {{ m.cantidad >= 0 ? '+' : '' }}{{ m.cantidad }} | {{ m.usuario_nombre }} · {{ m.nota }} |
| Sin movimientos registrados | |||||
Traslados entre sucursales
Pendientes de recibir en {{ sucursalActual?.nombre }}
| Origen → Destino | Productos | Estado | Fecha envío |
|---|---|---|---|
| {{ t.sucursal_origen }} {{ t.sucursal_destino }} | {{ t.items.map(i => i.nombre + ' x' + i.cantidad).join(', ') }} | {{ estadoLabel(t.estado) }} | {{ formatFecha(t.fecha_envio) }} |
| Sin traslados registrados | |||
Usuarios
| Nombre | Usuario | Rol | Sucursal |
|---|---|---|---|
| {{ u.nombre }} | {{ u.nombre_usuario }} | {{ rolLabel(u.rol) }} | {{ u.sucursal_nombre || '—' }} |
| Sin usuarios registrados | |||
Reporte consolidado
Ventas por sucursal (30 días)
Valor de inventario por sucursal (a costo)