Class ControlStock

java.lang.Object
model.control.ControlStock

public class ControlStock extends Object
Clase que gestiona el control de stock del inventario. Permite verificar articulos con stock minimo, generar alertas, calcular rotacion de inventario y enviar notificaciones por email.
Version:
1.0
Author:
ISC Israel de Jesus Mar Parada
See Also:
  • Constructor Details

    • ControlStock

      public ControlStock()
      Constructor del control de stock. Inicializa la fecha de ultima revision con la fecha y hora actual.
  • Method Details

    • VerificarStocksMinimos

      public List<Articulo> VerificarStocksMinimos(Inventario inventario)
      Verifica los articulos que tienen stock por debajo del minimo requerido. Actualiza la lista de articulos bajo stock y la fecha de revision.
      Parameters:
      inventario - Inventario a verificar
      Returns:
      Lista de articulos con stock insuficiente
    • GenerarAlertaStock

      public String GenerarAlertaStock(Articulo articulo)
      Genera un mensaje de alerta para un articulo con stock bajo.
      Parameters:
      articulo - Articulo con stock insuficiente
      Returns:
      Mensaje de alerta formateado
    • CalcularRotacionStock

      public BigDecimal CalcularRotacionStock(Articulo articulo, int periodo)
      Calcula la rotacion de stock de un articulo en un periodo determinado. Simulacion basada en ventas hipoteticas (30% del stock actual).
      Parameters:
      articulo - Articulo a analizar
      periodo - Periodo en dias (no utilizado en simulacion)
      Returns:
      Indice de rotacion de stock
    • enviarAlertasPorEmail

      public void enviarAlertasPorEmail(Inventario inventario)
      Envia alertas por email para todos los articulos con stock bajo. Simula el envio mostrando mensajes en consola.
      Parameters:
      inventario - Inventario a verificar
    • getArticulosBajoStock

      public List<Articulo> getArticulosBajoStock()
      Returns:
      Lista de articulos con stock bajo
    • setArticulosBajoStock

      public void setArticulosBajoStock(List<Articulo> articulosBajoStock)
      Parameters:
      articulosBajoStock - Nueva lista de articulos bajo stock
    • getFechaUltimaRevision

      public LocalDateTime getFechaUltimaRevision()
      Returns:
      Fecha de la ultima revision
    • setFechaUltimaRevision

      public void setFechaUltimaRevision(LocalDateTime fechaUltimaRevision)
      Parameters:
      fechaUltimaRevision - Nueva fecha de revision