corretto carica da articolo eliminato da macchina/parte/gruppo
This commit is contained in:
parent
20443de0ab
commit
0243acda69
2 changed files with 3 additions and 36 deletions
|
|
@ -144,6 +144,9 @@ export async function rimuoviArticoloDaMacchina(
|
||||||
);
|
);
|
||||||
const articolo = articoloRows[0];
|
const articolo = articoloRows[0];
|
||||||
|
|
||||||
|
// Registra il movimento per tracciabilità (magazzino di destinazione nel log).
|
||||||
|
// Non aggiorniamo giacenze: l'assegnazione a macchina non le aveva decrementate,
|
||||||
|
// quindi il rientro è solo uno spostamento logico magazzino↔macchina.
|
||||||
await db.execute(
|
await db.execute(
|
||||||
`INSERT INTO movimenti (id_articolo, articolo_codice, articolo_descrizione, quantita, tipo_movimento, causale, utente, id_magazzino_destinazione)
|
`INSERT INTO movimenti (id_articolo, articolo_codice, articolo_descrizione, quantita, tipo_movimento, causale, utente, id_magazzino_destinazione)
|
||||||
VALUES (:id_articolo, :articolo_codice, :articolo_descrizione, :quantita, 1, :causale, :utente, :id_magazzino_destinazione)`,
|
VALUES (:id_articolo, :articolo_codice, :articolo_descrizione, :quantita, 1, :causale, :utente, :id_magazzino_destinazione)`,
|
||||||
|
|
@ -157,24 +160,6 @@ export async function rimuoviArticoloDaMacchina(
|
||||||
id_magazzino_destinazione: idMagazzino,
|
id_magazzino_destinazione: idMagazzino,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
// Aggiorna la giacenza nel magazzino
|
|
||||||
const [existingGiacenza] = await db.execute<(RowDataPacket & { id: number; quantita: number })[]>(
|
|
||||||
"SELECT id, quantita FROM giacenze WHERE articolo_id = :articoloId AND id_magazzino = :magazzinoId",
|
|
||||||
{ articoloId: idart, magazzinoId: idMagazzino }
|
|
||||||
);
|
|
||||||
|
|
||||||
if (existingGiacenza.length > 0) {
|
|
||||||
await db.execute(
|
|
||||||
"UPDATE giacenze SET quantita = quantita + :quantita WHERE articolo_id = :articoloId AND id_magazzino = :magazzinoId",
|
|
||||||
{ quantita, articoloId: idart, magazzinoId: idMagazzino }
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
await db.execute(
|
|
||||||
"INSERT INTO giacenze (articolo_id, id_magazzino, quantita) VALUES (:articoloId, :magazzinoId, :quantita)",
|
|
||||||
{ articoloId: idart, magazzinoId: idMagazzino, quantita }
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return { success: true, message: opzione === "carico" ? "Articolo rientrato in magazzino" : "Articolo rimosso" };
|
return { success: true, message: opzione === "carico" ? "Articolo rientrato in magazzino" : "Articolo rimosso" };
|
||||||
|
|
|
||||||
|
|
@ -208,24 +208,6 @@ export async function deleteMacchina(
|
||||||
id_magazzino_destinazione: idMagazzinoRientro,
|
id_magazzino_destinazione: idMagazzinoRientro,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
// Aggiorna la giacenza
|
|
||||||
const [existingGiacenza] = await db.execute<(RowDataPacket & { id: number })[]>(
|
|
||||||
"SELECT id FROM giacenze WHERE articolo_id = :articoloId AND id_magazzino = :magazzinoId",
|
|
||||||
{ articoloId: art.idart, magazzinoId: idMagazzinoRientro }
|
|
||||||
);
|
|
||||||
|
|
||||||
if (existingGiacenza.length > 0) {
|
|
||||||
await db.execute(
|
|
||||||
"UPDATE giacenze SET quantita = quantita + :quantita WHERE articolo_id = :articoloId AND id_magazzino = :magazzinoId",
|
|
||||||
{ quantita, articoloId: art.idart, magazzinoId: idMagazzinoRientro }
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
await db.execute(
|
|
||||||
"INSERT INTO giacenze (articolo_id, id_magazzino, quantita) VALUES (:articoloId, :magazzinoId, :quantita)",
|
|
||||||
{ articoloId: art.idart, magazzinoId: idMagazzinoRientro, quantita }
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// Se l'articolo non esiste più, non facciamo nulla (gli articoli vengono persi)
|
// Se l'articolo non esiste più, non facciamo nulla (gli articoli vengono persi)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue