mirror of
https://github.com/catdevnull/preciazo.git
synced 2024-11-22 06:16:18 +00:00
chequeador por EANs duplicados
This commit is contained in:
parent
b9e6c64bd5
commit
aada90bbe8
1 changed files with 11 additions and 1 deletions
|
@ -75,7 +75,7 @@ type Files = Awaited<ReturnType<typeof readFiles>>;
|
|||
|
||||
// si retorna truthy es un error
|
||||
const checkers: Record<string, (files: Files) => boolean | string> = {
|
||||
["[productos.csv] Nombres de columnas correctas"](files) {
|
||||
["[productos.csv] Nombres de columnas incorrectas"](files) {
|
||||
const firstRow = files["productos.csv"].data[0];
|
||||
if (!firstRow) return true;
|
||||
const res = ProductoSegúnSpec.safeParse(firstRow);
|
||||
|
@ -104,6 +104,16 @@ const checkers: Record<string, (files: Files) => boolean | string> = {
|
|||
}
|
||||
return missing.length > 0;
|
||||
},
|
||||
["Hay productos duplicados con el mismo EAN"](files) {
|
||||
const productosEnSucursales = files["productos.csv"].data
|
||||
.filter((row: any) => row.productos_ean == 1)
|
||||
.map(
|
||||
(row: any) => `${row.id_bandera}-${row.id_sucursal}-${row.id_producto}`
|
||||
);
|
||||
const eansUnicos = new Set(productosEnSucursales);
|
||||
if (productosEnSucursales.length !== eansUnicos.size) return true;
|
||||
return false;
|
||||
},
|
||||
};
|
||||
|
||||
const content = await fs.promises.readdir(dir);
|
||||
|
|
Loading…
Reference in a new issue