feat: confezioni (conf) chiede dimensione singola confezione

- Nuovo campo package_unit in DB (migrazione automatica)
- Form aggiungi/modifica: quando si seleziona 'conf', appare campo per
  specificare il contenuto della singola confezione (es. 300g, 2L)
- Visualizzazione: '3 conf (da 300g)' in inventario, dettaglio, butta
- formatQuantity aggiornato con supporto package_unit
- API: salva/restituisce package_unit in tutti gli endpoint
- Ricette e chat: contesto arricchito con info confezione
- CSS: stili per il nuovo campo conf-size
This commit is contained in:
dadaloop82
2026-03-11 15:43:44 +00:00
parent af3b5941a0
commit bf2e137502
6 changed files with 210 additions and 34 deletions
+13
View File
@@ -16,6 +16,10 @@ function getDB(): PDO {
if ($isNew) {
initializeDB($db);
}
// Run migrations
migrateDB($db);
return $db;
}
@@ -64,3 +68,12 @@ function initializeDB(PDO $db): void {
CREATE INDEX IF NOT EXISTS idx_transactions_date ON transactions(created_at);
");
}
function migrateDB(PDO $db): void {
// Add package_unit column if missing
$cols = $db->query("PRAGMA table_info(products)")->fetchAll();
$colNames = array_column($cols, 'name');
if (!in_array('package_unit', $colNames)) {
$db->exec("ALTER TABLE products ADD COLUMN package_unit TEXT DEFAULT ''");
}
}