@php $tabs = [ 'protocollo-comunicazioni' => 'Protocollo comunicazioni', 'archivio-digitale' => 'Archivio digitale', 'template-drive' => 'Template Drive', 'archivio-fisico' => 'Archivio fisico', 'permessi' => 'Permessi e cartelle', ]; $stats = $this->hubStats; $protocolloStats = $this->protocolloComunicazioniStats; @endphp
Hub Documenti

Archivio digitale e fisico nello stesso flusso

Questa pagina diventa la base unica per PDF, struttura Drive, contenitori fisici e regole di visibilita. Il modello resta coerente con il passaggio consegne dello stabile e con la futura gestione studio.

Codice mnemonico suggerito
{{ $this->mnemonicCodeHint ?? 'STB00000' }}
Formato guida per etichette, QR e archivio fisico.
Documenti
{{ $stats['documenti'] ?? 0 }}
Archivio PDF censito.
Archiviati
{{ $stats['archiviati'] ?? 0 }}
Documenti chiusi e consolidati.
In scadenza
{{ $stats['in_scadenza'] ?? 0 }}
Finestra dei prossimi 30 giorni.
Template Drive
{{ $stats['template_drive'] ?? 0 }}
Cartelle base replicabili per stabile.
@foreach($tabs as $tabKey => $tabLabel) @endforeach
@if($this->hubTab === 'protocollo-comunicazioni') Protocollo comunicazioni Prima tab operativa per l'amministratore: ultimi documenti protocollati, filtri rapidi e vista a box con anteprima PDF o lista compatta.
Protocollo visibile
{{ $protocolloStats['totale'] ?? 0 }}
Documenti non fattura nello stabile attivo.
Con PDF
{{ $protocolloStats['con_pdf'] ?? 0 }}
Apribili in anteprima o stampa.
Questo mese
{{ $protocolloStats['questo_mese'] ?? 0 }}
Nuovi inserimenti recenti.
Categorie
{{ $protocolloStats['categorie'] ?? 0 }}
Tipologie disponibili nei filtri.
@if($this->protocolloView === 'cards')
@forelse($this->protocolloComunicazioniRows as $row)
@if($row['has_pdf']) @else
Anteprima PDF non disponibile per questo protocollo.
@endif
{{ $row['protocollo'] }} {{ $row['categoria'] }} {{ $row['data'] }}

{{ $row['titolo'] }}

{{ $row['descrizione'] !== '' ? $row['descrizione'] : 'Nessuna descrizione registrata.' }}

Cartella: {{ $row['cartella'] }}
@if($row['fornitore'] !== '')
Ente / referente: {{ $row['fornitore'] }}
@endif @if($row['archive_reference'] !== '')
Rif. archivio: {{ $row['archive_reference'] }}
@endif
Apri Scarica @if($row['has_pdf']) Stampa @endif
@empty
Nessun documento protocollato trovato con i filtri correnti.
@endforelse
@else
Protocollo
Documento
Categoria / cartella
Azioni
@forelse($this->protocolloComunicazioniRows as $row)
{{ $row['protocollo'] }}
{{ $row['data'] }}
{{ $row['titolo'] }}
{{ $row['descrizione'] !== '' ? $row['descrizione'] : 'Nessuna descrizione registrata.' }}
@if($row['archive_reference'] !== '')
{{ $row['archive_reference'] }}
@endif
{{ $row['categoria'] }}
{{ $row['cartella'] }}
Apri @if($row['has_pdf']) Stampa @endif
@empty
Nessun documento protocollato trovato con i filtri correnti.
@endforelse
@endif
@elseif($this->hubTab === 'archivio-digitale') Archivio digitale Navigazione a cartelle per lo stabile attivo: root stabile, cartella fatture_PDF, anno di arrivo. Le azioni restano operative ma visibili solo come icone.
Percorso corrente
@foreach($this->digitalArchiveBreadcrumbs as $crumb) @endforeach
Nomi file fatture ordinati per data e protocollo, cosi la ricerca e l'elenco restano leggibili anche senza aprire il PDF.
@forelse($this->digitalArchiveFolders as $folder) @empty
Nessuna sottocartella disponibile nel livello corrente.
@endforelse
Cartella attiva
{{ $this->digitalArchiveCurrentFolder?->nome ?? 'Nessuna cartella selezionata' }}
{{ $this->digitalArchiveCurrentFolderHint }}
Documenti nel livello
{{ $this->digitalArchiveCurrentFolderDocumentCount }}
Solo fatture PDF collegate alla cartella corrente.
Operatività
Archivio digitale e fisico allineati
Da qui puoi aprire, stampare, watermarkare e assegnare subito la collocazione cartacea.
{{ $this->table }}
@elseif($this->hubTab === 'template-drive') Template cartelle Drive Questa struttura resta la base comune per archivio digitale, passaggio consegne e futura sincronizzazione Google.
@foreach($this->driveTemplateFolders as $folder)
{{ $folder }}
@endforeach
@elseif($this->hubTab === 'archivio-fisico') Archivio fisico Registro operativo del cartaceo: inserimento manuale, contenitori annidati, movimentazione per codice e stampa etichette 11354 o 99014.
Elenco archivio condominiale
Inserimento manuale come ticket: data, voce, titolo, nota, contenitore iniziale e posizione finale.
DB operativo
Movimentazione per codice
Scansioni o inserisci il codice sorgente e il contenitore di arrivo per spostare intere buste o faldoni.
Contenitori di primo livello
@forelse($this->physicalArchiveContainerTree as $item)
{{ $item['codice_univoco'] }}
{{ $item['titolo'] }}
{{ $item['tipo'] }} · {{ $item['children_count'] }} elementi interni
@empty
Nessun contenitore creato ancora per lo stabile attivo.
@endforelse
Standard etichette
Modelli attivi: 11354 e 99014.
Formato suggerito: {{ $this->mnemonicCodeHint ?? 'STB00000' }} · contenuto · anno · busta · fascicolo.
QR in stampa su etichetta e predisposizione NFC per scatole e fascicoli.
Formato data archivio: AAAA-MM-GG o YYYYMMDD per aggancio automatico ai file gia codificati.
Registro e ricerca
Titolo manuale, ricerca testuale, contenimento annidato
@forelse($this->physicalArchiveRows as $row)
{{ $row['codice_univoco'] }} {{ $row['tipo'] }} {{ $row['data_archiviazione'] }}
{{ $row['titolo'] }}
@if($row['voce'] !== '')
{{ $row['voce'] }}
@endif
Dentro: {{ $row['parent'] }}
Percorso: {{ $row['percorso'] }}
@if($row['ubicazione'] !== '')
Ubicazione: {{ $row['ubicazione'] }}
@endif @if($row['documento'])
Digitale collegato: {{ $row['documento'] }}
@endif
@empty
Nessuna voce archivio fisico trovata con i filtri correnti.
@endforelse
Uso operativo
Puoi registrare direttamente un pezzo di carta senza scansione, poi metterlo in una busta etichettata, spostare la busta in un faldone e il faldone in una scatola usando solo i codici stampati.
@else Permessi e visibilita Qui prepariamo la classificazione dei documenti per audience e le cartelle visibili solo a ruoli, gruppi o utenti selezionati.
@foreach($this->visibleFolderRows as $folder)
{{ $folder['nome'] }}
{{ $folder['stabile'] }}
{{ $folder['scope'] }}
{{ $folder['path'] }}
Documenti collegati: {{ $folder['documents_count'] }}
Ruoli: {{ $folder['roles'] !== [] ? implode(', ', $folder['roles']) : 'nessun filtro' }}
Gruppi: {{ $folder['groups'] !== [] ? implode(', ', $folder['groups']) : 'nessun filtro' }}
Utenti: {{ $folder['users'] !== [] ? implode(', ', $folder['users']) : 'nessun utente specifico' }}
@endforeach @if(empty($this->visibleFolderRows))
Nessuna cartella archivio configurata per lo stabile attivo. Usa “Nuova cartella archivio” per iniziare a separare visibilita e struttura.
@endif
@foreach($this->audienceGroups as $group)
{{ $group }}
Audience candidata per visibilita documentale, export e portali dedicati.
@endforeach
Le cartelle ristrette sono applicate sia nella lista documenti sia nei download diretti, cosi l'ID del file non bypassa i permessi dello stabile o della cartella.
@endif