Sincronización de recordatorios de stock
Este script actualiza la cantidad mínima deseada en los recordatorios de stock (recorStock) para todos los productos activos, basándose en el tipo de usuario al que pertenecen.
🔍 Ubicación
src/sincronizarRecordatorios.ts
📌 Descripción general
-
Constantes de umbrales
UMBRAL_INDIVIDUAL→ 2 unidades (usuarios individuales).UMBRAL_EMPRESARIAL→ 30 unidades (usuarios empresariales).
-
Consulta inicial
Se obtienen todos los productos no eliminados (eliminadoEn: null) junto con el tipo de usuario propietario. -
Cálculo del umbral deseado
- Si el usuario es de tipo
"individual", se asigna el umbral de 2 unidades. - En cualquier otro caso, se asigna el umbral empresarial (30 unidades).
- Si el usuario es de tipo
-
Verificación y actualización
- Se busca un registro existente en
recorStockpara el producto. - Si existe y su cantidad mínima es distinta del umbral calculado, se actualiza usando el
idRecordatoriocomo clave única.
- Se busca un registro existente en
-
Cierre de conexión
Al finalizar (con éxito o con error), se desconecta Prisma de la base de datos.
🔗 Uso
Este archivo se ejecuta como script independiente.
Se puede correr con:
ts-node src/sincronizarRecordatorios.ts
Su propósito principal es alinear los valores de recordatorios de stock con las políticas definidas para cada tipo de usuario.
🧩 Relación con otros módulos
-
Base de datos:
- Tabla
productos(relación con usuario). - Tabla
recorStock(recordatorios de stock).
- Tabla
-
Cliente Prisma:
utils/prismaClient.ts.
⚠️ Consideraciones
- El script modifica datos directamente en la base de datos; debe ejecutarse con precaución.
- El cálculo de umbral está fijado en constantes; si las políticas cambian, se debe actualizar el archivo.
- Asume que
idRecordatorioes la clave única correcta para actualizar enrecorStock. - No crea recordatorios si no existen, solo actualiza los existentes.
- Debe ejecutarse en un entorno donde
prismaesté correctamente configurado y con acceso a la base de datos.