From 9b3d4b61fc2cbf8b8ca73bd243502438781ba6fb Mon Sep 17 00:00:00 2001 From: Carmine Savino Date: Mon, 19 Jan 2026 08:17:53 +0100 Subject: [PATCH] Rimuovi la chiamata al seeder ArticoloUserSeeder dal DatabaseSeeder --- STRUTTURA DATABASE.xlsx | Bin 11310 -> 11527 bytes database/seeders/ArticoloSeeder.php | 71 ---------------------------- database/seeders/DatabaseSeeder.php | 3 +- 3 files changed, 1 insertion(+), 73 deletions(-) diff --git a/STRUTTURA DATABASE.xlsx b/STRUTTURA DATABASE.xlsx index e3243b19e0fd0e26399b377bf54ff21a6dfd00a0..4e174c431344d9aafe1d783c48e79ea573a0983f 100644 GIT binary patch delta 8503 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 P18kF>7U>J~zux{o<7_Me diff --git a/database/seeders/ArticoloSeeder.php b/database/seeders/ArticoloSeeder.php index 6c8575e..00eafe8 100644 --- a/database/seeders/ArticoloSeeder.php +++ b/database/seeders/ArticoloSeeder.php @@ -23,76 +23,5 @@ class ArticoloSeeder extends Seeder $this->importFromExcel($filePath); } - /** - * Import articoli from Excel file. - */ - public function importFromExcel(string $filePath, bool $cleanImport = false): array - { - $spreadsheet = IOFactory::load($filePath); - $worksheet = $spreadsheet->getActiveSheet(); - $rows = $worksheet->toArray(); - $imported = 0; - $updated = 0; - $errors = []; - - // If clean import, delete all existing records - if ($cleanImport) { - Articolo::truncate(); - } - - // Skip header rows (first 2 rows) - foreach (array_slice($rows, 2) as $index => $row) { - // Skip empty rows - if (empty($row[0])) { - continue; - } - - try { - $exists = Articolo::where('codice_articolo', $row[0])->exists(); - - Articolo::updateOrCreate( - ['codice_articolo' => $row[0]], - [ - 'ciclo' => $row[1] ?? null, - 'diametro' => $row[2] ?? null, - 'descrizione' => $row[3] ?? null, - 'posizione' => $row[4] ?? null, - 'quantita' => is_numeric($row[5]) ? (int) $row[5] : 0, - 'tipo_lavorazione' => $row[6] ?? null, - 'materiale_lavorare' => $row[7] ?? null, - 'maximum_thickness' => $row[8] ?? null, - 'speed_rpm' => is_numeric($row[9]) ? (int) $row[9] : null, - 'feed' => is_numeric($row[10]) ? (float) $row[10] : null, - 'max_thrust_a' => $row[11] ?? null, - 'min_torque_a' => $row[12] ?? null, - 'quantita_fori' => is_numeric($row[13]) ? (int) $row[13] : null, - ] - ); - - if ($exists && !$cleanImport) { - $updated++; - } else { - $imported++; - } - - if (isset($this->command)) { - $this->command->info('Importato articolo: ' . $row[0]); - } - } catch (\Exception $e) { - $errors[] = "Riga " . ($index + 3) . ": " . $e->getMessage(); - } - } - - if (isset($this->command)) { - $this->command->info('Import completato! Totale articoli: ' . Articolo::count()); - } - - return [ - 'imported' => $imported, - 'updated' => $updated, - 'errors' => $errors, - 'total' => Articolo::count(), - ]; - } } diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php index eece49a..e174e4c 100644 --- a/database/seeders/DatabaseSeeder.php +++ b/database/seeders/DatabaseSeeder.php @@ -17,8 +17,7 @@ class DatabaseSeeder extends Seeder { // User::factory(10)->create(); $this->call([ - AdminUserSeeder::class, - ArticoloSeeder::class, + AdminUserSeeder::class ]); } }