Rubrica clienti fornitore
@if($this->fornitoreLabel) Elenco clienti del singolo fornitore, con sorgente TecnoRepair `TClienti` e collegamento sicuro alla stessa rubrica fornitore quando esiste una scheda condivisa già agganciata. @else Seleziona un fornitore per aprire la rubrica clienti. @endif
Questa vista resta confinata al perimetro del fornitore. Prima importa i clienti con {{ $this->importCommandHint }}, poi usa questa pagina per lavorare in modo compatto su elenco, recapiti e storico apparecchi senza uscire nel pannello anagrafico admin.
@if($this->missingAdminContext)
Questa vista richiede un fornitore selezionato.
@else
Totali {{ $counters['totali'] ?? 0 }}
Collegati {{ $counters['collegati'] ?? 0 }}
Con email {{ $counters['con_email'] ?? 0 }}
Con cellulare {{ $counters['con_cellulare'] ?? 0 }}
@if($activeTab === 'elenco')
@forelse($rows as $row) @empty @endforelse
Cliente Recapiti Zona Schede Rubrica Azioni
{{ $row['display_name'] }}
Fonte {{ $row['source'] === 'tecnorepair_tclienti' ? 'TClienti' : 'ticket' }}
{{ $row['phone'] !== '' ? $row['phone'] : '-' }}
{{ $row['phone_alt'] !== '' ? $row['phone_alt'] : ($row['email'] !== '' ? $row['email'] : 'nessun recapito') }}
{{ $row['citta'] !== '' ? $row['citta'] : '-' }}
{{ $row['indirizzo'] !== '' ? $row['indirizzo'] : '' }}
{{ $row['totale_schede'] ?? 0 }}
Ultima {{ $row['ultima_data'] ?? '-' }}
@if($row['rubrica_url']) Vai al cliente @else Non collegato @endif @if((int) ($row['id'] ?? 0) > 0) @endif
Nessun cliente disponibile. Importa prima `TClienti` nell'archivio legacy e poi lancia il comando rubrica clienti.
@else @php $selected = $this->selectedCliente; @endphp @if(! $selected)
Seleziona un cliente dall'elenco compatto per aprire la scheda fornitore limitata.
@else
Scheda cliente
{{ $selected->display_name ?: 'Cliente TecnoRepair' }}
Legacy cliente ID {{ $selected->legacy_cliente_id ?: '-' }} · aggiornato {{ optional($selected->updated_at)->format('d/m/Y H:i') ?: '-' }}
Cellulare
{{ $selected->phone ?: '-' }}
Fisso / email
{{ $selected->phone_alt ?: ($selected->email ?: '-') }}
Indirizzo
{{ trim(implode(', ', array_filter([$selected->indirizzo, $selected->cap, $selected->citta, $selected->provincia]))) !== '' ? trim(implode(', ', array_filter([$selected->indirizzo, $selected->cap, $selected->citta, $selected->provincia]))) : '-' }}
Codice fiscale
{{ $selected->codice_fiscale ?: '-' }}
P. IVA
{{ $selected->partita_iva ?: '-' }}
@if($selected->rubrica_id && $selected->rubrica_url) @endif
Storico apparecchi / seriali
@forelse($this->selectedClienteSchede as $scheda) @empty @endforelse
Scheda Prodotto Seriali Stato
{{ $scheda['numero'] }}
{{ $scheda['ingresso'] }}
{{ $scheda['prodotto'] }}
{{ $scheda['codice'] !== '' ? $scheda['codice'] : 'senza codice' }}
{{ $scheda['seriali'] }} {{ $scheda['stato'] }}
Nessuna scheda legacy collegata a questo cliente.
Google workspace fornitore
@if($googleWorkspaceStatus)
Stato: {{ $googleWorkspaceStatus['connected'] ? 'Collegato' : 'Non collegato' }}
Account: {{ $googleWorkspaceStatus['email'] !== '' ? $googleWorkspaceStatus['email'] : '-' }}
Nome: {{ $googleWorkspaceStatus['name'] !== '' ? $googleWorkspaceStatus['name'] : '-' }}
Ultimo collegamento: {{ $googleWorkspaceStatus['connected_at'] !== '' ? $googleWorkspaceStatus['connected_at'] : '-' }}
Collega / aggiorna Google @if($googleWorkspaceStatus['connected'])
@csrf
@endif
@else
Stato Google del fornitore non disponibile.
@endif
Il modello dati prodotti e seriali è già separato: un prodotto unico può avere più seriali collegati. Nella fase successiva si può rifinire la UI della scheda intervento in stile TecnoRepair e riusare la pipeline FE lato fornitore senza auto-import.
@endif
@endif
@endif