From 94226e460aeee85b17e5efa1ef00ea050cda7948 Mon Sep 17 00:00:00 2001 From: Francesco Picone Date: Tue, 28 Jul 2026 17:04:04 +0200 Subject: [PATCH] ++ add creation S-13_I --- .gitignore | 5 + app/Livewire/Registro.php | 157 +++++++++++++++++++ resources/pdf/S-13_I.pdf | Bin 0 -> 80686 bytes resources/views/livewire/registro.blade.php | 19 ++- resources/views/pdf/registro-s13.blade.php | 163 ++++++++++++++++++++ 5 files changed, 340 insertions(+), 4 deletions(-) create mode 100644 resources/pdf/S-13_I.pdf create mode 100644 resources/views/pdf/registro-s13.blade.php diff --git a/.gitignore b/.gitignore index 62abd1c..0823e78 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,11 @@ *.swp *.swo *.sql +*.pdf +# Eccezione: i moduli ufficiali usati come matrice per i template di stampa +# (resources/views/pdf/*) vanno versionati, altrimenti il template perde il +# riferimento da cui è stato ricostruito. +!resources/pdf/*.pdf docker-compose.override.yml db_data/ redis_data/ diff --git a/app/Livewire/Registro.php b/app/Livewire/Registro.php index 9245636..66b32f3 100644 --- a/app/Livewire/Registro.php +++ b/app/Livewire/Registro.php @@ -11,11 +11,18 @@ use App\Models\Proclamatore; use App\Models\Territorio; use App\Models\Zona; use App\Models\Tipologia; +use Barryvdh\DomPDF\Facade\Pdf; class Registro extends Component { use WithPagination; + /** Blocchi-territorio per foglio, come nel modulo cartaceo S-13. */ + private const S13_RIGHE_PER_PAGINA = 21; + + /** Gruppi "Assegnato a" disponibili su ogni riga del modulo S-13. */ + private const S13_ASSEGNAZIONI_PER_RIGA = 4; + public string $search = ''; public string $filtroAnno = ''; public string $filtroZona = ''; @@ -167,6 +174,156 @@ class Registro extends Component $this->showDeleteConfirm = false; } + // ─── Modulo S-13 ──────────────────────────────────────────── + + /** + * Modulo ufficiale S-13-I ("Registrazione delle assegnazioni del + * territorio") compilato con le assegnazioni dell'anno di servizio + * selezionato nei filtri. + * + * Solo amministratore, come il resto del CRUD di questa pagina: il modulo + * espone in un unico file l'anagrafica completa di chi ha avuto quale + * territorio, dati personali che il ruolo assegnatario non deve poter + * esportare in blocco. + */ + public function downloadS13() + { + abort_if(!auth()->user()->can('settings.manage'), 403); + + // Il modulo è per definizione relativo a un singolo anno di servizio: + // con "Tutti gli anni" selezionato si ripiega sull'anno corrente. + $anno = $this->filtroAnno + ? AnnoTeocratico::find($this->filtroAnno) + : null; + $anno ??= AnnoTeocratico::corrente(); + + $pdf = Pdf::loadView('pdf.registro-s13', [ + 'annoLabel' => $anno->label, + 'pagine' => $this->impaginaS13($this->righeS13($anno)), + ])->setPaper('a4', 'portrait'); + + return response()->streamDownload( + fn () => print($pdf->output()), + 'S-13-registro-assegnazioni-' . $anno->label . '.pdf' + ); + } + + /** + * Impagina le righe in fogli da 21 blocchi, completando l'ultimo con + * blocchi vuoti: il foglio stampato resta identico al modulo cartaceo e le + * righe libere restano disponibili per la compilazione a mano. + * + * Senza righe da stampare si restituisce comunque un foglio vuoto, così il + * modulo scaricato è un S-13 in bianco anziché un PDF senza pagine. + * + * @param \Illuminate\Support\Collection $righe + * @return \Illuminate\Support\Collection> + */ + private function impaginaS13(\Illuminate\Support\Collection $righe): \Illuminate\Support\Collection + { + $vuota = [ + 'numero' => '', + 'rientro_precedente' => '', + 'assegnazioni' => $this->completaCelleS13([]), + ]; + + $pagine = $righe->isEmpty() + ? collect([collect()]) + : $righe->chunk(self::S13_RIGHE_PER_PAGINA)->map->values()->values(); + + return $pagine->map(fn ($pagina) => collect( + array_pad($pagina->all(), self::S13_RIGHE_PER_PAGINA, $vuota) + )); + } + + /** + * Righe del modulo: un blocco per ogni territorio attivo con almeno + * un'assegnazione (chiusa o in corso) nell'anno indicato, in ordine di + * numero crescente. + * + * @return \Illuminate\Support\Collection + */ + private function righeS13(AnnoTeocratico $anno): \Illuminate\Support\Collection + { + // territorio() è definita withTrashed(), quindi la condizione sui + // cestinati va scritta a mano: senza, i territori eliminati + // rientrerebbero nel modulo. + $assegnazioni = Assegnazione::with(['proclamatore', 'territorio']) + ->where('anno_teocratico_id', $anno->id) + ->whereHas('territorio', fn ($q) => $q + ->where('attivo', true) + ->whereNull('territori.deleted_at')) + ->orderBy('assigned_at') + ->orderBy('id') + ->get() + ->groupBy('territorio_id'); + + $rientriPrecedenti = $this->ultimiRientriPrimaDi( + $assegnazioni->keys()->all(), + $anno + ); + + return $assegnazioni + ->map(function ($gruppo, $territorioId) use ($rientriPrecedenti) { + // Se un territorio è girato più di quattro volte nell'anno il + // modulo non ha spazio per tutte: si stampano le ultime + // quattro, mantenendo l'ordine cronologico da sinistra. + $ultime = $gruppo->slice(-self::S13_ASSEGNAZIONI_PER_RIGA)->values(); + + $celle = $ultime->map(fn (Assegnazione $a) => [ + 'nome' => $a->proclamatore?->nome_completo ?? '', + 'assegnato_il' => $a->assigned_at?->format('d/m/Y') ?? '', + 'restituito_il' => $a->returned_at?->format('d/m/Y') ?? '', + ])->all(); + + $rientro = $rientriPrecedenti->get($territorioId); + + return [ + 'numero' => $gruppo->first()->territorio?->numero ?? '', + 'rientro_precedente' => $rientro ? \Carbon\Carbon::parse($rientro)->format('d/m/Y') : '', + 'assegnazioni' => $this->completaCelleS13($celle), + ]; + }) + ->sort(fn (array $a, array $b) => strnatcasecmp((string) $a['numero'], (string) $b['numero'])) + ->values(); + } + + /** + * Ultima data di rientro di ogni territorio *precedente* all'inizio + * dell'anno di servizio: è il dato che la colonna "Restituito l'ultima + * volta il" del modulo chiede di riportare quando si apre un foglio nuovo. + * + * @param array $territorioIds + * @return \Illuminate\Support\Collection + */ + private function ultimiRientriPrimaDi(array $territorioIds, AnnoTeocratico $anno): \Illuminate\Support\Collection + { + if ($territorioIds === []) { + return collect(); + } + + return Assegnazione::whereIn('territorio_id', $territorioIds) + ->whereNotNull('returned_at') + ->whereDate('returned_at', '<', $anno->start_date) + ->groupBy('territorio_id') + ->selectRaw('territorio_id, MAX(returned_at) as ultimo_rientro') + ->pluck('ultimo_rientro', 'territorio_id'); + } + + /** + * Porta le celle a quattro riempiendo con voci vuote: le colonne + * inutilizzate restano stampate e a disposizione della compilazione a mano. + * + * @param array $celle + * @return array + */ + private function completaCelleS13(array $celle): array + { + $vuota = ['nome' => '', 'assegnato_il' => '', 'restituito_il' => '']; + + return array_pad($celle, self::S13_ASSEGNAZIONI_PER_RIGA, $vuota); + } + public function mount(): void { if ($this->filtroAnno === '') { diff --git a/resources/pdf/S-13_I.pdf b/resources/pdf/S-13_I.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ee10beca8c8927e7d614aa480314c289594d3ee3 GIT binary patch literal 80686 zcmdSAWmsL?vNnh(ctUU|!F@q+f;+)AXmE#M0Rlloa0wpV-DTnKZowtEJHf5zBH8Ec zeeb#7*WFKdKTq=m=9+6*jkiYCTQw*Oc@Z%N5F-aF5=9m8gNg(qWhS-JH%CR{9+Smpd2J&cRND4GF;^SkIF>=r|1jZ!g0C7CFR5delGP0AmGcq=^GqN@S zCgA{aLcZbSLq#&OHhf$SWZr))>v1_u!Zwc9z?4kVW`_2fq^yu$+N6K)2YL11`T?>4 zGdcVbM$yRL#?cO#7g(y8jkN>h4~UcvG8U5<3n|y{2Ub!LWNUy$F^M`mh$}hhIT!&g z#g#Zne~Tfm#7X*R*-Y|wHU>&Y4w_8B?lLJGIXf^(S^?W9^!tzS?>~}|l>*ygXr?D* zY2#m30WLdyA?g^~HSHYp&VwF9tHd(zjBs}Q%dar^+x`UuS92PP#ZWjj4< z`wtL_3|yFmm6$|~KAIUADT)gLqbuv_+XGF0L-bo}ds61VZxCeQzcxtB%+kTgj!DcC zkWIwMz{b#s>8+8qiGwLAh=mKp3F&6kxj6XlOn7+nc$) z2O?Z#^>Rz<4}_W;qyoWOmTOhzo)ret8Bo11HbFw{1wDM)xA{F426HXuCcU)oGT6N< zhrgB^?mN+kN$!6g)Nl3=d)!~+3=bbR-3(uNG~6zq;m8dS%RQVOmi)XQ)?IAAU#LIi zcXPYAUEW^Zweh$P+dPtM{`BdS`$KyIM=X>3)%to#ipQjO{ZX@{_Iy_T+c^iK>wfO@ zDeH#Yqx;k0`!kc+uoRE;&beWJ*E>3=nc_J&mz$hne&p!-pn8;3BX!}0>W6iU+v~aY zle@6R?e&|xoM`v!v(1#d<>k3x~*4?heq=t(~{O=Byu{`P(}YO+K$YKMSg6*IH1wwmMWeI3DEsS+wg_csn@4R@>E@@2`(l9**`kA1-W&by3lqo%a^n zo3B!u(D?8AZG@BL2&N)R7a69k1l!#4@b5w%RyoSf)P_X0f4bjHlz2$<*DaIVKg?0w z3Z93$qYR%jn0aX-!>sJ`Mp-`bXKtnK!(`B5_5 Ahwo-S+9gM@F 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%0A{bvfZT4clq{jTuh^pq0ZIT>8%k9!DHl5z)@ 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 bE2YeS

Registro Assegnazioni

@can('settings.manage') - +
+ + +
@endcan diff --git a/resources/views/pdf/registro-s13.blade.php b/resources/views/pdf/registro-s13.blade.php new file mode 100644 index 0000000..10a4a60 --- /dev/null +++ b/resources/views/pdf/registro-s13.blade.php @@ -0,0 +1,163 @@ +{{-- + Modulo S-13-I — Registrazione delle assegnazioni del territorio. + + Ricostruzione fedele del modulo ufficiale, la cui copia è in + resources/pdf/S-13_I.pdf e va usata come matrice per qualsiasi modifica + alla griglia. Il modulo originale è un PDF 1.7 con font CID embeddati: + sovrapporvi testo richiederebbe il parser a pagamento di FPDI, mentre + dompdf è già in uso per gli altri export del progetto. + + Struttura per pagina: 21 blocchi-territorio, ognuno su due righe — quella + alta ospita i nomi dei proclamatori, quella bassa le date. Le colonne + "Terr. N." e "Restituito l'ultima volta il" occupano entrambe le righe. + + Il motore CSS di dompdf non è un browser: le larghezze stanno in + (con i soli colspan sarebbero ripartite a caso) e l'interruzione di pagina è + decisa dall'indice del ciclo, perché il supporto a :last-child non è + garantito e un foglio bianco in coda sarebbe visibile. +--}} +@php + /** + * Il nome del proclamatore deve stare su una riga in una cella larga + * ~35mm. DejaVu Sans ha larghezza media ~0.52em per carattere, quindi a + * 8pt entrano circa 23 caratteri: sotto quella soglia si scala il corpo + * invece di mandare a capo, che sfonderebbe l'altezza fissa della riga. + */ + $nomeFontSize = static function (string $nome): string { + $len = mb_strlen($nome); + + return match (true) { + $len <= 23 => '8pt', + $len <= 27 => '7pt', + $len <= 32 => '6.2pt', + default => '5.5pt', + }; + }; + + $ultimaPagina = $pagine->count() - 1; +@endphp + + + + + S-13 — Registrazione delle assegnazioni del territorio + + + +@foreach($pagine as $indice => $righe) +
+

REGISTRAZIONE DELLE ASSEGNAZIONI DEL TERRITORIO

+ +
Anno di servizio: {{ $annoLabel }}
+ + + + + + @for($c = 0; $c < 8; $c++) + + @endfor + + + + + + @for($g = 0; $g < 4; $g++) + + @endfor + + + @for($g = 0; $g < 4; $g++) + + + @endfor + + + + @foreach($righe as $riga) + + + + @foreach($riga['assegnazioni'] as $a) + + @endforeach + + + @foreach($riga['assegnazioni'] as $a) + + + @endforeach + + @endforeach + +
Terr.
N.
Restituito
l’ultima volta il*
Assegnato a
Assegnato ilRestituito il
{{ $riga['numero'] }}{{ $riga['rientro_precedente'] }}{{ $a['nome'] }}
{{ $a['assegnato_il'] }}{{ $a['restituito_il'] }}
+ +
*Quando si inizia un nuovo foglio, registrare in questa colonna l’ultima data in cui è stato restituito ogni territorio.
+
S-13-I  1/22
+
+@endforeach + +