Skip to content

Getting Started

El Worker de Sugerencias de Reabastecimiento es un servicio diseñado para actualizar automáticamente las sugerencias en las alertas de reabastecimiento basándose en transacciones de inventario. Procesa mensajes de transacciones de inventario desde una cola y actualiza las sugerencias para las alertas de reabastecimiento en el sistema, ayudando a optimizar la gestión de inventario y las operaciones de reabastecimiento.

  • Node.js: Entorno de ejecución (v20+)
  • TypeScript: Lenguaje de programación
  • Express: Framework web para el endpoint de verificación de salud
  • AWS SDK: Para interactuar con AWS SQS
  • Axios: Para comunicación HTTP con servicios externos
  • cron: Para programar trabajos periódicos
  • @justomx/either: Para manejo funcional de errores
  • @justomx/context: Para gestión de contexto
  • @justomx/http-client: Para configuración del cliente HTTP

El worker interactúa con los siguientes servicios externos:

  1. API de Gestor de Reabastecimiento: Utilizado para recuperar y actualizar alertas de reabastecimiento

    • Endpoint: Configurado a través de la variable de entorno API_RESTOCKING_MANAGER_URL
    • Operaciones:
      • Obtener alertas de reabastecimiento activas por EAN de producto
      • Actualizar sugerencias para una alerta de reabastecimiento
  2. API de Gestor de Inventario: Utilizado indirectamente a través del Gestor de Reabastecimiento

    • Endpoint: Configurado a través de la variable de entorno API_INVENTORY_MANAGER_URL

Este worker forma parte de un ecosistema más amplio de microservicios para la gestión de inventario y operaciones:

  • Consume eventos de transacciones de inventario desde colas SQS
  • Se comunica con el servicio de Gestor de Reabastecimiento para actualizar sugerencias
  • Interactúa indirectamente con el servicio de Gestor de Inventario a través del Gestor de Reabastecimiento

El punto de entrada principal del worker es src/index.ts, que:

  1. Inicializa un trabajo cron basado en la programación configurada
  2. Configura el endpoint de verificación de salud
  3. Crea la instancia del worker con las dependencias necesarias
  4. Ejecuta el worker en cada activación del cron
  5. Maneja errores y mantiene el estado de salud

El worker sigue un enfoque de arquitectura limpia, separando las preocupaciones en capas de dominio, aplicación e infraestructura, haciéndolo mantenible y testeable.