@php // Expected: $unitaFieldMapping (array of {legacy,target}), $legacyUnita sample rows, provide fallback headers $sampleRows = collect($legacyUnita ?? [])->take(5)->map(fn($r)=>(array)$r)->values(); $legacyHeaders = []; foreach ($sampleRows as $row) { $legacyHeaders = array_unique(array_merge($legacyHeaders, array_keys($row))); } sort($legacyHeaders); $legacyHeaders = array_values($legacyHeaders); if (empty($legacyHeaders)) { try { $importConn = \App\Models\UserSetting::get('gescon.import_conn', 'gescon_import'); if (\Illuminate\Support\Facades\Schema::connection($importConn)->hasTable('condomin')) { $legacyHeaders = \Illuminate\Support\Facades\Schema::connection($importConn)->getColumnListing('condomin'); } } catch (\Throwable $e) { $legacyHeaders = []; } } $existingMap = collect($unitaFieldMapping ?? [])->keyBy('legacy'); // Target fields suggestion list (simplified subset; extend as needed) $targetFields = [ 'codice_unita','scala','piano','interno','categoria_catastale','millesimi_generali','millesimi_riscaldamento','superficie','note','sezione','foglio','particella','subalterno','indirizzo','civico','mq_riscaldati','mq_non_riscaldati','tipo_unita','pertinenza_di','codice_fiscale_proprietario','codice_fiscale_inquilino' ]; @endphp

Mapping Campi Unità (Legacy → Archivi)

Campi Legacy (condomin)
@foreach($legacyHeaders as $lh)
{{ $lh }}
@endforeach @if(empty($legacyHeaders))
Nessun campo legacy rilevato (carica anteprima Unità)
@endif
Associazione a Campi Target
@foreach($legacyHeaders as $lh) @php $sel = $existingMap->get($lh)['target'] ?? null; @endphp
{{ $lh }}
@endforeach @if(empty($legacyHeaders))
Nessun mapping configurabile.
@endif
Suggerimento: lascia vuoto il campo target se non vuoi importare quel campo legacy. Il mapping è salvato per codice legacy e utente.