1.4 KiB
1.4 KiB
Spec Delta
Purpose
Permite cargar rápidamente el inventario inicial desde archivos CSV locales, creando sólo las entidades que no existen y evitando duplicados por diferencias de formato en los nombres.
ADDED Requirements
Requirement: Importar inventario CSV
The system SHALL import CSV rows with product name, producer name, unit price, and optional quantity columns.
Scenario: Importación válida
- GIVEN a CSV with the required headers
- WHEN user previews and confirms the import
- THEN missing producers and products are created
- AND a positive quantity creates an initial inventory movement
- AND empty or zero quantity creates no movement
Requirement: Comparación normalizada
The system SHALL match producer and product names ignoring case, accents, BOM, and redundant surrounding whitespace.
Scenario: Evitar duplicado
- GIVEN an existing producer
La Familia González - WHEN CSV contains
la familia gonzalez - THEN the row uses the existing producer instead of creating a duplicate
Requirement: Errores de importación
The system SHALL report invalid rows without persisting invalid records and SHALL show a summary of created, reused, skipped, and failed rows.
Scenario: Precio inválido
- WHEN a row has a non-numeric or negative price
- THEN that row is rejected with its line number and reason
- AND valid rows remain importable