diff --git a/public/userarea/routines/moncler_supplier_fabric.php b/public/userarea/routines/moncler_supplier_fabric.php new file mode 100644 index 0000000..eeda647 --- /dev/null +++ b/public/userarea/routines/moncler_supplier_fabric.php @@ -0,0 +1,212 @@ + $row) { + if (!isset($row['data']) || !is_array($row['data'])) { + error_log("Riga non valida, manca 'data' all'indice $index"); + continue; + } + + // 1. PARTE MONCLER + PARTE FORNITORE -> PARTE MONCLER + $parte_values = []; + + $value_parte_moncler = trim((string)($row['data'][$parte_moncler_index] ?? '')); + $value_parte_fornitore = $parte_fornitore_index !== false ? trim((string)($row['data'][$parte_fornitore_index] ?? '')) : ''; + + if ($value_parte_moncler !== '') { + $parte_values[] = $value_parte_moncler; + } + if ($value_parte_fornitore !== '') { + $parte_values[] = $value_parte_fornitore; + } + + $parte_values = array_unique($parte_values); + $excelData[$index]['data'][$parte_moncler_index] = implode(' - ', $parte_values); + + // 2. DESCRIZIONE PARTE MONCLER + DESCRIZIONE PARTE FORNITORE -> DESCRIZIONE PARTE MONCLER + $descr_values = []; + + $value_descr_moncler = trim((string)($row['data'][$descr_parte_moncler_index] ?? '')); + $value_descr_fornitore = $descr_parte_fornitore_index !== false ? trim((string)($row['data'][$descr_parte_fornitore_index] ?? '')) : ''; + + if ($value_descr_moncler !== '') { + $descr_values[] = $value_descr_moncler; + } + if ($value_descr_fornitore !== '') { + $descr_values[] = $value_descr_fornitore; + } + + $descr_values = array_unique($descr_values); + $excelData[$index]['data'][$descr_parte_moncler_index] = implode(' - ', $descr_values); + + // 3. COLORE MONCLER + COLORE FORNITORE -> COLORE MONCLER + $colore_values = []; + + $value_colore_moncler = trim((string)($row['data'][$colore_moncler_index] ?? '')); + $value_colore_fornitore = $colore_fornitore_index !== false ? trim((string)($row['data'][$colore_fornitore_index] ?? '')) : ''; + + if ($value_colore_moncler !== '') { + $colore_values[] = $value_colore_moncler; + } + if ($value_colore_fornitore !== '') { + $colore_values[] = $value_colore_fornitore; + } + + $colore_values = array_unique($colore_values); + $excelData[$index]['data'][$colore_moncler_index] = implode(' - ', $colore_values); + + // 4. COMPOSIZIONE TESSILE + COMPOSIZIONE TOTALE -> COMPOSIZIONE TESSILE + $composizione_values = []; + + $value_composizione_tessile = trim((string)($row['data'][$composizione_tessile_index] ?? '')); + $value_composizione_totale = $composizione_totale_index !== false ? trim((string)($row['data'][$composizione_totale_index] ?? '')) : ''; + + if ($value_composizione_tessile !== '') { + $composizione_values[] = $value_composizione_tessile; + } + if ($value_composizione_totale !== '') { + $composizione_values[] = $value_composizione_totale; + } + + $composizione_values = array_unique($composizione_values); + $excelData[$index]['data'][$composizione_tessile_index] = implode(' - ', $composizione_values); + + // 5. PACCHETTI TEST + TEST ADDIZIONALI -> PACCHETTI TEST + $pacchetti_values = []; + + $value_pacchetti_test = trim((string)($row['data'][$pacchetti_test_index] ?? '')); + $value_test_addizionali = $test_addizionali_index !== false ? trim((string)($row['data'][$test_addizionali_index] ?? '')) : ''; + + if ($value_pacchetti_test !== '') { + $pacchetti_values[] = $value_pacchetti_test; + } + if ($value_test_addizionali !== '') { + $pacchetti_values[] = $value_test_addizionali; + } + + $pacchetti_values = array_unique($pacchetti_values); + $excelData[$index]['data'][$pacchetti_test_index] = implode(' - ', $pacchetti_values); + } + + error_log("Nuova routine completata con successo. Righe elaborate: " . count($excelData)); + } catch (Exception $e) { + error_log("Eccezione nella nuova routine: " . $e->getMessage()); + throw $e; + } +}