Skip to main content

Historial de Inventario

Este módulo define la estructura de datos utilizada para representar los cambios históricos en los productos del inventario. La interfaz HistorialInventarioDTO es útil para registrar y auditar las acciones realizadas sobre un producto, como actualizaciones de cantidad o precio.


🔍 Ubicación

src/middleware/historial.ts


🧩 Definición de la interfaz

export interface HistorialInventarioDTO {
id: number;
productoId: number;
nombreProducto: string;
accion: string;
cantidad_anterior: number;
cantidad_nueva: number;
precio_anterior: number;
precio_nuevo: number;
fechaCambio: Date;
}

🧾 Campos de la interfaz

CampoTipoDescripción
idnumberIdentificador único del registro en el historial.
productoIdnumberID del producto al que se le aplicó el cambio.
nombreProductostringNombre del producto afectado.
accionstringTipo de acción realizada (creado, actualizado, eliminado, etc.).
cantidad_anteriornumberValor de la cantidad antes de realizar el cambio.
cantidad_nuevanumberValor de la cantidad después de realizar el cambio.
precio_anteriornumberPrecio anterior del producto.
precio_nuevonumberPrecio nuevo del producto después del cambio.
fechaCambioDateFecha y hora exacta en que se realizó la modificación.

✅ Ejemplo de uso

Este DTO puede ser utilizado al momento de registrar una modificación en el inventario:

const historial: HistorialInventarioDTO = {
id: 1,
productoId: 101,
nombreProducto: "Arroz 500g",
accion: "actualizado",
cantidad_anterior: 20,
cantidad_nueva: 25,
precio_anterior: 2000,
precio_nuevo: 2100,
fechaCambio: new Date(),
};

📚 Propósito

Esta interfaz sirve como un contrato de datos para mantener un historial claro, auditable y estructurado de todos los cambios importantes en el inventario. Es especialmente útil para funciones administrativas, reportes y mecanismos de retroceso o revisión de actividad del sistema.